<?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/"
	>

<channel>
	<title>Joaquim Rocha's Web Page &#187; planet</title>
	<atom:link href="http://www.joaquimrocha.com/category/planet/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.joaquimrocha.com</link>
	<description>Linux, technology and art</description>
	<lastBuildDate>Sun, 05 Sep 2010 21:52:42 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>GUADEC and InterRail</title>
		<link>http://www.joaquimrocha.com/2010/08/05/guadec-and-interrail/</link>
		<comments>http://www.joaquimrocha.com/2010/08/05/guadec-and-interrail/#comments</comments>
		<pubDate>Thu, 05 Aug 2010 07:33:24 +0000</pubDate>
		<dc:creator>Joaquim Rocha</dc:creator>
				<category><![CDATA[gnome]]></category>
		<category><![CDATA[grilo]]></category>
		<category><![CDATA[guadec]]></category>
		<category><![CDATA[igalia]]></category>
		<category><![CDATA[planet]]></category>
		<category><![CDATA[travel]]></category>
		<category><![CDATA[trip]]></category>

		<guid isPermaLink="false">http://www.joaquimrocha.com/?p=527</guid>
		<description><![CDATA[I&#8217;ve spent last week in Den Haag, attending GUADEC 2010, with many other fellow Igalians.
Although last year I also attended GUADEC, this year was like a first time to me as last year&#8217;s GUADEC was co-located with aKademy forming Gran Canaria Desktop summit and it felt different.
What do I think of this year&#8217;s? Javascript, web, [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve spent last week in Den Haag, attending <a href="http://www.guadec.org">GUADEC</a> 2010, with many other fellow Igalians.</p>
<p>Although last year I also attended GUADEC, this year was like a first time to me as last year&#8217;s GUADEC was co-located with aKademy forming Gran Canaria Desktop summit and it felt different.</p>
<p>What do I think of this year&#8217;s? Javascript, web, introspection and shell, that&#8217;s what I think.<br />
This is GNOME&#8217;s new route, making desktop development more webbish and it is seems like a smart one too. Now, I don&#8217;t really fall for Javascript, I think it&#8217;s ugly and not really the best choice (imho) for large projects but anyway that&#8217;s the beauty of GObject Introspection, in the future it should be easy to use whatever language one prefers.</p>
<p>As for the talks, I really enjoyed <a href="http://guadec.org/index.php/guadec/2010/paper/view/124">Luis Villa&#8217;s keynote</a>. <a href="http://blogs.gnome.org/xan">Xan</a> and Fernando did a great job getting the tragedy that some times the Foundation&#8217;s mailing list is and turning it into a comedy.<br />
<a href="http://blogs.igalia.com/itoral">Iago</a> gave a good talk about Grilo and <a href="http://blogs.igalia.com/jasuarez">Juan</a> complemented it in a lightning talk about the plugins we did using Rygel-grilo.</p>
<p>This year I gave again a lightening talk, this time about the <a href="http://www.joaquimrocha.com/2010/03/03/text-prediction-on-gnome/">Predictor Input Method</a> which you might one day use in a mobile device or on the desktop itself if you need assisted typing. There must be a GUADEC&#8217;s rule saying that the laptop where people present the lightening talks must be a crappy netbook that takes 2 seconds before it changes a slide&#8230;</p>
<p>For an overall feeling of GUADEC, you can check out <a href="http://blogs.igalia.com/vjaquez/2010/08/03/guadec-2010/" target="_blank">Victor&#8217;s post covering GUADEC</a>, I agree totally with him.</p>
<p>I could also meet and chat with nice people like <a href="http://monotonous.org/" target="_blank">Eitan Isaacson</a>, Patricia and others.</p>
<p>So let&#8217;s see how the projects presented in GUADEC evolve and wait GUADEC 2011 in Berlin.</p>
<p>And what this week? This week I&#8217;m on vacation doing an InterRail across a bunch of European countries together with my girlfriend. I visited Paris already, where I found out my french is good enough for basic stuff. Today we&#8217;re in Brussels, it&#8217;s my third time here but the first one as a turist. I&#8217;m sure the beers will taste as marvellous as always.</p>
<p>I&#8217;m also doing a new thing: travelling without my laptop, the N900 seems to be a perfect replacement, I (still?) love this gadget and it surelly spares some space in my backpack.</p>
<p>See you in some European city, I&#8217;m likely to be wearing a GNOME/Linux/Metal t-shirt&#8230; what else is new&#8230;?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joaquimrocha.com/2010/08/05/guadec-and-interrail/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>One more step in OCR with OCRFeeder 0.7</title>
		<link>http://www.joaquimrocha.com/2010/07/30/one-more-step-in-ocr-with-ocrfeeder-0-7/</link>
		<comments>http://www.joaquimrocha.com/2010/07/30/one-more-step-in-ocr-with-ocrfeeder-0-7/#comments</comments>
		<pubDate>Fri, 30 Jul 2010 13:44:14 +0000</pubDate>
		<dc:creator>Joaquim Rocha</dc:creator>
				<category><![CDATA[gnome]]></category>
		<category><![CDATA[gtk]]></category>
		<category><![CDATA[guadec]]></category>
		<category><![CDATA[gui]]></category>
		<category><![CDATA[ocr]]></category>
		<category><![CDATA[ocrfeeder]]></category>
		<category><![CDATA[planet]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://www.joaquimrocha.com/?p=486</guid>
		<description><![CDATA[I have been hacking on some new and cool features on OCRFeeder for a while and now it is time to show them to the world in a new release.
These features I&#8217;m talking about fall mainly in 2 areas: improving the a11y of the UI and improving the recognition of documents.
A11y Improvement
The improvement of the [...]]]></description>
			<content:encoded><![CDATA[<p>I have been hacking on some new and cool features on <a href="http://live.gnome.org/OCRFeeder" target="_blank">OCRFeeder</a> for a while and now it is time to show them to the world in a new release.</p>
<p>These features I&#8217;m talking about fall mainly in 2 areas: improving the a11y of the UI and improving the recognition of documents.</p>
<p><strong>A11y Improvement</strong></p>
<p>The improvement of the a11y has the typical UI changes to include mnemonics, missing labels and relations, but also other approaches that have more to do with UX like using a progress dialog to inform users that time-taking operations are being carried. This means that now, the PDF importation and OCR won&#8217;t block the UI.<br />
Other changes in this category were the navigation through the content boxes (before, these could only be selected by clicking on them), the selection of all boxes and the deletion of selected boxes.</p>
<p>The following screenshot shows the box editor area of OCRFeeder with its mnemonics highlighted:</p>
<div id="attachment_508" class="wp-caption aligncenter" style="width: 160px"><a href="http://www.joaquimrocha.com/wp-content/uploads/2010/07/ocrfeeder_a11y1.png"><img class="size-medium wp-image-508" title="ocrfeeder_a11y" src="http://www.joaquimrocha.com/wp-content/uploads/2010/07/ocrfeeder_a11y1-150x300.png" alt="Box edition area" width="150" height="300" /></a><p class="wp-caption-text">Box edition area</p></div>
<p><strong>Recognition Improvements</strong></p>
<p>Sometimes, text columns are so close to each other that they end up being recognized as a single paragraph, so I added a post-detection method to solve this issue. This feature is optional and can be toggled from the Preferences dialog.</p>
<p>Here&#8217;s an example of the difference it makes:</p>
<div id="attachment_503" class="wp-caption aligncenter" style="width: 229px"><a href="http://www.joaquimrocha.com/wp-content/uploads/2010/07/ocrfeeder_no_columns1.png"><img class="size-medium wp-image-503" title="ocrfeeder_no_columns" src="http://www.joaquimrocha.com/wp-content/uploads/2010/07/ocrfeeder_no_columns1-219x300.png" alt="Before columns' detection improvements" width="219" height="300" /></a><p class="wp-caption-text">Before columns&#39; detection improvements</p></div>
<div id="attachment_504" class="wp-caption aligncenter" style="width: 230px"><a href="http://www.joaquimrocha.com/wp-content/uploads/2010/07/ocrfeeder_columns1.png"><img class="size-medium wp-image-504" title="ocrfeeder_columns" src="http://www.joaquimrocha.com/wp-content/uploads/2010/07/ocrfeeder_columns1-220x300.png" alt="After columns' detection improvements" width="220" height="300" /></a><p class="wp-caption-text">After columns&#39; detection improvements</p></div>
<p>Scanned document images are usually skewed and this makes it more difficult for the contents to be successfully detected and &#8220;OCRed&#8221;. I decided to implement an algorithm to deskew these images. The algorithm uses the <a href="http://en.wikipedia.org/wiki/Hough_transform" target="_blank">Hough transform</a> to try to find lines in the image and their angles and, while it is a bit slow, it works well:</p>
<div id="attachment_509" class="wp-caption aligncenter" style="width: 201px"><a href="http://www.joaquimrocha.com/wp-content/uploads/2010/07/ocrfeeder_skewed1.png"><img class="size-medium wp-image-509" title="ocrfeeder_skewed" src="http://www.joaquimrocha.com/wp-content/uploads/2010/07/ocrfeeder_skewed1-191x300.png" alt="Skewed image" width="191" height="300" /></a><p class="wp-caption-text">Skewed image</p></div>
<div id="attachment_510" class="wp-caption aligncenter" style="width: 201px"><a href="http://www.joaquimrocha.com/wp-content/uploads/2010/07/ocrfeeder_deskewed1.png"><img class="size-medium wp-image-510" title="ocrfeeder_deskewed" src="http://www.joaquimrocha.com/wp-content/uploads/2010/07/ocrfeeder_deskewed1-191x300.png" alt="Deskewed image" width="191" height="300" /></a><p class="wp-caption-text">Deskewed image</p></div>
<p>This action can be used in a loaded image but can also be configured to be automatically performed before the images are added. The Unpaper tool can now also be set to be clean images before adding them.<br />
This makes it much easier to successfully recognize images obtained from a scanner device.</p>
<p>Some fine tunning of the content boxes&#8217; bounds was done by trying to shorten their margins, that is, lowering the distance between the boxes and their actual contents.</p>
<p>The font size recognition was also tweaked to solve the problem of having paragraphs with initials (you know, the huge starting characters) which were influencing the whole paragraphs&#8217; font size.</p>
<p>To finish the recognition&#8217;s improvements, I have added an optional action to find and fix the text&#8217;s line breaks. Usually, OCR engines don&#8217;t consider &#8220;semantic line-breaks&#8221;, that is, OCR engines always insert a newline in the end of each line.<br />
Using some regular expressions, I try to find these &#8220;fake&#8221; line-breaks and recover the original flow of the text. Like some of the features mentioned above, this one can also be turned on/off from the Preferences dialog.</p>
<p>Here&#8217;s how the Preferences dialog looks like now:</p>
<p><a href="http://www.joaquimrocha.com/wp-content/uploads/2010/07/Preferences_dialog1.png"><img class="aligncenter size-medium wp-image-511" title="Preferences_dialog" src="http://www.joaquimrocha.com/wp-content/uploads/2010/07/Preferences_dialog1-263x300.png" alt="Preferences_dialog" width="263" height="300" /></a></p>
<p><a href="http://www.joaquimrocha.com/wp-content/uploads/2010/07/Preferences_dialog_recognition1.png"><img class="aligncenter size-medium wp-image-512" title="Preferences_dialog_recognition" src="http://www.joaquimrocha.com/wp-content/uploads/2010/07/Preferences_dialog_recognition1-263x300.png" alt="Preferences_dialog_recognition" width="263" height="300" /></a></p>
<p>To finish, images can now be dragged and dropped onto the pages&#8217; area and the mouse wheel can be used to scroll horizontally combining it with the Shift key, thanks to Stefan Löffler, and of course, several bugs were corrected and code was improved.</p>
<p>As you see, this is a &#8220;rich&#8221; new version of OCRFeeder that keeps being the easiest way to use OCR in a desktop. You are welcome to file bugs in <a href="bugzilla.gnome.org/" target="_blank">bugzilla</a> or to send patches and features&#8217; requests to its <a href="http://mail.gnome.org/mailman/listinfo/ocrfeeder-list" target="_blank">mailing list</a> or approaching me if you&#8217;re in <a href="http://www.guadec.org" target="_blank">GUADEC</a>.</p>
<p>Download: <a href="http://ftp.gnome.org/pub/GNOME/sources/ocrfeeder/0.7" target="_blank">OCRFeeder 0.7 tarball on GNOME FTP</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.joaquimrocha.com/2010/07/30/one-more-step-in-ocr-with-ocrfeeder-0-7/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>GUADEC ES, a good beginning for GUADEC</title>
		<link>http://www.joaquimrocha.com/2010/07/24/guadec-es-a-good-beginning-for-guadec/</link>
		<comments>http://www.joaquimrocha.com/2010/07/24/guadec-es-a-good-beginning-for-guadec/#comments</comments>
		<pubDate>Sat, 24 Jul 2010 22:38:00 +0000</pubDate>
		<dc:creator>Joaquim Rocha</dc:creator>
				<category><![CDATA[a coruña]]></category>
		<category><![CDATA[events]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[guadec]]></category>
		<category><![CDATA[ocrfeeder]]></category>
		<category><![CDATA[planet]]></category>

		<guid isPermaLink="false">http://www.joaquimrocha.com/?p=455</guid>
		<description><![CDATA[Yesterday was the last day of the 7th edition of GUADEC Hispana, originally to be organized in Chile but due to the disastrous earthquake, it was moved to the city of Corunna, Spain.
Between hacking on OCRFeeder (expect a new version soon), giving a talk about it, attending nice presentations and chatting with people, I had [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday was the last day of the 7th edition of <a href="http://2010.guadec.es" target="_blank">GUADEC Hispana</a>, originally to be organized in Chile but due to the <a href="http://en.wikipedia.org/wiki/2010_Chile_earthquake" target="_blank">disastrous earthquake</a>, it was moved to the city of <a href="http://en.wikipedia.org/wiki/A_Coru%C3%B1a" target="_blank">Corunna</a>, Spain.</p>
<p>Between hacking on <a href="http://live.gnome.org/OCRFeeder" target="_blank">OCRFeeder</a> (expect a new version soon), giving a talk about it, attending nice presentations and chatting with people, I had a great time.<br />
Diego&#8217;s <a href="http://people.gnome.org/~diegoe/" target="_blank">presentation about Epiphany</a> was simply epic and <a href="http://blogs.igalia.com/mario" arget="_blank">Mario</a> gave a very complete crash course of git.</p>
<p>I guess there&#8217;s a first time for these things but Thursday, while I was giving a demo of the new OCRFeeder&#8217;s features, it crashed on me&#8230; Never again will I laugh at Mr. Gates and friends when their products freeze out of the blue (nah, it is too funny).<br />
Now that I think of it&#8230; was this the first time a Portuguese man gave a talk at GUADEC Hispana?</p>
<p>The presentation was a cut-down version of the one <a href="http://www.joaquimrocha.com/2010/02/09/fosdem-follow-up/" target="_blank">I gave at FOSDEM</a> this year and you can check its slides below (it&#8217;s in Spanish):</p>
<div style="width:425px" id="__ss_4822465"><strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/j_rocha/ocrfeeder" title="Ocrfeeder">Ocrfeeder</a></strong><object id="__sse4822465" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=ocrfeeder-100723053038-phpapp01&#038;stripped_title=ocrfeeder" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed name="__sse4822465" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=ocrfeeder-100723053038-phpapp01&#038;stripped_title=ocrfeeder" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="padding:5px 0 12px">View more <a href="http://www.slideshare.net/">presentations</a> from <a href="http://www.slideshare.net/j_rocha">Joaquim Rocha</a>.</div>
</div>
<p>(thanks to <a href="http://blogs.igalia.com/mrego/" target="_blank">Manuel Rego</a> for reviewing my Spanish in the slides)</p>
<p>Here&#8217;s the group photo of the GUADEC ES attendants:</p>
<p><img alt="" src="http://farm5.static.flickr.com/4081/4822344878_d030dd0057.jpg" title="GUADEC ES 2010 group photo" class="alignnone" width="500" height="333" /></p>
<p>And from next Monday on, I&#8217;ll be in Den Haag for <a href="http://www.guadec.org" target="_blank">GUADEC 2010</a>. My lightening talk about the <a href="http://www.joaquimrocha.com/2010/03/03/text-prediction-on-gnome/" target="_blank">Predictor Input Method</a> got accepted, so if you&#8217;re into this kind of stuff, I hope to see you there.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joaquimrocha.com/2010/07/24/guadec-es-a-good-beginning-for-guadec/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Going to GUADEC</title>
		<link>http://www.joaquimrocha.com/2010/07/04/going-to-guadec-2/</link>
		<comments>http://www.joaquimrocha.com/2010/07/04/going-to-guadec-2/#comments</comments>
		<pubDate>Sun, 04 Jul 2010 11:43:09 +0000</pubDate>
		<dc:creator>Joaquim Rocha</dc:creator>
				<category><![CDATA[django]]></category>
		<category><![CDATA[events]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[grilo]]></category>
		<category><![CDATA[guadec]]></category>
		<category><![CDATA[igalia]]></category>
		<category><![CDATA[ocrfeeder]]></category>
		<category><![CDATA[planet]]></category>
		<category><![CDATA[travel]]></category>

		<guid isPermaLink="false">http://www.joaquimrocha.com/?p=422</guid>
		<description><![CDATA[One more year, Igalia will give me the chance and the pleasure to attend GUADEC one more year, this time in Den Haag.

My fellow Igalians Iago, Alejandro Piñeiro and José Dapena will give talks about Grilo, Cally and Modest 4, respectively.
As for me, I&#8217;m hoping my lightening talk about Text Prediction on GNOME gets accepted.
So, [...]]]></description>
			<content:encoded><![CDATA[<p>One more year, Igalia will give me the chance and the pleasure to attend <a href="http://www.guadec.org" target="_blank">GUADEC</a> one more year, this time in <a href="http://en.wikipedia.org/wiki/The_Hague" target="_blank">Den Haag</a>.</p>
<p><img src="http://www.guadec.org/img/guadec-oranje.png" alt="I'm going to GUADEC" /></p>
<p>My fellow Igalians <a href="http://blogs.igalia.com/itoral" target="_blank">Iago</a>, <a href="http://blogs.igalia.com/apinheiro" target="_blank">Alejandro Piñeiro</a> and <a href="http://blogs.igalia.com/dape" target="_blank">José Dapena</a> will give talks about <a href="http://guadec.org/index.php/guadec/2010/paper/view/17" target="_blank">Grilo</a>, <a href="http://guadec.org/index.php/guadec/2010/paper/view/94" target="_blank">Cally</a> and <a href="http://guadec.org/index.php/guadec/2010/paper/view/60" target="_blank">Modest 4</a>, respectively.</p>
<p>As for me, I&#8217;m hoping my lightening talk about <a href="http://www.joaquimrocha.com/2010/03/03/text-prediction-on-gnome/" target="_blank">Text Prediction on GNOME</a> gets accepted.</p>
<p>So, as usual, if you wanna talk about GNOME, <a href="http://live.gnome.org/OCRFeeder" target="_blank">OCR</a>, <a href="http://www.joaquimrocha.com/2010/03/03/text-prediction-on-gnome/" target="_blank">Input Methods</a>, <a href="http://live.gnome.org/Grilo" target="_blank">Grilo</a>, <a href="http://www.djangoproject.com" target="_blank">Django</a> or Free Software in general and have beer while we&#8217;re on it, come along!</p>
<p>Hope to see you in Den Haag.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joaquimrocha.com/2010/07/04/going-to-guadec-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Demystifying Grilo</title>
		<link>http://www.joaquimrocha.com/2010/06/09/demystifying-grilo/</link>
		<comments>http://www.joaquimrocha.com/2010/06/09/demystifying-grilo/#comments</comments>
		<pubDate>Wed, 09 Jun 2010 09:17:43 +0000</pubDate>
		<dc:creator>Joaquim Rocha</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[grilo]]></category>
		<category><![CDATA[planet]]></category>

		<guid isPermaLink="false">http://www.joaquimrocha.com/?p=412</guid>
		<description><![CDATA[It&#8217;s been a while since Grilo was released and although Iago&#8217;s post announcing it, together with Grilo&#8217;s webpage, do a good job describing what Grilo is about, it seems many people out there still do not understand what Grilo is and what it isn&#8217;t. Hence, I wrote this non-technical post as an attempt to demystify [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been a while since <a title="Grilo media provider" href="http://live.gnome.org/Grilo" target="_blank">Grilo</a> was released and although <a title="Grilo announcement" href="http://blogs.igalia.com/itoral/2010/02/10/grilo/" target="_blank">Iago&#8217;s post announcing it</a>, together with <a title="Grilo's webpage" href="http://live.gnome.org/Grilo" target="_blank">Grilo&#8217;s webpage</a>, do a good job describing what Grilo is about, it seems many people out there still do not understand what Grilo is and what it isn&#8217;t. Hence, I wrote this non-technical post as an attempt to demystify Grilo.<strong></strong></p>
<p><img src="http://farm2.static.flickr.com/1195/1424990010_9bcb3cb3c5.jpg" alt="Grilo means cricket in Galician" /><br />
<em>Grilo means cricket in Galician<br />
(CreativeCommons photo by <a target="_blank" href="http://www.flickr.com/photos/reneenmagda/1424990010/">Danforth1</a>)</em></p>
<p><strong>What Grilo is</strong></p>
<p>Nowadays, a number of online services provide a public API for application developers to retrieve those services&#8217; information. <a title="YouTube APIs and Tools" href="http://code.google.com/apis/youtube/overview.html" target="_blank">YouTube</a> lets you retrieve videos&#8217; info by browsing or searching; <a title="Jamendo's API" href="http://developer.jamendo.com/fr/wiki/Musiclist2Api" target="_blank">Jamendo</a> lets you retrieve its music and artists&#8217; info in a similar way; and many more offer similar options.</p>
<p>Although many of these services offer a <a title="RESTful API's definition" href="http://en.wikipedia.org/wiki/RESTful_API" target="_blank">RESTful API</a>, which already makes it easy, it is up to the applications&#8217; developers to write code to access that API, process the results (usually XML) and build their applications&#8217; own structures with the info. An alternative way is, of course, using an already existing library, suitable for the developers&#8217; needs, but whose API might differ from other services&#8217; libraries</p>
<p>Grilo exists to solve these issues.</p>
<p>Grilo has a number of plugins that retrieve media information from several services. It exposes that information in a consistent API so you don&#8217;t have to learn more than one way of getting that media&#8217;s info.<br />
Although there are more plugins for online services, there are also plugins for UPnP or for the very filesystem.</p>
<p>For the examples given before, searching for media in YouTube or Jamendo would be as easy as calling a method on Grilo, either choosing to search in one, both or all available media sources.</p>
<p>The search would result in media objects whose information (metadata keys) can be previously configured.</p>
<p>So, this is a very basic definition of what Grilo is: a framework that retrieves content from various services.</p>
<p><strong>What Grilo is not</strong></p>
<p>One thing people often expect from Grilo is for it to play content. Well, Grilo does NOT play media and that&#8217;s a planned &#8220;misfeature&#8221;.</p>
<p>Grilo&#8217;s main purpose is to retrieve media, or better said, media information, and to do it well.<br />
GStreamer is already here to play media and it does a wonderful job at it. Having Grilo to be a media player as well would deviate it from its specialization which would surely make it not suitable for some use cases.</p>
<p><strong>Why should you care</strong></p>
<p>More and more online services are being used in many platforms with applications being developed around them. Grilo eases the development of such applications.<br />
For a media player dedicated to play videos from YouTube and Vimeo: Grilo gets you the videos&#8217; URLs, GStreamer plays them and voila, you can focus on other implementation details.</p>
<p>Examples of applications that could have they&#8217;re job done easier would be Totem, Rhythmbox and Miro. For <a target="_blank" href="http://blogs.igalia.com/jasuarez/2010/06/02/rygel-and-grilo-dating-together/">Totem</a> and <a target="_blank" href="http://www.joaquimrocha.com/2010/06/02/grilo-powered-rhythmbox/">Rhythmbox</a>, <a target="_blank" href="http://blogs.igalia.com/jasuarez/2010/03/12/rygel-are-you-hungry/">Rygel-Grilo</a> (Grilo&#8217;s DBUS interface) has already shown (as a proof of concept) how easy it is to provide services as YouTube, SHOUTCast, Jamendo, filesystem&#8217;s media, and more, just in a fragment of the code needed to write a dedicated plugin for each of these services.<br />
I put also Miro as an example application because it is a video and audio player strongly intimate with the web, Grilo could only make it easy to find these videos. Plus, Grilo&#8217;s podcast plugin could also be used to manage Miro&#8217;s video channels&#8217; subscriptions.</p>
<p>As a different use case, a desktop like <a target="_blank" href="http://meego.com/community/blogs/imad/2010/meego-v1.0-core-software-platform-netbook-user-experience-project-release">Meego</a>&#8217;s, which integrates, for example, social services in it, could also integrate a way to search media, without the need to use the web browser.</p>
<p>So, summarizing, Grilo fills a gap in the media application development infrastructure; developers that are interested in integrating multimedia content in their applications could get an important benefit from using Grilo to access that content, and that&#8217;s why we encourage you to check it out</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joaquimrocha.com/2010/06/09/demystifying-grilo/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
