<?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:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Brett Mravec&#039;s Blog</title>
	<atom:link href="http://bmravec.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://bmravec.wordpress.com</link>
	<description>Just another WordPress.com weblog</description>
	<lastBuildDate>Tue, 29 Dec 2009 06:21:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='bmravec.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Brett Mravec&#039;s Blog</title>
		<link>http://bmravec.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://bmravec.wordpress.com/osd.xml" title="Brett Mravec&#039;s Blog" />
	<atom:link rel='hub' href='http://bmravec.wordpress.com/?pushpress=hub'/>
		<item>
		<title>GMediaMP backend updates</title>
		<link>http://bmravec.wordpress.com/2009/12/29/gmediamp-backend-updates/</link>
		<comments>http://bmravec.wordpress.com/2009/12/29/gmediamp-backend-updates/#comments</comments>
		<pubDate>Tue, 29 Dec 2009 06:21:54 +0000</pubDate>
		<dc:creator>bmravec</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[GMediaMP]]></category>

		<guid isPermaLink="false">http://bmravec.wordpress.com/?p=80</guid>
		<description><![CDATA[There have been lots of updates to the backend of GMediaMP to make it a more useful application. First off, I created a browser widget.  This widget is used for every display of lists of tracks.  With some configuration, it can display the two artist/album style panes to filter the list of tracks.  This allows [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bmravec.wordpress.com&amp;blog=8648396&amp;post=80&amp;subd=bmravec&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>There have been lots of updates to the backend of GMediaMP to make it a more useful application.</p>
<p>First off, I created a browser widget.  This widget is used for every display of lists of tracks.  With some configuration, it can display the two artist/album style panes to filter the list of tracks.  This allows me to simplify the code a lot by having one widget and using a different store for different media types.  So all the different panes (Music, Movies, &#8230;) are all handled by a browser widget.</p>
<p>Then I created a media-store interface which defines the store used by the browser.  Then I created a few classes that implement this interface that work with different backends.  The first one is the media-store which interacts with GMediaDB.  This is how the main 4 panes are created.  A media-store object is created for all 4, then browser widgets are created and added to the view.  This makes the code very simple and straight forward.  I&#8217;ve also started a backend to load from an ipod.  So with little work, the browser widget can display information from a completely different source.</p>
<p>I created a device-manager class that watches for device mounts/unmounts and manages device classes.  There is a device interface that defines interaction with any kind of removable device.  Currently there is an ipod device class that handles creating the stores and browsers for all its media types and adding them to the main views.  This implementation can currently only read from the device and play anything stored on it.  Syncing is still being worked on and some changes to the device interface will probably occur.</p>
<p>I have worked on the build system to enable the user to configure which options are used when running the program.  This will include things like which backends to use for the player and which devices to enable support for.  This is helpful for me because it enables me to work on certain things that are not stable but still keep them in the master branch of the repo.  I can just set it to be disabled by default, and enable it when i want to work on it.</p>
<p>The last big change is something I&#8217;ve been working on for a while.  I created a player interface and created several classes that implement this interface.  The main reason I did this was that the first version used gstreamer to playback media files, but I wanted more control over the process.  To do this I looked into using libavformat/libavcodec.  This provides for much greater control over playback but has a completely different interface than gstreamer is.  So now there are the two different player backends that can be selected via the build options.</p>
<p>So with these updates, GMediaMP got a more uniform interface all using the same browser widget class, the groundwork for device support, two different player backends, and the ability to choose between several options to go into the compiled program.  With that this project is getting more exciting everyday and turning into something useful.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bmravec.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bmravec.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bmravec.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bmravec.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bmravec.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bmravec.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bmravec.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bmravec.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bmravec.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bmravec.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bmravec.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bmravec.wordpress.com/80/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bmravec.wordpress.com/80/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bmravec.wordpress.com/80/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bmravec.wordpress.com&amp;blog=8648396&amp;post=80&amp;subd=bmravec&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bmravec.wordpress.com/2009/12/29/gmediamp-backend-updates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3187e133c64135edcc3f6780532bcaf4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bmravec</media:title>
		</media:content>
	</item>
		<item>
		<title>GMediaDB Updates and GMediaMP tag editing</title>
		<link>http://bmravec.wordpress.com/2009/11/08/gmediadb-updates-and-gmediamp-tag-editing/</link>
		<comments>http://bmravec.wordpress.com/2009/11/08/gmediadb-updates-and-gmediamp-tag-editing/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 04:29:05 +0000</pubDate>
		<dc:creator>bmravec</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[GMediaDB]]></category>
		<category><![CDATA[GMediaMP]]></category>

		<guid isPermaLink="false">http://bmravec.wordpress.com/?p=73</guid>
		<description><![CDATA[There is now a new tag editor interface for the GMediaMP application.  I created a class that handles all the details, now it should be simple work to just hook up all the different library panes.  Currently the TV Shows pane is hooked up and working.  It provides a simple interface that makes it easy [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bmravec.wordpress.com&amp;blog=8648396&amp;post=73&amp;subd=bmravec&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>There is now a new tag editor interface for the GMediaMP application.  I created a class that handles all the details, now it should be simple work to just hook up all the different library panes.  Currently the TV Shows pane is hooked up and working.  It provides a simple interface that makes it easy to add, remove or update tags.</p>

<a href='http://bmravec.wordpress.com/2009/11/08/gmediadb-updates-and-gmediamp-tag-editing/tag-interface/' title='Tag Editor Interface'><img data-attachment-id='74' data-orig-size='327,275' data-liked='0'width="150" height="126" src="http://bmravec.files.wordpress.com/2009/11/tag-interface.png?w=150&#038;h=126" class="attachment-thumbnail" alt="Tag Editor Interface" title="Tag Editor Interface" /></a>
<a href='http://bmravec.wordpress.com/2009/11/08/gmediadb-updates-and-gmediamp-tag-editing/add-tag/' title='Add tag to entry'><img data-attachment-id='75' data-orig-size='327,275' data-liked='0'width="150" height="126" src="http://bmravec.files.wordpress.com/2009/11/add-tag.png?w=150&#038;h=126" class="attachment-thumbnail" alt="Add tag to entry" title="Add tag to entry" /></a>

<p>A lot of changes have happened to the backend as well.  There are two main big changes.  First the gmediadb_update_entry function gained the capability to delete tags.  In earlier versions you could only add and change tags.  Now to delete a tag you give the tag like normal but specify a value of NULL.  The function will take this to mean the tag should be deleted and it will remove it from the database for that entry.  The second big change is for all the methods to get tags for entries.  Now if you pass in a NULL value for the tag array, the function will return all the possible tags for a given entry.  And because the functions still only return a string array for each entry, the keys and values are multiplexed together into the same array.  So the resulting array from one of these calls will look something like tag1, val1, tag2, val2, &#8230;, NULL.  When the application specifies a tag array, the returned array still only contains the values.  This change allows the application to either retrieve as many tags as it needs or all of them.  With these changes, the library is turning in to something very functional and useful to applications.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bmravec.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bmravec.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bmravec.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bmravec.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bmravec.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bmravec.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bmravec.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bmravec.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bmravec.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bmravec.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bmravec.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bmravec.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bmravec.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bmravec.wordpress.com/73/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bmravec.wordpress.com&amp;blog=8648396&amp;post=73&amp;subd=bmravec&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bmravec.wordpress.com/2009/11/08/gmediadb-updates-and-gmediamp-tag-editing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3187e133c64135edcc3f6780532bcaf4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bmravec</media:title>
		</media:content>

		<media:content url="http://bmravec.files.wordpress.com/2009/11/tag-interface.png?w=150" medium="image">
			<media:title type="html">Tag Editor Interface</media:title>
		</media:content>

		<media:content url="http://bmravec.files.wordpress.com/2009/11/add-tag.png?w=150" medium="image">
			<media:title type="html">Add tag to entry</media:title>
		</media:content>
	</item>
		<item>
		<title>GMediaDB backend update</title>
		<link>http://bmravec.wordpress.com/2009/10/08/gmediadb-backend-update/</link>
		<comments>http://bmravec.wordpress.com/2009/10/08/gmediadb-backend-update/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 03:05:41 +0000</pubDate>
		<dc:creator>bmravec</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[DBus]]></category>
		<category><![CDATA[GMediaDB]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Media Library]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://bmravec.wordpress.com/?p=69</guid>
		<description><![CDATA[I&#8217;m currently working on improving the gmediadb backend.  Initially I had set it up to use sqlite3.  While this was fairly simple to implement, it was slower than I would like it to be for inserts and removals.  Thus I started working on a branch to implement it differently to speed up the process.  The [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bmravec.wordpress.com&amp;blog=8648396&amp;post=69&amp;subd=bmravec&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m currently working on improving the gmediadb backend.  Initially I had set it up to use sqlite3.  While this was fairly simple to implement, it was slower than I would like it to be for inserts and removals.  Thus I started working on a branch to implement it differently to speed up the process.  The branch is tracked here <a title="http://github.com/bmravec/GMediaDB/tree/hash-table-store" href="http://github.com/bmravec/GMediaDB/tree/hash-table-store">http://github.com/bmravec/GMediaDB/tree/hash-table-store</a>.  The new code has each application using the library maintain it&#8217;s own copy of the data.  Each application will read a file on the disk to get it&#8217;s inital state.  Then it will use signals from dbus to keep it&#8217;s structure in sync with the rest of the applications using the library.  This allows for faster insertions and removals because the disk only has to be written when a new client needs to read the data file and when a client is ready to exit.  And since all this is done internally to the library, the interface to the library hasn&#8217;t changed at all.  This will provide a faster library at no added complexity to the client.</p>
<p>Edit: Since this post, I have merged the branch into master and deleted the branch.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bmravec.wordpress.com/69/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bmravec.wordpress.com/69/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bmravec.wordpress.com/69/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bmravec.wordpress.com/69/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bmravec.wordpress.com/69/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bmravec.wordpress.com/69/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bmravec.wordpress.com/69/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bmravec.wordpress.com/69/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bmravec.wordpress.com/69/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bmravec.wordpress.com/69/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bmravec.wordpress.com/69/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bmravec.wordpress.com/69/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bmravec.wordpress.com/69/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bmravec.wordpress.com/69/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bmravec.wordpress.com&amp;blog=8648396&amp;post=69&amp;subd=bmravec&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bmravec.wordpress.com/2009/10/08/gmediadb-backend-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3187e133c64135edcc3f6780532bcaf4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bmravec</media:title>
		</media:content>
	</item>
		<item>
		<title>GMediaMP album art widgets</title>
		<link>http://bmravec.wordpress.com/2009/09/02/gmediamp-album-art-widgets/</link>
		<comments>http://bmravec.wordpress.com/2009/09/02/gmediamp-album-art-widgets/#comments</comments>
		<pubDate>Thu, 03 Sep 2009 04:04:32 +0000</pubDate>
		<dc:creator>bmravec</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[GMediaMP]]></category>

		<guid isPermaLink="false">http://bmravec.wordpress.com/?p=58</guid>
		<description><![CDATA[Here is another update on GMediaMP.  Now I&#8217;ve added several status widgets that show track info and art related to that track.  First is the simple little widget that sits below the sidepane view in the main window.  It shows the currently playing track&#8217;s album art.  I think that in the future it might be [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bmravec.wordpress.com&amp;blog=8648396&amp;post=58&amp;subd=bmravec&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Here is another update on GMediaMP.  Now I&#8217;ve added several status widgets that show track info and art related to that track.  First is the simple little widget that sits below the sidepane view in the main window.  It shows the currently playing track&#8217;s album art.  I think that in the future it might be possible to make the video play here when a video is being played and turn it off when the now playing widget gets chosen.  Second is the tooltip for the status icon.  When you hover over the icon when something is playing, a nice widget pops up showing album art, title/artist/album, and position in the file.  The last addition is a notify popup.  It occurs whenever a new track starts.  This pops up and has a timer so it goes away after something like 10 seconds.  It displays info about the track that started to play and it also has a button to skip the track and move on to the next one.  That&#8217;s all for now&#8230;I have to try to decide what to do next.</p>

<a href='http://bmravec.wordpress.com/2009/09/02/gmediamp-album-art-widgets/gmediamp-albumart/' title='gmediamp-albumart'><img data-attachment-id='59' data-orig-size='808,624' data-liked='0'width="150" height="115" src="http://bmravec.files.wordpress.com/2009/09/gmediamp-albumart2.png?w=150&#038;h=115" class="attachment-thumbnail" alt="Main view with album art showing" title="gmediamp-albumart" /></a>
<a href='http://bmravec.wordpress.com/2009/09/02/gmediamp-album-art-widgets/gmediamp_tooltip/' title='gmediamp_tooltip'><img data-attachment-id='61' data-orig-size='319,131' data-liked='0'width="150" height="61" src="http://bmravec.files.wordpress.com/2009/09/gmediamp_tooltip2.png?w=150&#038;h=61" class="attachment-thumbnail" alt="StatusIcon tooltip showing info of currently playing track" title="gmediamp_tooltip" /></a>
<a href='http://bmravec.wordpress.com/2009/09/02/gmediamp-album-art-widgets/gmediamp_libnotify/' title='gmediamp_libnotify'><img data-attachment-id='60' data-orig-size='438,180' data-liked='0'width="150" height="61" src="http://bmravec.files.wordpress.com/2009/09/gmediamp_libnotify2.png?w=150&#038;h=61" class="attachment-thumbnail" alt="Popup that shows up after a new song starts" title="gmediamp_libnotify" /></a>

<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bmravec.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bmravec.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bmravec.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bmravec.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bmravec.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bmravec.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bmravec.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bmravec.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bmravec.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bmravec.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bmravec.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bmravec.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bmravec.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bmravec.wordpress.com/58/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bmravec.wordpress.com&amp;blog=8648396&amp;post=58&amp;subd=bmravec&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bmravec.wordpress.com/2009/09/02/gmediamp-album-art-widgets/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3187e133c64135edcc3f6780532bcaf4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bmravec</media:title>
		</media:content>

		<media:content url="http://bmravec.files.wordpress.com/2009/09/gmediamp-albumart2.png?w=150" medium="image">
			<media:title type="html">gmediamp-albumart</media:title>
		</media:content>

		<media:content url="http://bmravec.files.wordpress.com/2009/09/gmediamp_tooltip2.png?w=150" medium="image">
			<media:title type="html">gmediamp_tooltip</media:title>
		</media:content>

		<media:content url="http://bmravec.files.wordpress.com/2009/09/gmediamp_libnotify2.png?w=150" medium="image">
			<media:title type="html">gmediamp_libnotify</media:title>
		</media:content>
	</item>
		<item>
		<title>GMediaMP show pane preview</title>
		<link>http://bmravec.wordpress.com/2009/09/01/34/</link>
		<comments>http://bmravec.wordpress.com/2009/09/01/34/#comments</comments>
		<pubDate>Tue, 01 Sep 2009 21:17:58 +0000</pubDate>
		<dc:creator>bmravec</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[GMediaMP]]></category>

		<guid isPermaLink="false">http://bmravec.wordpress.com/?p=34</guid>
		<description><![CDATA[Here are some new pics of the new TVShow pane that I added to GMediaMP.  I think it looks pretty nice.  Currently the shows tab is the only one that has the ability to change metadata of files already in the database.  The main reason for this was that when movies are imported, only their [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bmravec.wordpress.com&amp;blog=8648396&amp;post=34&amp;subd=bmravec&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Here are some new pics of the new TVShow pane that I added to GMediaMP.  I think it looks pretty nice.  Currently the shows tab is the only one that has the ability to change metadata of files already in the database.  The main reason for this was that when movies are imported, only their title and location get set.  So to get a clean display of show/season/episode I had to set them myself.  I think that better tagging will be available when I get libavcodec/libavformat working better.  GMediaMP currently uses taglib_c which is limited to audio files.</p>

<a href='http://bmravec.wordpress.com/2009/09/01/34/gmediadb-shows/' title='Basic show pane'><img data-attachment-id='36' data-orig-size='853,698' data-liked='0'width="150" height="122" src="http://bmravec.files.wordpress.com/2009/09/gmediadb-shows1.png?w=150&#038;h=122" class="attachment-thumbnail" alt="Basic show pane" title="Basic show pane" /></a>
<a href='http://bmravec.wordpress.com/2009/09/01/34/gmediamp-show-selected/' title='gmediamp-show-selected'><img data-attachment-id='38' data-orig-size='853,698' data-liked='0'width="150" height="122" src="http://bmravec.files.wordpress.com/2009/09/gmediamp-show-selected1.png?w=150&#038;h=122" class="attachment-thumbnail" alt="Show pane with a show selected" title="gmediamp-show-selected" /></a>
<a href='http://bmravec.wordpress.com/2009/09/01/34/gmediamp-show-info/' title='show-dialog'><img data-attachment-id='37' data-orig-size='350,176' data-liked='0'width="150" height="75" src="http://bmravec.files.wordpress.com/2009/09/gmediamp-show-info1.png?w=150&#038;h=75" class="attachment-thumbnail" alt="Dialog to change metadata for a show" title="show-dialog" /></a>

<p>On a side note&#8230;I have moved from google code to github.  I wanted to branch GMediaMP and I find git much easier to use for that then svn.  Also there were some other neat features that could be helpful in the future.  So now the new code repos are:</p>
<p><a title="http://github.com/bmravec/GMediaDB/tree/master" href="http://github.com/bmravec/GMediaDB/tree/master">http://github.com/bmravec/GMediaDB/tree/master</a></p>
<p><a title="http://github.com/bmravec/GMediaMP/tree/master" href="http://github.com/bmravec/GMediaMP/tree/master">http://github.com/bmravec/GMediaMP/tree/master</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bmravec.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bmravec.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bmravec.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bmravec.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bmravec.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bmravec.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bmravec.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bmravec.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bmravec.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bmravec.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bmravec.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bmravec.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bmravec.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bmravec.wordpress.com/34/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bmravec.wordpress.com&amp;blog=8648396&amp;post=34&amp;subd=bmravec&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bmravec.wordpress.com/2009/09/01/34/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3187e133c64135edcc3f6780532bcaf4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bmravec</media:title>
		</media:content>

		<media:content url="http://bmravec.files.wordpress.com/2009/09/gmediadb-shows1.png?w=150" medium="image">
			<media:title type="html">Basic show pane</media:title>
		</media:content>

		<media:content url="http://bmravec.files.wordpress.com/2009/09/gmediamp-show-selected1.png?w=150" medium="image">
			<media:title type="html">gmediamp-show-selected</media:title>
		</media:content>

		<media:content url="http://bmravec.files.wordpress.com/2009/09/gmediamp-show-info1.png?w=150" medium="image">
			<media:title type="html">show-dialog</media:title>
		</media:content>
	</item>
		<item>
		<title>GMediaMP</title>
		<link>http://bmravec.wordpress.com/2009/08/26/17/</link>
		<comments>http://bmravec.wordpress.com/2009/08/26/17/#comments</comments>
		<pubDate>Thu, 27 Aug 2009 01:12:38 +0000</pubDate>
		<dc:creator>bmravec</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[GMediaMP]]></category>

		<guid isPermaLink="false">http://bmravec.wordpress.com/?p=17</guid>
		<description><![CDATA[Ok&#8230;so I have the gmediadb backend working fairly well.  So i switched over to putting more effort into the media player application to show off what i&#8217;ve done.  It has progressed nicely so I thought i&#8217;d put up some screenshots of what i have working and expand a little on where I would like to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bmravec.wordpress.com&amp;blog=8648396&amp;post=17&amp;subd=bmravec&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Ok&#8230;so I have the gmediadb backend working fairly well.  So i switched over to putting more effort into the media player application to show off what i&#8217;ve done.  It has progressed nicely so I thought i&#8217;d put up some screenshots of what i have working and expand a little on where I would like to go in the near future.</p>

<a href='http://bmravec.wordpress.com/2009/08/26/17/music-browse/' title='music-browse'><img data-attachment-id='21' data-orig-size='970,795' data-liked='0'width="150" height="122" src="http://bmravec.files.wordpress.com/2009/08/music-browse.png?w=150&#038;h=122" class="attachment-thumbnail" alt="Basic Music Browser" title="music-browse" /></a>
<a href='http://bmravec.wordpress.com/2009/08/26/17/movie-playing/' title='movie-playing'><img data-attachment-id='20' data-orig-size='1206,762' data-liked='0'width="150" height="94" src="http://bmravec.files.wordpress.com/2009/08/movie-playing.jpg?w=150&#038;h=94" class="attachment-thumbnail" alt="Movie playback" title="movie-playing" /></a>
<a href='http://bmravec.wordpress.com/2009/08/26/17/movie-list/' title='movie-list'><img data-attachment-id='19' data-orig-size='970,797' data-liked='0'width="150" height="123" src="http://bmravec.files.wordpress.com/2009/08/movie-list.png?w=150&#038;h=123" class="attachment-thumbnail" alt="List of imported movie files" title="movie-list" /></a>
<a href='http://bmravec.wordpress.com/2009/08/26/17/import/' title='import'><img data-attachment-id='18' data-orig-size='832,657' data-liked='0'width="150" height="118" src="http://bmravec.files.wordpress.com/2009/08/import.png?w=150&#038;h=118" class="attachment-thumbnail" alt="Progress of import shown with a bar" title="import" /></a>

<p>In the future I would like to add a browser for tv shows and music videos.  This is one thing that I&#8217;ve always wanted in the past that I feel all the other media players available are lacking.  I also think it would be cool to integrate dvd support.  When a dvd is inserted it could show up in the sidebar and the video could go in the widget or fullscreen.  It would probably be possible to do device support.  But that is not as important to me because there are others already out there that could just access the gmediadb library to get all the items to sync to the device.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bmravec.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bmravec.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bmravec.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bmravec.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bmravec.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bmravec.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bmravec.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bmravec.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bmravec.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bmravec.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bmravec.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bmravec.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bmravec.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bmravec.wordpress.com/17/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bmravec.wordpress.com&amp;blog=8648396&amp;post=17&amp;subd=bmravec&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bmravec.wordpress.com/2009/08/26/17/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3187e133c64135edcc3f6780532bcaf4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bmravec</media:title>
		</media:content>

		<media:content url="http://bmravec.files.wordpress.com/2009/08/music-browse.png?w=150" medium="image">
			<media:title type="html">music-browse</media:title>
		</media:content>

		<media:content url="http://bmravec.files.wordpress.com/2009/08/movie-playing.jpg?w=150" medium="image">
			<media:title type="html">movie-playing</media:title>
		</media:content>

		<media:content url="http://bmravec.files.wordpress.com/2009/08/movie-list.png?w=150" medium="image">
			<media:title type="html">movie-list</media:title>
		</media:content>

		<media:content url="http://bmravec.files.wordpress.com/2009/08/import.png?w=150" medium="image">
			<media:title type="html">import</media:title>
		</media:content>
	</item>
		<item>
		<title>GMediaDB Music Library</title>
		<link>http://bmravec.wordpress.com/2009/07/20/gmediadb-music-library/</link>
		<comments>http://bmravec.wordpress.com/2009/07/20/gmediadb-music-library/#comments</comments>
		<pubDate>Tue, 21 Jul 2009 02:56:18 +0000</pubDate>
		<dc:creator>bmravec</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[DBus]]></category>
		<category><![CDATA[Gnome]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Media Library]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[SQLite3]]></category>

		<guid isPermaLink="false">http://bmravec.wordpress.com/?p=5</guid>
		<description><![CDATA[I think the power of linux is in the use of shared code.  Most of the ideas I have revolve around the use of libraries.  These libraries can be used by programs to accomplish a specific task without having to write their own version or provide access to a user or system-wide set of resources. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bmravec.wordpress.com&amp;blog=8648396&amp;post=5&amp;subd=bmravec&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I think the power of linux is in the use of shared code.  Most of the ideas I have revolve around the use of libraries.  These libraries can be used by programs to accomplish a specific task without having to write their own version or provide access to a user or system-wide set of resources.</p>
<p>My first idea is a shared media library for each user.  With the ever growing number of media players on the desktop, it gets increasingly annoying to have to maintain your library of media on every different player.  This library would provide a simple API for access to the organized media for the user.  The application would be able to read all the entries in the library, add/modify/remove entries, and receive signals on modification by other applications.</p>
<p>I have currently created a sample implementation hosted at <a href="http://code.google.com/p/gmediadb" target="_blank">http://code.google.com/p/gmediadb</a>.  It is a GObject class that manages a sqlite3 database and connects to a small dbus application that notifies different applications of changes.  I wrote it to be very generic.  In the current implementation, any type of file with associated metadata can be tracked.  When you create the object, you specify a media type.  If it exists, you can get the entries.  If it does not exist, a new table is created.  This allows for a large amount of flexibility because the program is not locked into a fixed set of media types or specific sets of tags.</p>
<p>To get the sample download and install these three packages</p>
<ul>
<li><a href="http://gmediadb.googlecode.com/files/gmediadb-0.5.tar.bz2" target="_blank">http://gmediadb.googlecode.com/files/gmediadb-0.5.tar.bz2</a></li>
<li><a href="http://gmediamp.googlecode.com/files/gmediamp-0.5.tar.bz2" target="_blank">http://gmediamp.googlecode.com/files/gmediamp-0.5.tar.bz2</a></li>
<li><a href="http://gmediatag.googlecode.com/files/gmediatag-0.1.tar.bz2" target="_blank">http://gmediatag.googlecode.com/files/gmediatag-0.1.tar.bz2</a></li>
</ul>
<p>GMediaMP is a simple media player that looks similar to Rhythmbox.  It currently does not have import functionality.  GMediaTag is a simple music importer.  This shows the two separate applications working on the same library.  The importer will load the files into the database, and the player will show the changes as they are happening.  It&#8217;s small libraries like this that will speed the development time of applications and provide a better experience to the novice user.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bmravec.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bmravec.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bmravec.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bmravec.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bmravec.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bmravec.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bmravec.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bmravec.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bmravec.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bmravec.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bmravec.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bmravec.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bmravec.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bmravec.wordpress.com/5/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bmravec.wordpress.com&amp;blog=8648396&amp;post=5&amp;subd=bmravec&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bmravec.wordpress.com/2009/07/20/gmediadb-music-library/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/3187e133c64135edcc3f6780532bcaf4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bmravec</media:title>
		</media:content>
	</item>
	</channel>
</rss>
