<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>alediaferia::hackingAround()</title>
	<atom:link href="http://alediaferia.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://alediaferia.wordpress.com</link>
	<description>Just some lines about my contribution as KDE dev =)</description>
	<lastBuildDate>Sat, 08 Aug 2009 16:57:43 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='alediaferia.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/ea28c7a1c73a1dde5ae1a1eb648ca9c0?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>alediaferia::hackingAround()</title>
		<link>http://alediaferia.wordpress.com</link>
	</image>
			<item>
		<title>MediaCenter again!</title>
		<link>http://alediaferia.wordpress.com/2009/08/08/mediacenter-again/</link>
		<comments>http://alediaferia.wordpress.com/2009/08/08/mediacenter-again/#comments</comments>
		<pubDate>Sat, 08 Aug 2009 16:26:21 +0000</pubDate>
		<dc:creator>Alessandro Diaferia</dc:creator>
				<category><![CDATA[MediaCenter]]></category>
		<category><![CDATA[kde]]></category>
		<category><![CDATA[gsoc]]></category>
		<category><![CDATA[Plasma]]></category>

		<guid isPermaLink="false">http://alediaferia.wordpress.com/?p=193</guid>
		<description><![CDATA[Hello everybody!
It&#8217;s been a loooong long time since my last post, i&#8217;m really sorry about it but university takes away so much time :/
But aaaanyway let&#8217;s talk about my GSoC.
Finally we have a working mediacenter, yayy!! =)
Let&#8217;s see the most important things i&#8217;ve implemented so far:

MediaCenter API: the API makes it possible  to have applets [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=193&subd=alediaferia&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Hello everybody!<br />
It&#8217;s been a loooong long time since my last post, i&#8217;m really sorry about it but university takes away so much time :/</p>
<p>But aaaanyway let&#8217;s talk about my GSoC.</p>
<p>Finally we have a working mediacenter, yayy!! =)</p>
<p>Let&#8217;s see the most important things i&#8217;ve implemented so far:</p>
<ul>
<li>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&#8217;s queue. The API can of course be used to write new applets in the future <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
<li>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.</li>
<li>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&#8217;t know whether it&#8217;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.</li>
<li>The mediabrowser applet supports now folder navigation. We now have a browsing widget that allows actions like &#8220;go back&#8221;, &#8220;go next&#8221;, &#8220;go up&#8221;. The mediabrowser will soon support pluggable models. The first model i&#8217;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! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
<li>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&#8217;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&#8217;t have a dashboard that can go over it and show playback controls and stuff. By the way this issue has been currently &#8220;workarounded&#8221; with a specific shell i wrote for the mediacenter <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
<li>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 <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . The Plasmediacenter can be set fullscreen so that also the playback controls still remain over the mediaplayer applet. Have a look at  it <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
</ul>
<p>Let&#8217;s have a look at some screenshot of the Plasmediacenter:</p>
<p style="text-align:center;"><a href="../files/2009/08/plasmediacenter.png"><img class="aligncenter" title="plasmediacenter" src="http://alediaferia.files.wordpress.com/2009/08/plasmediacenter.png?w=500&#038;h=332" alt="plasmediacenter" width="500" height="332" /></a></p>
<p style="text-align:center;">
<p style="text-align:center;"><a href="http://alediaferia.files.wordpress.com/2009/08/plasmediacenter_browser.png"><img class="aligncenter size-full wp-image-198" title="plasmediacenter_browser" src="http://alediaferia.files.wordpress.com/2009/08/plasmediacenter_browser.png?w=500&#038;h=388" alt="plasmediacenter_browser" width="500" height="388" /></a></p>
<p style="text-align:center;"><a href="http://alediaferia.files.wordpress.com/2009/08/plasmediacenter_theme.png"><img class="aligncenter size-full wp-image-199" title="plasmediacenter_theme" src="http://alediaferia.files.wordpress.com/2009/08/plasmediacenter_theme.png?w=500&#038;h=309" alt="plasmediacenter_theme" width="500" height="309" /></a></p>
<p style="text-align:center;">
<p style="text-align:left;">And that&#8217;s all folks! Stay tuned for the next updates!! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style="text-align:left;">
<p style="text-align:left;">P.S.; An icon is needed for the shell (/me stares at nuno <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> .</p>
<p style="text-align:left;">
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alediaferia.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alediaferia.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alediaferia.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alediaferia.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alediaferia.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alediaferia.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alediaferia.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alediaferia.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alediaferia.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alediaferia.wordpress.com/193/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=193&subd=alediaferia&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alediaferia.wordpress.com/2009/08/08/mediacenter-again/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5bc58919dfd1e89d9d5be71a9c68dd9d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">alediaferia</media:title>
		</media:content>

		<media:content url="http://alediaferia.files.wordpress.com/2009/08/plasmediacenter.png" medium="image">
			<media:title type="html">plasmediacenter</media:title>
		</media:content>

		<media:content url="http://alediaferia.files.wordpress.com/2009/08/plasmediacenter_browser.png" medium="image">
			<media:title type="html">plasmediacenter_browser</media:title>
		</media:content>

		<media:content url="http://alediaferia.files.wordpress.com/2009/08/plasmediacenter_theme.png" medium="image">
			<media:title type="html">plasmediacenter_theme</media:title>
		</media:content>
	</item>
		<item>
		<title>Still alive!</title>
		<link>http://alediaferia.wordpress.com/2009/07/11/still-alive/</link>
		<comments>http://alediaferia.wordpress.com/2009/07/11/still-alive/#comments</comments>
		<pubDate>Sat, 11 Jul 2009 14:06:56 +0000</pubDate>
		<dc:creator>Alessandro Diaferia</dc:creator>
				<category><![CDATA[kde]]></category>
		<category><![CDATA[Media Center Components]]></category>
		<category><![CDATA[Plasma]]></category>

		<guid isPermaLink="false">http://alediaferia.wordpress.com/?p=190</guid>
		<description><![CDATA[Heyo people, it&#8217;s been a while since my last post. I&#8217;ve been really busy with my exams and unfortunately i&#8217;m still a little :/. Anyway i&#8217;m back to my GSoC and currently i&#8217;m playing with the API. Don&#8217;t remember whether i already mentioned about but i&#8217;m writing a simple API to allow writing new media [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=190&subd=alediaferia&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Heyo people, it&#8217;s been a while since my last post. I&#8217;ve been really busy with my exams and unfortunately i&#8217;m still a little :/. Anyway i&#8217;m back to my GSoC and currently i&#8217;m playing with the API. Don&#8217;t remember whether i already mentioned about but i&#8217;m writing a simple API to allow writing new media applets in the future =). Today i&#8217;ll show you what i achieved so far with containment and handlers in supporting 2 new media applets I&#8217;ve just integrated:</p>
<p><span style="text-align:center; display: block;"><a href="http://alediaferia.wordpress.com/2009/07/11/still-alive/"><img src="http://img.youtube.com/vi/hhKlEhfS-rQ/2.jpg" alt="" /></a></span></p>
<p>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&#8217;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&#8217;m looking forward to seeing spectrum analysis in Phonon so that maybe i&#8217;ll be able to integrate some nice effect and/or share it with amarok. Today probably i&#8217;ll start playing with the mediaplayer applet, i also have to make some performance test since i plan to have a fullscreen video widget.</p>
<p>We&#8217;ll see, stay tuned =)</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alediaferia.wordpress.com/190/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alediaferia.wordpress.com/190/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alediaferia.wordpress.com/190/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alediaferia.wordpress.com/190/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alediaferia.wordpress.com/190/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alediaferia.wordpress.com/190/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alediaferia.wordpress.com/190/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alediaferia.wordpress.com/190/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alediaferia.wordpress.com/190/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alediaferia.wordpress.com/190/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=190&subd=alediaferia&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alediaferia.wordpress.com/2009/07/11/still-alive/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5bc58919dfd1e89d9d5be71a9c68dd9d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">alediaferia</media:title>
		</media:content>

		<media:content url="http://img.youtube.com/vi/hhKlEhfS-rQ/2.jpg" medium="image" />
	</item>
		<item>
		<title>Media Center quick update</title>
		<link>http://alediaferia.wordpress.com/2009/06/24/media-center-quick-update/</link>
		<comments>http://alediaferia.wordpress.com/2009/06/24/media-center-quick-update/#comments</comments>
		<pubDate>Wed, 24 Jun 2009 21:37:06 +0000</pubDate>
		<dc:creator>Alessandro Diaferia</dc:creator>
				<category><![CDATA[kde]]></category>

		<guid isPermaLink="false">http://alediaferia.wordpress.com/?p=186</guid>
		<description><![CDATA[I&#8217;ve just implemented the very first working version of the handlers i (together with notmart) chose to use for at least the media applets in the media containment. I like the effect and you can have a look at it as follows here. What you see is the leftmost part of the containment as you&#8217;ll [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=186&subd=alediaferia&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I&#8217;ve just implemented the very first working version of the handlers i (together with notmart) chose to use for at least the media applets in the media containment. I like the effect and you can have a look at it as follows here. What you see is the leftmost part of the containment as you&#8217;ll get it on your screen. We chose to put the browser appearing from the left avoiding to clutter the desktop making it appearing only as user requests to show it by moving to the glowing side.</p>
<p>Enjoy <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><span style="text-align:center; display: block;"><a href="http://alediaferia.wordpress.com/2009/06/24/media-center-quick-update/"><img src="http://img.youtube.com/vi/oLcalVOSV3U/2.jpg" alt="" /></a></span></p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alediaferia.wordpress.com/186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alediaferia.wordpress.com/186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alediaferia.wordpress.com/186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alediaferia.wordpress.com/186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alediaferia.wordpress.com/186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alediaferia.wordpress.com/186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alediaferia.wordpress.com/186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alediaferia.wordpress.com/186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alediaferia.wordpress.com/186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alediaferia.wordpress.com/186/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=186&subd=alediaferia&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alediaferia.wordpress.com/2009/06/24/media-center-quick-update/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5bc58919dfd1e89d9d5be71a9c68dd9d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">alediaferia</media:title>
		</media:content>

		<media:content url="http://img.youtube.com/vi/oLcalVOSV3U/2.jpg" medium="image" />
	</item>
		<item>
		<title>Semantically back (from Nepomuk Coding Sprint)</title>
		<link>http://alediaferia.wordpress.com/2009/06/24/semantically-back-from-nepomuk-coding-sprint/</link>
		<comments>http://alediaferia.wordpress.com/2009/06/24/semantically-back-from-nepomuk-coding-sprint/#comments</comments>
		<pubDate>Wed, 24 Jun 2009 08:41:39 +0000</pubDate>
		<dc:creator>Alessandro Diaferia</dc:creator>
				<category><![CDATA[kde]]></category>

		<guid isPermaLink="false">http://alediaferia.wordpress.com/?p=174</guid>
		<description><![CDATA[And i&#8217;m back home here in Italy after a beautiful weekend with beautiful people. The Nepomuk Coding Sprint was a success and i really hope to enjoy it again. I just have to say that the trip was not as good as the stay there. The agency thought it was Fribourg in Switzerland and not [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=174&subd=alediaferia&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>And i&#8217;m back home here in Italy after a beautiful weekend with beautiful people. The Nepomuk Coding Sprint was a success and i really hope to enjoy it again. I just have to say that the trip was not as good as the stay there. The agency thought it was <em>Fribourg in Switzerland</em> and not the good one in Germay which is called <em>Freiburg. </em>The bad thing is, in fact, that in italian they are both called &#8220;Friburgo&#8221; :/. Anyway after re-calculating the trip and spending more times in train than in Germany we, me and Francesco, arrived there a bit late the 19th. Unfortunately, due to the mistake by the agency we had to leave on sunday early in the morning and so we fully enjoyed just 1,5 days instead of 3. But it was the most amazing 1,5 days that i&#8217;ve ever spent <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> . I&#8217;d say thanks to Albert, Daniel, George, Lukas, Marcel, Mathieu, Peter, Sebastian Faubel from Gnome, Tobias, Tom and, last, but not least, to the friendly host Sebastian Trueg which took care of all of us both in staying there and programming xD.</p>
<p>I learned much about Nepomuk, it&#8217;s really a great technology and people should be aware of its possibilities. I had the chance to work on Raptor together with Lukas and Francesco staying near each other (even on the same laptop <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> ) and we implemented some basic stuff for the real purposes Raptor was designed for. But i won&#8217;t talk about the details in this post.</p>
<p>I just want to share with you some photos i took there <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<div id="attachment_176" class="wp-caption alignleft" style="width: 510px"><a href="http://alediaferia.files.wordpress.com/2009/06/snc00050.jpg"><img class="size-full wp-image-176" title="SNC00050" src="http://alediaferia.files.wordpress.com/2009/06/snc00050.jpg?w=500&#038;h=375" alt="Raptor" width="500" height="375" /></a><p class="wp-caption-text">Raptor</p></div>
<p>Some raptor tests with nepomuk <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div id="attachment_178" class="wp-caption alignleft" style="width: 510px"><a href="http://alediaferia.files.wordpress.com/2009/06/snc00058.jpg"><img class="size-full wp-image-178" title="SNC00058" src="http://alediaferia.files.wordpress.com/2009/06/snc00058.jpg?w=500&#038;h=375" alt="Albert, Lukas, Me" width="500" height="375" /></a><p class="wp-caption-text">Albert, Lukas, Me</p></div>
<p>Saturday night in a pub: from the left Albert, Lukas and me.</p>
<div id="attachment_177" class="wp-caption alignleft" style="width: 510px"><a href="http://alediaferia.files.wordpress.com/2009/06/snc00056.jpg"><img class="size-full wp-image-177" title="SNC00056" src="http://alediaferia.files.wordpress.com/2009/06/snc00056.jpg?w=500&#038;h=375" alt="Francesco is hungry" width="500" height="375" /></a><p class="wp-caption-text">Francesco is hungry</p></div>
<p>At some point we got so hungry that we started drawing food on our own xD</p>
<div id="attachment_175" class="wp-caption alignleft" style="width: 510px"><a href="http://alediaferia.files.wordpress.com/2009/06/snc00040.jpg"><img class="size-full wp-image-175" title="SNC00040" src="http://alediaferia.files.wordpress.com/2009/06/snc00040.jpg?w=500&#038;h=375" alt="Some of us programming" width="500" height="375" /></a><p class="wp-caption-text">Some of us programming</p></div>
<p>That&#8217;s it guys, Sebastian is a great host, and i hope to see you again soon. Unfortunately i won&#8217;t go to Akademy due to university <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> .</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alediaferia.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alediaferia.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alediaferia.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alediaferia.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alediaferia.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alediaferia.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alediaferia.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alediaferia.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alediaferia.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alediaferia.wordpress.com/174/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=174&subd=alediaferia&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alediaferia.wordpress.com/2009/06/24/semantically-back-from-nepomuk-coding-sprint/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5bc58919dfd1e89d9d5be71a9c68dd9d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">alediaferia</media:title>
		</media:content>

		<media:content url="http://alediaferia.files.wordpress.com/2009/06/snc00050.jpg" medium="image">
			<media:title type="html">SNC00050</media:title>
		</media:content>

		<media:content url="http://alediaferia.files.wordpress.com/2009/06/snc00058.jpg" medium="image">
			<media:title type="html">SNC00058</media:title>
		</media:content>

		<media:content url="http://alediaferia.files.wordpress.com/2009/06/snc00056.jpg" medium="image">
			<media:title type="html">SNC00056</media:title>
		</media:content>

		<media:content url="http://alediaferia.files.wordpress.com/2009/06/snc00040.jpg" medium="image">
			<media:title type="html">SNC00040</media:title>
		</media:content>
	</item>
		<item>
		<title>Rating your medias</title>
		<link>http://alediaferia.wordpress.com/2009/06/17/rating-your-medias/</link>
		<comments>http://alediaferia.wordpress.com/2009/06/17/rating-your-medias/#comments</comments>
		<pubDate>Wed, 17 Jun 2009 10:23:45 +0000</pubDate>
		<dc:creator>Alessandro Diaferia</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://alediaferia.wordpress.com/?p=169</guid>
		<description><![CDATA[Heyo everybody!  
Just 2 days before attending the Nepomuk sprint i found some time to play with the amazing features it offers. Just few lines of code and the rating stuff is now available for my MediaBrowser. When using Nepomuk::Resource in your app remember to do Nepomuk::ResourceManager::instance()-&#62;init()  otherwirse your Nepomuk::Resource might make your app [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=169&subd=alediaferia&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Heyo everybody! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Just 2 days before attending the Nepomuk sprint i found some time to play with the amazing features it offers. Just few lines of code and the rating stuff is now available for my MediaBrowser. When using Nepomuk::Resource in your app remember to do Nepomuk::ResourceManager::instance()-&gt;init()  otherwirse your Nepomuk::Resource might make your app crashing <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  (thanks Lukas for the hint).</p>
<p style="text-indent:0;margin:0;">The implementation is still young but i really plan to add a model to the MediaBrowser in order to only browse among rated medias so that statistics will be easy to do and stuff like &#8220;Most Rated Videos&#8221; will be available also for your local collection.</p>
<p style="text-indent:0;margin:0;">
<p style="text-indent:0;margin:0;">But now enjoy the vid. Still sorry for the low quality but youtube is not wide-videos-friendly <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p style="text-indent:0;margin:0;"><span style="text-align:center; display: block;"><a href="http://alediaferia.wordpress.com/2009/06/17/rating-your-medias/"><img src="http://img.youtube.com/vi/iKbVnolSJ4Q/2.jpg" alt="" /></a></span></p>
<p style="text-indent:0;margin:0;">
<p style="text-indent:0;margin:0;">As you may have noticed the Grid mode needs lots of polishing and i have to find a nice way in order to not overcrowd the view. In addition to this i should start better following nuno&#8217;s mockups <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style="text-indent:0;margin:0;">
<p style="text-indent:0;margin:0;">And now cheers and looking forward to meeting all of you joining the Nepomuk sprint!</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alediaferia.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alediaferia.wordpress.com/169/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alediaferia.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alediaferia.wordpress.com/169/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alediaferia.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alediaferia.wordpress.com/169/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alediaferia.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alediaferia.wordpress.com/169/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alediaferia.wordpress.com/169/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alediaferia.wordpress.com/169/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=169&subd=alediaferia&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alediaferia.wordpress.com/2009/06/17/rating-your-medias/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5bc58919dfd1e89d9d5be71a9c68dd9d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">alediaferia</media:title>
		</media:content>

		<media:content url="http://img.youtube.com/vi/iKbVnolSJ4Q/2.jpg" medium="image" />
	</item>
		<item>
		<title>Browsing your medias</title>
		<link>http://alediaferia.wordpress.com/2009/06/11/browsing-your-medias/</link>
		<comments>http://alediaferia.wordpress.com/2009/06/11/browsing-your-medias/#comments</comments>
		<pubDate>Thu, 11 Jun 2009 16:05:05 +0000</pubDate>
		<dc:creator>Alessandro Diaferia</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://alediaferia.wordpress.com/?p=162</guid>
		<description><![CDATA[And finally i&#8217;m back blogging again. It has been a busy period the last two weeks. University elections and exams (the latter didn&#8217;t go so well :/) took away my time. Fortunately the great guidance by notmart and aseigo helped me defining my work in the incoming days. Currently i&#8217;m focusing on something i just [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=162&subd=alediaferia&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>And finally i&#8217;m back blogging again. It has been a busy period the last two weeks. University elections and exams (the latter didn&#8217;t go so well :/) took away my time. Fortunately the great guidance by notmart and aseigo helped me defining my work in the incoming days. Currently i&#8217;m focusing on something i just talked about in the past but never showed you something. Today you have the chance to see the high work in progress status of something i&#8217;m getting excited about: the mediabrowser applet! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>You&#8217;ll find lots of similarities with your beloved folderview but this applet has the aim to help you browsing only media contents and interact together with other media applets such as the mediaplayer, the playlist, the playback controls and so on. I&#8217;ve had an interesting meeting with notmart and aseigo and we defined some guidelines to follow while developing this kind of applets (media applets). I&#8217;ll soon start the development of the MediaContainment which will handle your media applets in order to give you a great experience while listening to your favourite music or watching your favourite action movie <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>But now just have a look!</p>
<p><span style="text-align:center; display: block;"><a href="http://alediaferia.wordpress.com/2009/06/11/browsing-your-medias/"><img src="http://img.youtube.com/vi/-cAhDXdJH5k/2.jpg" alt="" /></a></span></p>
<p>Sorry for the low video quality <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Things to do are still a lot but stuff is taking into shape. The browser already supports both grid and list view and i like the hover effect which makes use of an animated item. Differently from folderview we decided to use a QGW for each item. I know you could say this is too heavy but it&#8217;s still fast enough. Anyway i&#8217;ll try to optimize it trying to just allocate the visible items (which is hard enough especially with the grid view). Everything you see is available under playground/base/plasma/MediaCenterComponents so you can already give it a try.</p>
<p>The local file browsing is only one of the possible browsing mode that the browser will allow  (currently it only allows local browsing though). As some of you may already have noticed i wrote a quick dataengine capable of looking for videos from YouTube. The mediabrowser will make use of dataengines in order to allow the so called &#8220;Remote Browsing&#8221; (better names suggestions are welcome <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  . Using Remote Browsing you&#8217;ll be able to look for your favourite Youtube videos just browsing through them in the same way you do for your local medias. Mediabrowser will let you choose the browsing mode you want and then will change his contents to fit your needs. The Remote Browsing, for example, will show you a line edit for searches, an engine chooser (not only YouTube is in my mind) and then the results will be shown like your local files: a nice thumbnail together with video information (length, title, author&#8230;).</p>
<p>Ok that&#8217;s it for today, i just need to study also :/</p>
<p>Hope you&#8217;ll like my work <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Cu and cheers!</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alediaferia.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alediaferia.wordpress.com/162/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alediaferia.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alediaferia.wordpress.com/162/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alediaferia.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alediaferia.wordpress.com/162/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alediaferia.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alediaferia.wordpress.com/162/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alediaferia.wordpress.com/162/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alediaferia.wordpress.com/162/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=162&subd=alediaferia&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alediaferia.wordpress.com/2009/06/11/browsing-your-medias/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5bc58919dfd1e89d9d5be71a9c68dd9d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">alediaferia</media:title>
		</media:content>

		<media:content url="http://img.youtube.com/vi/-cAhDXdJH5k/2.jpg" medium="image" />
	</item>
		<item>
		<title>PlasmaTube</title>
		<link>http://alediaferia.wordpress.com/2009/05/27/plasmatube/</link>
		<comments>http://alediaferia.wordpress.com/2009/05/27/plasmatube/#comments</comments>
		<pubDate>Wed, 27 May 2009 08:24:55 +0000</pubDate>
		<dc:creator>Alessandro Diaferia</dc:creator>
				<category><![CDATA[kde]]></category>
		<category><![CDATA[asian backstreet boys]]></category>
		<category><![CDATA[DataEngine]]></category>
		<category><![CDATA[Media Center Components]]></category>
		<category><![CDATA[numa numa guy]]></category>
		<category><![CDATA[Plasma]]></category>
		<category><![CDATA[youtube]]></category>

		<guid isPermaLink="false">http://alediaferia.wordpress.com/?p=153</guid>
		<description><![CDATA[The GSoC official period started and i&#8217;m back again to the Media Center. Today i&#8217;ll show you a one-night-coded engine   After notmart&#8217;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 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=153&subd=alediaferia&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>The GSoC official period started and i&#8217;m back again to the Media Center. Today i&#8217;ll show you a one-night-coded engine <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  After notmart&#8217;s suggestion (great mentor, great) i got a pretty nice working version of a YouTubeEngine!! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  You can easily use it to query YouTube for videos. Try the following queries for example <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  (and thank sebas for the query suggestions!)</p>
<div id="attachment_154" class="wp-caption aligncenter" style="width: 510px"><a href="http://alediaferia.files.wordpress.com/2009/05/ytengine1.png"><img class="size-full wp-image-154" title="ytengine1" src="http://alediaferia.files.wordpress.com/2009/05/ytengine1.png?w=500&#038;h=377" alt="asian backstreet boys" width="500" height="377" /></a><p class="wp-caption-text">asian backstreet boys</p></div>
<div id="attachment_155" class="wp-caption aligncenter" style="width: 510px"><a href="http://alediaferia.files.wordpress.com/2009/05/ytengine2.png"><img class="size-full wp-image-155" title="ytengine2" src="http://alediaferia.files.wordpress.com/2009/05/ytengine2.png?w=500&#038;h=385" alt="numa numa guy" width="500" height="385" /></a><p class="wp-caption-text">numa numa guy</p></div>
<p>Remember to prepend &#8220;query/&#8221; to your queries as from the screenshots. Each source will have a key for each video id found. And with each id you&#8217;ll be able to retrieve a Plasma::DataEngine::Data containing video informations accessible through the keys specified in the docs (title, comment, keywords). I&#8217;ll add new keys asap but it&#8217;s already pretty nice and working. I need to do more checking stuff on the queries though.</p>
<p>Aaanyway, enjoy!</p>
<p>Cheers</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alediaferia.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alediaferia.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alediaferia.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alediaferia.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alediaferia.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alediaferia.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alediaferia.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alediaferia.wordpress.com/153/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alediaferia.wordpress.com/153/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alediaferia.wordpress.com/153/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=153&subd=alediaferia&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alediaferia.wordpress.com/2009/05/27/plasmatube/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5bc58919dfd1e89d9d5be71a9c68dd9d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">alediaferia</media:title>
		</media:content>

		<media:content url="http://alediaferia.files.wordpress.com/2009/05/ytengine1.png" medium="image">
			<media:title type="html">ytengine1</media:title>
		</media:content>

		<media:content url="http://alediaferia.files.wordpress.com/2009/05/ytengine2.png" medium="image">
			<media:title type="html">ytengine2</media:title>
		</media:content>
	</item>
		<item>
		<title>Get your cover!</title>
		<link>http://alediaferia.wordpress.com/2009/04/28/get-your-cover/</link>
		<comments>http://alediaferia.wordpress.com/2009/04/28/get-your-cover/#comments</comments>
		<pubDate>Tue, 28 Apr 2009 21:11:52 +0000</pubDate>
		<dc:creator>Alessandro Diaferia</dc:creator>
				<category><![CDATA[kde]]></category>

		<guid isPermaLink="false">http://alediaferia.wordpress.com/?p=148</guid>
		<description><![CDATA[Just a quicknote about the last feature i&#8217;ve worked on today: a CoverFetcher DataEngine  
Simply query your cover doing coverFetcherEngine-&#62;query(&#8220;ArtistName&#124;AlbumName&#8221;); and a source will be added to represent the cover. Each cover will be represented by a source of the dataengine. Additionally, for each source, you can find more than one cover categorized with [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=148&subd=alediaferia&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Just a quicknote about the last feature i&#8217;ve worked on today: a CoverFetcher DataEngine <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Simply query your cover doing coverFetcherEngine-&gt;query(&#8220;ArtistName|AlbumName&#8221;); and a source will be added to represent the cover. Each cover will be represented by a source of the dataengine. Additionally, for each source, you can find more than one cover categorized with the keys: &#8220;small&#8221;, &#8220;medium&#8221;, &#8220;large&#8221;, &#8220;extralarge&#8221; according to the different cover size fetched.</p>
<p>The playlist applet already takes advantage of this.. get your cover!</p>
<p><img class="aligncenter size-full wp-image-147" title="playlistappletcovers" src="http://alediaferia.files.wordpress.com/2009/04/playlistappletcovers.png?w=246&#038;h=306" alt="playlistappletcovers" width="246" height="306" /></p>
<p>P.S.: the magic behind the engine is the last.fm api. I hope  to be respecting their license.. I&#8217;ll add a Credit file mentioning them as soon as possible to the repository.</p>
<p>2nd P.S.: thanks to lfranchi for pointing me to last.fm</p>
<p>3rd P.S.: thanks to notmart and pinotree for the hints about the xml parsing</p>
<p>Cheers devs! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alediaferia.wordpress.com/148/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alediaferia.wordpress.com/148/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alediaferia.wordpress.com/148/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alediaferia.wordpress.com/148/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alediaferia.wordpress.com/148/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alediaferia.wordpress.com/148/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alediaferia.wordpress.com/148/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alediaferia.wordpress.com/148/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alediaferia.wordpress.com/148/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alediaferia.wordpress.com/148/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=148&subd=alediaferia&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alediaferia.wordpress.com/2009/04/28/get-your-cover/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5bc58919dfd1e89d9d5be71a9c68dd9d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">alediaferia</media:title>
		</media:content>

		<media:content url="http://alediaferia.files.wordpress.com/2009/04/playlistappletcovers.png" medium="image">
			<media:title type="html">playlistappletcovers</media:title>
		</media:content>
	</item>
		<item>
		<title>Adventures in MediaCenter land</title>
		<link>http://alediaferia.wordpress.com/2009/04/28/adventures-in-mediacenter-land/</link>
		<comments>http://alediaferia.wordpress.com/2009/04/28/adventures-in-mediacenter-land/#comments</comments>
		<pubDate>Tue, 28 Apr 2009 08:25:04 +0000</pubDate>
		<dc:creator>Alessandro Diaferia</dc:creator>
				<category><![CDATA[kde]]></category>

		<guid isPermaLink="false">http://alediaferia.wordpress.com/?p=141</guid>
		<description><![CDATA[Heyo people!
Things are taking shape just nicely here in MediaCenter land =)
First of all: things have moved™: this means that if you have checked out playground before 26th of April you should `make uninstall` and checkout it back from the MediaCenterComponents folder i&#8217;ve created under playground/base/plasma. This is just because the MediaCenterComponents won&#8217;t be a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=141&subd=alediaferia&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Heyo people!</p>
<p>Things are taking shape just nicely here in MediaCenter land =)</p>
<p>First of all: <strong>things have moved</strong>™: this means that if you have checked out playground before 26th of April you should `make uninstall` and checkout it back from the MediaCenterComponents folder i&#8217;ve created under playground/base/plasma. This is just because the MediaCenterComponents won&#8217;t be a single application but a mix of all our powerful Plasma capabilities: engines, applets, new dashboard and so on.. in addition to a complete DBus interface.</p>
<p><strong>DBus stuff:</strong></p>
<p>As mentioned in my previous post MediaCenterComponents is intended to have a full featured DBus interface in order to allow intercommunication among media applications. That&#8217;s why i focused on extending the PlaylistEngine interface with more methods than the last time i talked about it. Now we have methods like:</p>
<ul>
<li>void addToPlaylist(const QString &amp;playlistName, QStringList files);</li>
<li>void addToPlaylist(const QString &amp;playlistName, const QString &amp;file);</li>
<li>QStringList availablePlaylists();</li>
<li>QStringList filesInPlaylist(const QString &amp;playlistName);</li>
<li>void removeFromPlaylist(const QString &amp;playlistName, QStringList files);</li>
<li>void removeFromPlaylist(const QString &amp;playlistName, const QString &amp;file);</li>
<li>void removePlaylist(const QString &amp;playlistName);</li>
<li>void setCurrentPlaylist(const QString &amp;playlistName);</li>
</ul>
<p>While most of them do simply what their name says, some need a more deep explanation. The method availablePlaylists() simply does what Plasma::DataEngine::sources() do (remember that each playlist is a source) but skips the <em>currentPlaylist</em> source. That&#8217;s because <em>currentPlaylist</em> is just an helper but i&#8217;ll talk about this some lines next. The method removePlaylist, instead, removes a source from the engine. And finally, setCurrentPlaylist simply informs the world about the current playlist to play. You don&#8217;t want to play many playlists at the same time, right? <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>The MPRIS specification</strong></p>
<p>My near plans are to make everything compliant with the MPRIS specification so i have to keep this in mind while implementing the whole DBus interface. The first little problem i had to challenge with was the fact that MPRIS assumes only a playlist: the current tracklist. So i had to meet this limitation just using the method setCurrentPlaylist. This will help me acting as a wrapper around the playlist chosen by the user. The org.freedesktop.PlasmaMediaCenter /TrackList will just see the <em>currentPlaylist</em> and i won&#8217;t just get crazy with it.. Just as easy i think <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>And that&#8217;s why i decided to skip the <em>currentPlaylist </em>source in the availablePlaylists() method still leaving it in the sources though. After all it&#8217;s still a source, a plain copy of the chosen playlist. The different thing is that, unlike the other sources, this one won&#8217;t get saved in the config. At least it&#8217;ll be saved as <em>lastUsedPlaylist</em> but i haven&#8217;t implemented it yet.</p>
<p><strong>Plasma::Service</strong></p>
<p>Even if we have a DBus interface Marco suggested me that using DBus over the same common ground is a bit overkill. So he pointed me to Plasma::Service. And that&#8217;s what i did, for now simply making the setCurrent method available via the Playlist Plasma::Service. setCurrent is available for each source and simply does setCurrentPlaylist(source). As you may imagine calling setCurrentPlaylist(currentPlaylist) simply does nothing.</p>
<p>I must say that implementing a Plasma::Service was not that difficult but unfortunately it has no docs and i had to look at nowplaying code. The KConfig stuff initially caught me unprepared but i managed to do it <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> . I plan to write docs about it soon since it is a really powerful technology for Plasma™ <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>PlaylistApplet</strong></p>
<p>And now that the invisible stuff is almost done it&#8217;s the time for the applet stuff. I managed to write a simple and really ugly applet just to test how the interaction with the engine goes and it seems to already be fine. I made use of TagLib to retrieve tracks info so TagLib is a required dependency for PlasmaMediaCenter. Not that bad since we have it in kdesupport <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> .</p>
<p>Take the screenshot!</p>
<p><img class="aligncenter size-full wp-image-142" title="playlistapplet" src="http://alediaferia.files.wordpress.com/2009/04/playlistapplet.png?w=275&#038;h=339" alt="playlistapplet" width="275" height="339" /></p>
<p>Please, suggest me a nice icon for this ugly applet (/me stares at Nuno xD). Of course i plan to make it nice appealing keeping in mind that the MediaCenter would be accessed through remote control (thanks Marco for pointing this out <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Unfortunately now nothing plays so you have to wait a little more <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>Aaanyway that&#8217;s it for today</p>
<p>Stay tuned and see you! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alediaferia.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alediaferia.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alediaferia.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alediaferia.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alediaferia.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alediaferia.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alediaferia.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alediaferia.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alediaferia.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alediaferia.wordpress.com/141/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=141&subd=alediaferia&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alediaferia.wordpress.com/2009/04/28/adventures-in-mediacenter-land/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5bc58919dfd1e89d9d5be71a9c68dd9d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">alediaferia</media:title>
		</media:content>

		<media:content url="http://alediaferia.files.wordpress.com/2009/04/playlistapplet.png" medium="image">
			<media:title type="html">playlistapplet</media:title>
		</media:content>
	</item>
		<item>
		<title>Smells like Summer of Code&#8230;</title>
		<link>http://alediaferia.wordpress.com/2009/04/22/smells-like-summer-of-code/</link>
		<comments>http://alediaferia.wordpress.com/2009/04/22/smells-like-summer-of-code/#comments</comments>
		<pubDate>Wed, 22 Apr 2009 09:38:29 +0000</pubDate>
		<dc:creator>Alessandro Diaferia</dc:creator>
				<category><![CDATA[kde]]></category>

		<guid isPermaLink="false">http://alediaferia.wordpress.com/?p=136</guid>
		<description><![CDATA[Heyo people,
Long time you don&#8217;t hear from me.. =)
So, this is really a funny month for me it seems. As already announced in my previous post i started a C++/KDE course at my university (as professor =) and i&#8217;m having fun with it. There are students really really interesting in understanding how KDE development works. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=136&subd=alediaferia&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Heyo people,</p>
<p>Long time you don&#8217;t hear from me.. =)</p>
<p>So, this is really a funny month for me it seems. As already announced in my previous post i started a C++/KDE course at my university (as professor =) and i&#8217;m having fun with it. There are students really really interesting in understanding how KDE development works. I hope to be fitting well the purposes of the course.</p>
<p>Aaaanyway i&#8217;m really really happy to join GSoC this year. It&#8217;s the first year i attend it and i&#8217;m very excited about it!</p>
<p>In addition to this today Sebastian sent me an email stating that fundings for the nepomuk sprint have been accepted and i&#8217;ll finally meet some of you in real life at this amazing meeting!! =) Looking forward to meeting the nice persons you are!</p>
<p>As you may have noticed from the title this post is about my GSoC proposal. You can read about it <a href="http://docs.google.com/Doc?id=dc976p9s_13dcxpf9dp">here</a>.<br />
A very big thanks goes to Marco which is taking/has taken care of my proposal and of me as a brother =)</p>
<p>I really hope to be able to use this huge project as my thesis this year, but, who knows&#8230; <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Anyway,  now some code-speaking for your code-hunger: just to let things start softly i put my hands over the Plasma::DataEngines programming and, in the last 2 days, i managed to hack on a PlaylistEngine which is capable of storing your playlists and managing them. So simple and so useful for my GSoC intents since i&#8217;m gonna implement the Playlist Applet ASAP. The engine is shipped together with a DBus interface and you can already try it using qdbus/qdbusviewer to interact with it and start building your playlistS. The plural form is because it may handle more than only one playlist. Each source of the engine is a playlist and you can populate them at your will. The relevant DBus method are:</p>
<ul>
<li>void <strong>addToPlaylist</strong>(const QString &amp;playlistName, QStringList files);</li>
<li>void <strong>addToPlaylist</strong>(const QString &amp;playlistName, const QString &amp;file);</li>
<li>QStringList <strong>availablePlaylists</strong>();</li>
<li>QStringList <strong>filesInPlaylist</strong>(const QString &amp;playlistName);</li>
</ul>
<p>addToPlaylist simply adds a list of files to the playlist named <em>playlistName</em>. Of course, if the playlist does not exist it will be created. The second method is, of course, a convenience function. The third method simply returns the list of populated playlists. And finally the last one returns the files under the playlist <em>playlistName</em>. As you may notice no removal methods are <strong>still</strong> present. But i&#8217;ll add them asap.</p>
<p>This is how the engine gets displayed by our friendly plasmaengineexplorer. Even if the Key field is always &#8220;media file&#8221;, i think i&#8217;ll use it to specify whether the file is audio/video/picture and whatever has media content. In fact the playlist is intended to be used as Media Center component, so any media component would be accepted <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p><img class="aligncenter size-full wp-image-137" title="playlistengine" src="http://alediaferia.files.wordpress.com/2009/04/playlistengine.png?w=500&#038;h=297" alt="playlistengine" width="500" height="297" /></p>
<p>What i find really nice of it is that it already can automatically update the playlist when the files listed in get deleted from the harddisk. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Of course the playlists already get saved on your hd using KConfig, so playlistenginerc is what you want to manually edit your playlists.</p>
<p>The code currently stays under playground/base/plasma/dataengines/playlist so, if you have time give it a try! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>That&#8217;s it for today.. I&#8217;ll keep you up-to-date about the development.</p>
<p>Lemme know your opinions, suggestions.. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Cheers devs!!</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alediaferia.wordpress.com/136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alediaferia.wordpress.com/136/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alediaferia.wordpress.com/136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alediaferia.wordpress.com/136/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alediaferia.wordpress.com/136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alediaferia.wordpress.com/136/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alediaferia.wordpress.com/136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alediaferia.wordpress.com/136/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alediaferia.wordpress.com/136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alediaferia.wordpress.com/136/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alediaferia.wordpress.com&blog=4068609&post=136&subd=alediaferia&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alediaferia.wordpress.com/2009/04/22/smells-like-summer-of-code/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5bc58919dfd1e89d9d5be71a9c68dd9d?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96" medium="image">
			<media:title type="html">alediaferia</media:title>
		</media:content>

		<media:content url="http://alediaferia.files.wordpress.com/2009/04/playlistengine.png" medium="image">
			<media:title type="html">playlistengine</media:title>
		</media:content>
	</item>
	</channel>
</rss>