Posts Tagged 'kde'

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 ;).


Still alive!

Heyo people, it’s been a while since my last post. I’ve been really busy with my exams and unfortunately i’m still a little :/. Anyway i’m back to my GSoC and currently i’m playing with the API. Don’t remember whether i already mentioned about but i’m writing a simple API to allow writing new media applets in the future =). Today i’ll show you what i achieved so far with containment and handlers in supporting 2 new media applets I’ve just integrated:

As you might have noticed we now have the browser from the left (still), a playback control from the top and the playlist from the right. Still no playing stuff though :/. That’s because i have to finish the api even if i already have some basic one which allows the applets to communicate each other without DBus, at least in this particular containment. I’m looking forward to seeing spectrum analysis in Phonon so that maybe i’ll be able to integrate some nice effect and/or share it with amarok. Today probably i’ll start playing with the mediaplayer applet, i also have to make some performance test since i plan to have a fullscreen video widget.

We’ll see, stay tuned =)


The GSoC official period started and i’m back again to the Media Center. Today i’ll show you a one-night-coded engine πŸ˜› After notmart’s suggestion (great mentor, great) i got a pretty nice working version of a YouTubeEngine!! πŸ™‚ You can easily use it to query YouTube for videos. Try the following queries for example πŸ˜› (and thank sebas for the query suggestions!)

asian backstreet boys

asian backstreet boys

numa numa guy

numa numa guy

Remember to prepend “query/” to your queries as from the screenshots. Each source will have a key for each video id found. And with each id you’ll be able to retrieve a Plasma::DataEngine::Data containing video informations accessible through the keys specified in the docs (title, comment, keywords). I’ll add new keys asap but it’s already pretty nice and working. I need to do more checking stuff on the queries though.

Aaanyway, enjoy!


Let’s “raptorize”!

Hello my dear hackers.

Today I won’t bother you with previewer, happy no? =)

I started my contribution to Raptor writing some lines for the main items view and now together with Riccardo (ruphy), Dario (drf__) and Lukas (boom1992) we just made up a nice and pretty functional interface. πŸ™‚

Riccardo and Dario implemented fixed and polished the search features for Raptor so that we have a krunner-like application search. πŸ™‚

Lukas helped with some graphical improvements (navigation arrow) and started the implementation of the breadcrumb. For those who cannot figure out what the breadcrumb is here comes a screenshot:

You can see a pair of icons on the top left corner. The most right one indicates the subsection we are in, in this case we are in “Graphics”. The left one allows you to get back to the main view. Of course, navigating under many subsections will put an icon for each subsection in the breadcrumb so that the user can get back step by step.

Unfortunately we had some visual issues with the breadcrumb but the almighty Dario solved them today. πŸ™‚

Riccardo did a great job polishing even more the painting, giving clearness to the entire view and making the item selection even nicer.

I know you are hungry of screenshots so here they come:

This is ( Dario + Riccardo)’s search in action :). Of course typing “Document” or “Viewer” is also fine to find Okular =).

And this is raptor at first start. πŸ™‚

As agreed with Dario, today my aim was to give a basical implementation of a nice feature of Raptor: the Description Mode. This mode will show each element with a precise description of what the application does. Unfortunately current standards don’t take care of an enough precise description of an application. Btw I had success in implementing this kind of feature for when it will be available.. see below:

Something is still missing (last used time for example) but it gives the idea of what we want for raptor. I followed nuno’s mockup to get this and i’m almost there =). Of course that string is hardcoded but it would be nice to start thinking about so-long-description-fields.

And now some notes:

Even if Raptor is taking a nice graphical shape it is highly WIP and its core is still full of nasty bugs that we are trying to fix as soon as possible. Of course you can try it cloning from ruphy’s git repo hgit:// but keep in mind what i just said :). Btw it can launch apps πŸ˜›

Cheers my friends and stay tuned πŸ™‚