MediaCenter again!

Hello everybody!
It’s been a loooong long time since my last post, i’m really sorry about it but university takes away so much time :/

But aaaanyway let’s talk about my GSoC.

Finally we have a working mediacenter, yayy!! =)

Let’s see the most important things i’ve implemented so far:

  • MediaCenter API: the API makes it possible  to have applets communicating each other. This way the player can inform the playback control applet about the current seek time, while the playlist updates the player’s queue. The API can of course be used to write new applets in the future 🙂
  • Bypassing Phonon: due to the purposes of the MediaCenter, Phonon could not be used to handle the whole playing queue. The mediacenter, actually, is designed to be able to handle mixed queues containing different kind of media sources like audio files, optical discs, videos and pictures. Since Phonon only handles audio and video stuff i had to completely bypass the Phonon queue and create my own internally in the mediaplayer applet. I still have to think about moving this queue handling out of the specific mediaplayer applet moving it at the API level.
  • The playlist communicates with the player and keeps the queue up to date. Even though the playlist applet supports multiple playlist handling, i focused on the single playlist mode, so i still don’t know whether it’s already all-working-fine when switching through playlists :p. Anyway the multiple playlists behavior is disabled by default :p. The playlist applet supports cover fetching and manages all the supported media types: Audio, Video, Picture, Optical Discs.
  • The mediabrowser applet supports now folder navigation. We now have a browsing widget that allows actions like “go back”, “go next”, “go up”. The mediabrowser will soon support pluggable models. The first model i’ll work on as soon as possible will be a youtube-navigation model that will allow the user navigate through videos via the browser. The mediabrowser will show a list of available models at startup allowing the user choosing between local browsing and youtube browsing for example. The youtube dataengine is there already! 🙂
  • The mediaplayer applet currently correctly switches between audio/video playing and picture showing. I still need to verify whether my code is enough light while showing pictures. The Xine backend of Phonon is still broken for the VideoWidget and this is disappointing :/. In addition to this i don’t like how the videos are rendered in the VideoWidget while it is hosted by a QGraphicsProxyWidget. The fullscreen mode of the mediaplayer applet is working but has no utility at the moment since we don’t have a dashboard that can go over it and show playback controls and stuff. By the way this issue has been currently “workarounded” with a specific shell i wrote for the mediacenter 🙂
  • The Plasmediacenter Shell: this is a stand-alone application that can be freely used instead of putting the containment and the applets on your screen :). The Plasmediacenter can be set fullscreen so that also the playback controls still remain over the mediaplayer applet. Have a look at  it 🙂

Let’s have a look at some screenshot of the Plasmediacenter:




And that’s all folks! Stay tuned for the next updates!! 🙂

P.S.; An icon is needed for the shell (/me stares at nuno ;).

17 Responses to “MediaCenter again!”

  1. 1 Oli August 8, 2009 at 6:55 pm

    The first link should be:

  2. 2 Alessandro Diaferia August 8, 2009 at 6:59 pm

    @Oli: thank you =)

  3. 3 tada August 8, 2009 at 7:07 pm

    No way you have been studying lately. You may get away with a little lie with your parents or teacher, but you are not fooling me. This looks like the fruit of full time labor.

  4. 4 Alessandro Diaferia August 8, 2009 at 7:12 pm

    @tada: lol, i swear i studied also!! xD But, anyway, i’ll take that as a compliment :p

  5. 5 Christian August 8, 2009 at 7:27 pm


    Great work, but I have a question. (I’m not a programmer so bear with me)

    I often read, here and there, that Phonon can’t do this and “but I found my own way of doing it, so now it works…”

    Why don’t all of you who need some function Phonon does not provide, team up and make Phonon provide it?

    Just a thought, I have absolutely no idea how Phonon’ developmentmodel is…

    Sorry if you feel offended by this.

  6. 6 TheBlackCat August 8, 2009 at 7:32 pm

    Great work!

    Can the API be used by other applications as well or only by plasma widgets? I think it would be great if there was a shared media system used by a variety of apps such as plasma, dragon, juk, and amarok, so they could all communicate and tap into the same store of information. Check out this brainstorm idea:

    Shared media playlist backend (kio, akonadi?)

    I don’t know how feasible this would be, though.

  7. 7 Alessandro Diaferia August 8, 2009 at 7:35 pm

    @Christian: no offense, it’s just my fault here, i’ve just been told that Phonon can handle images, i just didn’t know about it. I’ve to investigate and see whether my approach is more convenient for me or not 🙂

  8. 8 Alessandro Diaferia August 8, 2009 at 7:39 pm

    @TheBlackCat: I haven’t still read the brainstorm idea but the api can be accessible from wherever. Currently the playlist uses a Playlist DataEngine that could be used as a central point of playlists storage. But will take a look asap anyway 🙂 Thanks for the suggestion.

  9. 9 extrakings September 14, 2009 at 4:32 am

    do you know if raptor menu will be released for KDE 4.4?

  10. 10 Jos Poortvliet December 27, 2009 at 4:57 pm


    I was wondering what the progress was on this for 4.4. Could you please send me an email (first name last name on server)?

    I want to explain what this means to our users for the KDE SC 4.4 feature guide!

    (your friendly promo dude)

  11. 12 the pilatesbiz February 9, 2012 at 2:19 am

    They could charge a 1000 people during a routine marathon race. Folks jump out to go in the bushes routinely.

  12. 13 farengayts March 3, 2012 at 1:28 pm

    В который раз заказываю у, ниразу небыло инцендентов, всегда всё вовремя, в лучшем виде! Спасибо!

  13. 14 Aracely July 10, 2014 at 9:02 pm

    It’s really very complicated in this active life to listen news on TV, thus
    I only use web for that purpose, and obtain the hottest information.

  1. 1 Links 10/08/2009: Linux Gains Tux3, KDE 4.3 and Pardus Get Great Reviews, Arch Linux 2009.02 Released | Boycott Novell Trackback on August 10, 2009 at 9:47 pm
  2. 2 Plasma Media Center or “How to get into coding again” « binarylooks Trackback on March 22, 2010 at 11:01 am
  3. 3 Plasma Media Center Status report and introduction Trackback on May 3, 2010 at 2:57 pm

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s


%d bloggers like this: