You are not logged in.
Hi all,
I wrote this little app to watch videos with. It doesn't try to be swiss knife app or even a true media player. It plays videos from a playlist and has the basic functions (play/pause/stop, next/previous, volume...) . No video manipulations, no CD/DVD, no streaming, not much speciality. It's written in Qt (Gtk is more of pain in the rear) and depends on gstreamer for codecs .
https://github.com/yungtrizzle/Cleps-Video-Player
https://aur.archlinux.org/packages/cleps-video-player/
I'll try to work on exposing a config and supporting subtitles. So far not too slow or weird on my station but who knows. Let me know what you find.
Last edited by yungtrizzle (2014-02-01 14:36:15)
Offline
A couple of questions if I may:
1) I'm not familiar with the greaterThan directive in your .pro file. Is your program for QT4 or both QT4 and QT5?
2) Is the gstreamer version you are relying on the 0.10 series? I think maybe it is as I see you are including the QT multimedia stuff and last I checked that used gstreamer 0.10.
Depending on the answers I may be interested in trying this out.
Offline
2) Is the gstreamer version you are relying on the 0.10 series? I think maybe it is as I see you are including the QT multimedia stuff and last I checked that used gstreamer 0.10.
It is 0.10
$ expac -S "%D" qt5-multimedia
qt5-declarative libpulse gstreamer0.10-base openal
| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |
Offline
A couple of questions if I may:
1) I'm not familiar with the greaterThan directive in your .pro file. Is your program for QT4 or both QT4 and QT5?
I have both Qt4 and Qt5 installed on my computer. As far as I understand it, it allows for compilation under the last branch of Qt4 an d also Qt5. Apart avoiding a couple newly deprecated methods, the code is pretty much the same as Qt4.
2) Is the gstreamer version you are relying on the 0.10 series? I think maybe it is as I see you are including the QT multimedia stuff and last I checked that used gstreamer 0.10.
Depending on the answers I may be interested in trying this out.
Yeah, Qt multimedia hard depends on gstreamer 0.10-x on *nix so no choice. I'm considering moving it over to ffmpeg but I haven't been through the docs yet.
Hope this is helpful to you.
Offline
Thank you both for the replys.
I recently upgraded a bunch of my own programs from QT4 to QT5 and it was tedious but not hard. I downloaded your player sources and built with QT5 and was pleasantly surprised to discover that nothing needs to be changed in your code for QT5.
Gstreamer on the other hand is a different matter. I have gstreamer0.10-base installed as a dependency of another package, but that by itself is not sufficient to play anything. Items show up in the playlist but won't play. No error message I can see anywhere when I try to play a video, but I really suspect that is the problem. Assuming I'm right you may want to display a messagebox for the user telling them to install the gstreamer0.10 plugin packages. I'm a little busy for the next couple of days but I'll try to download the 0.10 gstreamer and do a full test. I'm trying to use 1.0 for everything on my machines and it bugs me to need both versions. That is my psychological problem, not like I'm really tight on drive space, but still it bugs me and I don't like to do it.
Incindentally I'm not getting your settings dialog to be able to close after I hit the "Apply" button on the Behavior page, nor from the "Reset" button on the Shortcuts page. Selecting the "ChangeShortCut" button on that page without an item selected causes a segfault.
This is almost exactly like something I was thinking of working on this winter. I believe the QT guys are slowly working to convert the media stuff to gstreamer1.0. This is really close to what I was planning to do so I'll probably keep it around to hack on it.
Offline
I don't think the gstreamer0.10-base provides any actual codecs, you might need to install the plugins packages. The apply and reset buttons are page dependent, so far I've simply closed from the title bar, good suggestion. You caught me sleeping with the changeShortcut button, I didn't check its initialization. I'll get to working on that now.
Offline
I don't think the gstreamer0.10-base provides any actual codecs, you might need to install the plugins packages. The apply and reset buttons are page dependent, so far I've simply closed from the title bar, good suggestion. You caught me sleeping with the changeShortcut button, I didn't check its initialization. I'll get to working on that now.
You might want to add the plugin packages as optdepends. Example from the firefox package:
Optional Deps : networkmanager: Location detection via available WiFi
networks
gstreamer0.10-base-plugins: vorbis decoding, ogg demuxing
gstreamer0.10-good-plugins: webm and mp4 demuxing
gstreamer0.10-bad-plugins: aac, vp8 and opus decoding
gstreamer0.10-ugly-plugins: h.264 and mp3 decoding
gstreamer0.10-ffmpeg: more decoders
libpulse: PulseAudio audio driver
At least do something like this:
optdepends=("gstreamer0.10-plugins: plugins to play different video formats")
Last edited by progandy (2014-02-01 07:35:04)
| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |
Offline
I haven't written the PKGBUILD as yet, will remember to include this.
Offline
Understand on the 0.10 codec packages.
On the window close thing. I'm using a tiling window manager (i3) so there are no minimize|maximize|close buttons in the title bar.
This is just a suggestion, it is your baby and you can code any way you like, but you may want to look at using QT Designer for the UI development. I've done UI's both ways and once you get the hang of QT Designer, which really does not take that long, I'm pretty confident you won't go back to doing it long hand. Things like basic signals and slots or buddies, you just drag a line from one widget to another and you're done and you can move onto the next thing. If you want Tool Tips or Whats This text it is two mouse clicks and you are in an editor where you type in the text you want to display. Also if you plan to support translations Designer will set up all of the widget text for you automatically so you don't have to even think about it. Enough advertising, just my suggestion to maybe make your coding life easier.
Offline
I fixed the window close so that the reset and apply buttons close after operation. Actually I learned Qt because of the Qt Designer but now it feels as if its hiding some details from me. Now I mostly use it as a sort of ui sketchpad. Translations are already supported just that there are none available yet. I really like your suggestions, keep them coming.
Offline
Be careful what you ask for - you might just get it. I installed all of the gstreamer0.10 codecs (it occured to me that if I adopt this player I can remove all of the 1.0 ones as I won't need them anymore). Tried a webm format and an mkv and they both worked very well. Maybe not real surprising as webm is a subset of mkv.
I think I saw in your code that F11 was supposed to go full screen, but I don't see a mention of F11 anywhere in the UI, and I can't go full screen by using F11 so is it actually implemented? I only briefly looked at the code so I'm not sure. Scratch that, my mistake. I can use F11 to get into full screen, but is there a key command to leave full screen?
The dialog close does work now, however same problem from the playlist not being able to close. I can close the playlist from the window manager, but would be nice to have a control on the screen. Speaking of playlist, I can't see a way to edit the playlist. You can add, view and clear, but no way to delete an individual entry or move a single entry up or down.
I meant to mention that I really like your artwork.
edit: F11 paragraph
Last edited by ajbibb (2014-02-02 00:32:48)
Offline
F11 also leaves fullscreen mode. I realize there's no way to delete one entry last night when was watching some videos. The playlist definitely needs an overhaul, that's a priority now.
Offline
I pushed some new changes to Cleps Video Player that need testing. There's new support for srt subtitles and drag n drop. I haven't made a new release yet because some parts of the code are still a bit experimental.
Offline
More new changes pushed and 0.19-331 released with some bugfixes .
Offline