Or maybe a bit more code, Bastien ;)
![]() (click to view fullsize) |
A small video-player I always wanted to write myself… using - to different extends - gstreamer, OpenGL, gtk+ and cairo. The use of gstreamer and OpenGL is obvious, if you look at the screenshot. gtk+ is merely used to provide the typical event-handling and windowing-system glue-code (gtkglext in this case) and cairo is used for the masking out of the edges and getting the rounded corners. It uses multi-texturing and fragment-shading. The remaining things to implement are: using fragment-shaders for the colorspace-conversion too, hooking up some implicit-animation love for switching between different videos. Once that’s in place I would like to see some of this move into totem (if possible) to beautify transitions while switching from one video to another in case you’ve several videos in your playlist.
EDIT: This is running on an i915 on pure FOSS-drivers under metacity. It would even work under compiz using the same system… if the i915-driver would not have the known issues with OpenGL under a composited environment. On a GPU from nvidia - using their proprietary driver - it would work under compiz of course.

May 20th, 2007 at 7:47 am
Hi macslow, it’s a lot of time i don’t read your blog!…
Ooooh!This player looks so wonderful!I wait an unstable version to try this!
Bye!
May 20th, 2007 at 9:04 am
It’s lovely to see someone producing lovely eye candy
- using this as a method of showing a transistion from one video to another is an excellent idea and would make it very clear that it have switched - a visual notification so to speak - but does so in a nice way.
May 20th, 2007 at 9:13 am
Dude, this looks promising! I always wanted to see a "good" video player for Linux. For some time I used mplayer which is great piece of software, but for a video player I think there should be more than a command line tool (I know of gmplayer, but it’s not quite stable, and it doesn’t has a nice GUI). Then, after a while I turned to VLC, which is another great piece of software, it has nice GUI, it has nice configuration options, but somehow it’s not intuitive to use, it often crashes and so on.
All this time I was aware of the existence of Totem, but I didn’t considered a real alternative to the above mentioned players. I was seriously surprised when I gave it a chance recently. The problem was that I used Beryl, and Totem didn’t liked it (it had some problems with the full screen mode), but now it seems to be fixed. So, if the stuff you are talking about would go to Totem, that would be awesome.
My opinion on what should a video player look and work like is:
- it should have full screen controls displayed when moving the mouse (preferably not standard looking GTK widgets, but a HUD like thingy)
- it should have nice GUI (preferably with free-form skinning engine)
- it should be very intuitive to use
Please keep up the work you began, because it’s great! I wish luck to you!
May 20th, 2007 at 11:55 am
Patches more than welcome. I already have plans on some work for the fullscreen UI, so this would slot in perfectly.
May 20th, 2007 at 2:14 pm
Hi
Have you seen this: http://video.google.com/videoplay?docid=-4422887272477313460&hl=en
May 20th, 2007 at 2:57 pm
Sorry if this is totalyl unrelated. What font are you using for you GUI?
May 20th, 2007 at 4:28 pm
Seconding the request for the font name!!
May 20th, 2007 at 5:12 pm
Umm…was clutter not doing this like a year ago?
May 20th, 2007 at 5:26 pm
Denis, going by a previous blog comment and the fact I’ve just checked it looks to be Candara which is part of Vista. The g’s and old-style numbers make it pretty distinctive.
Keeping off topic, anyone know the origin of the background and whether its SVG? I’ve been trying to give more depth to the transparent one I created for Foresight[1] but my Inkscape foo is weak.
[1] http://wiki.foresightlinux.org/confluence/display/art/Remastering+the+background
May 20th, 2007 at 7:18 pm
@italyanker: Hopefully in a few weeks I’ve something worth releasing. Either for stand-alone use or acting as code-heap to salvage for integration into totem.
@Botond: I agree with you bullet-points 1 and 3 there. Regarding the second bullet-point I also would like to see a nice GUI, but it does not have to be fully customizable by all costs. Besides I like most of what totem offers right now.
@Bastien: I’ll see what I can get done.
@anonim: What does a media-center solution have to do with a dedicated video-player application for the desktop?
@Denis, Paul Kishimoto: The font is called Candara.
@bob: Current upstream versions of clutter and pigment cannot do all this, which gl-gst-player currently displays. For example no fragment-shading, no multi-texturing, no drawable compositing. So clutter from last year was certainly not able to do this.
@pscott: The background is called OranSun (https://wiki.ubuntu.com/Artwork/Incoming/OranSun).
May 20th, 2007 at 10:00 pm
@macslow: cool stuff! I didn’t think the intel drivers supported shaders ?!
@bob: right, Clutter has been able to do video playback to a texture with gst for a while (and pigment too) but not with shader nor multitexture support (at least basic drawable compositing though). Clutter development focus so far has been on building a solid base infrastruture and rich easy API with useful functionality outside of GL (Animation etc) rather than pure GL trickery. High end GL support for things like shaders and multitexture will come but we still will well support lower end and embedded graphics chipsets.
(PS, please please fix your captcha on your blog ! at least make it keep copy of the text you just entered when the ID is entered wrong or unreadable
)
May 20th, 2007 at 10:16 pm
@mallum: Well they do
At the moment I’m forced to this "lowest common denominator" that is the i915 in my laptop, since this is the only machine I have access to. But then this enforced restriction is a good opportunity to see how far you can go with very little.
Regarding clutter and pigment… by now I wish I could just spend four full weeks to get into both APIs and at the end do a presentation on both so any doubts and misinformation on these two projects is wiped off the face of the earth for ever
Outside of Opened Hand and Fluendo I don’t assume many people are looking into the two APIs and trying them out to see what you can achieve with them… which is shame really! clutter and pigment are the closest things to the proprietary solutions like WPF, CoreImage/Video/Animation we currently have on the free desktop. BTW, will some of you Opened-Hand folks be around during GUADEC’07?
Hm… sorry for the captcha. But whenever people complain it to be too hard to recognize the distorted string I try it a couple of time myself and never fail once.
June 8th, 2007 at 5:45 pm
What do you think of porting this application to audacious (as an output plugin) once it’s developed?
I think it would be great because you would extend it to be a media player and not just an audio player, and you’d get all the playlist managing done.
They have already an ugly porting of the xmms-mplayer plugin, but it’s buggy and almost unmantained.
June 11th, 2007 at 10:20 pm
Hope this media center works under compiz/beryl. I tried elisa … doesnt work in my beryl
. Any way kudos for your work. keep it up