<?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>J5's Blog &#187; Open Formats</title>
	<atom:link href="http://www.j5live.com/category/open-formats/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.j5live.com</link>
	<description>Where the urethane hits the pavement</description>
	<lastBuildDate>Fri, 03 Feb 2012 19:05:24 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>GUADEC Videos</title>
		<link>http://www.j5live.com/2010/08/25/guadec-videos/</link>
		<comments>http://www.j5live.com/2010/08/25/guadec-videos/#comments</comments>
		<pubDate>Wed, 25 Aug 2010 16:48:12 +0000</pubDate>
		<dc:creator>J5</dc:creator>
				<category><![CDATA[GUADEC]]></category>
		<category><![CDATA[Gnome]]></category>
		<category><![CDATA[Open Formats]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.j5live.com/?p=834</guid>
		<description><![CDATA[It is really great to see this year&#8217;s GUADEC videos being released so soon after the event.  Thank you Flumotion and Fluendo!!!
My only gripe is that yet again my talk&#8217;s timeslot seems to have experienced technical difficulty and is not available (the file is only 27min long).  Hopefully that is just a temporary glitch.
It is [...]]]></description>
			<content:encoded><![CDATA[<p>It is really great to see <a href="http://www.flumotion.com/first_webm_live_event.php">this year&#8217;s GUADEC videos</a> being released so soon after the event.  Thank you <a href="http://www.flumotion.com">Flumotion</a> and <a href="http://www.fluendo.com/">Fluendo</a>!!!</p>
<p>My only gripe is that yet again my talk&#8217;s <a href="http://demosite.ondemand.flumotion.com/demosite/ondemand/guadec/output3/guadec-2010-07-29-0900-1330.webm">timeslot</a> seems to have experienced technical difficulty and is not available (the file is only 27min long).  Hopefully that is just a temporary glitch.</p>
<p>It is still an amazing feat of engineering that such as new technology such as WebM codec was used not only to provide archives of the conference but to also stream live.  Not to mention the software and codec used are both Open Source.</p>
[read this post in: <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/08/25/guadec-videos/&langpair=en%7Car">ar</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/08/25/guadec-videos/&langpair=en%7Cde">de</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/08/25/guadec-videos/&langpair=en%7Ces">es</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/08/25/guadec-videos/&langpair=en%7Cfr">fr</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/08/25/guadec-videos/&langpair=en%7Cit">it</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/08/25/guadec-videos/&langpair=en%7Cja">ja</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/08/25/guadec-videos/&langpair=en%7Cko">ko</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/08/25/guadec-videos/&langpair=en%7Cpt">pt</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/08/25/guadec-videos/&langpair=en%7Cru">ru</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/08/25/guadec-videos/&langpair=en%7Czh-CN">zh-CN</a> ]]]></content:encoded>
			<wfw:commentRss>http://www.j5live.com/2010/08/25/guadec-videos/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Let&#8217;s get this staight &#8211; MPEG-LA&#8217;s and an x264 developer&#8217;s sabre rattling is pure FUD</title>
		<link>http://www.j5live.com/2010/05/21/lets-get-this-staight-mpeg-las-and-x264-developers/</link>
		<comments>http://www.j5live.com/2010/05/21/lets-get-this-staight-mpeg-las-and-x264-developers/#comments</comments>
		<pubDate>Fri, 21 May 2010 16:13:26 +0000</pubDate>
		<dc:creator>J5</dc:creator>
				<category><![CDATA[Open Formats]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.j5live.com/?p=791</guid>
		<description><![CDATA[
Unless you have been living under an Internet rock you already know that Google just released VP8 as an open source and open standard protocol.  Almost instantly over night the video codec ecosystem has been turned on its head as Mozilla, Opera, YouTube  and Flash, among others have already pledged support and even [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://xkcd.com/743/"><img src="http://imgs.xkcd.com/comics/infrastructures.png" alt="" width="480px"/></a></p>
<p>Unless you have been living under an Internet rock you already know that <a href="http://www.webmproject.org/">Google just released VP8 as an open source and open standard protocol</a>.  Almost instantly over night the video codec ecosystem has been turned on its head as <a href="http://people.mozilla.com/~prouget/demos/vp8/">Mozilla</a>, <a href="http://dev.opera.com/articles/view/opera-supports-webm-video/">Opera</a>, YouTube  and <a href="http://blogs.adobe.com/flashplatform/2010/05/adobe_support_for_vp8.html">Flash</a>, among others have already pledged support and even got tech previews up and running.</p>
<p>It is also no surprise that <a href="http://digitaldaily.allthingsd.com/20100520/googles-royalty-free-webm-video-may-not-be-royalty-free-for-long/">the MPEG-LA</a> and <a href="http://x264dev.multimedia.cx/?p=377">x264 developers</a> are hitting back.  What is of concern is people take these bias sources as fact.  The issue is the arguments used to scare us away from moving to a format that they do not control or develop, either hold very little water or apply just as much to using MPEG-LA technologies as it does to VP8 technologies, with the caveat that you have to pay for the privilege.   </p>
<p>For instance the assertion that you can never be 100% sure something is patent free (or more precise you have the rights to use a technology without fear of litigation) is on the surface true.  Our patent system is fatally flawed in that it is over broad and largely opaque. One can never be sure that some patent might surface or a jury might interpret a patent in a way that is more favourable to the patent holder.  The issue with the argument is it applies just as much to H.264 as it does to both Theora and VP8.  It is a straw man argument.  The logic follows very closely to extortion (legalized because of the flawed patent system) &#8211; if you pay us money and use our services we will ignore you but if you go somewhere else we might start harassing you, so you are safe if you stay with us, if you catch my drift. What we do know for a fact is organizations such as Google, Mozilla, Opera and Adobe, all of who have very capable team of lawyers, have come to the conclusion that it is safe to ship the utilize the VP8 codec.</p>
<p>As for the argument that hardware manufactures already support H.264, we wouldn&#8217;t get anywhere if we just accepted the status quo.  If you <a href="http://webmproject.blogspot.com/2010/05/introducing-webm-open-web-media-project.html">look at the list of organizations supporting WebM</a> you will see that they are not only heavy hitters, there is also a good number of them that are hardware vendors.  I&#8217;m pretty sure we will see android devices coming out in the near future that support the format in the base system (and I&#8217;m sure we will see apps and plugins pop up almost instantly).</p>
<p>What about technical arguments that VP8 just isn&#8217;t good enough yet?  Those arguments came from an x264 developer.  (side note &#8211; x264 is an Open Source implementation of the H.264 format.  While the code itself is under an Open Source license the usage of such code is not open as it is governed by the MPEG-LA patent portfolio).  Good enough is a pretty subjective thing.  Google seems to think it is good enough for YouTube and <a href="http://people.xiph.org/~xiphmont/demo/">as we have seen with the improvements in Theora</a> which started out as a pretty low quality encoder, a little time and effort is all that is needed.  Unlike Theora however, which is reaching the upper level of constraints imposed on it by the format, VP8 is at the low end of its potential.  With a modern video codec design and more interest due to the open sourcing of VP8, we can expect a stead stream of improvements to the encoder for years to come.</p>
<p>In the end this will all come down to supported codecs.  Right now H.264 has the lead but with Google&#8217;s YouTube on board as well as all the major browsers which have rising market share, that might not be the case forever.  MPEG-LA and H.264 developers will continue to sabre rattle in hopes that their FUD will scare off users instead of actually competing.  Here is an idea, why not license H.264 in a more market friendly model?  You know <a href="http://bemasc.net/wordpress/2010/02/02/no-you-cant-do-that-with-h264/">one, that doesn&#8217;t threaten and extort users and developers</a>?  I&#8217;m not holding my breath for that one. </p>
[read this post in: <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/05/21/lets-get-this-staight-mpeg-las-and-x264-developers/&langpair=en%7Car">ar</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/05/21/lets-get-this-staight-mpeg-las-and-x264-developers/&langpair=en%7Cde">de</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/05/21/lets-get-this-staight-mpeg-las-and-x264-developers/&langpair=en%7Ces">es</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/05/21/lets-get-this-staight-mpeg-las-and-x264-developers/&langpair=en%7Cfr">fr</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/05/21/lets-get-this-staight-mpeg-las-and-x264-developers/&langpair=en%7Cit">it</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/05/21/lets-get-this-staight-mpeg-las-and-x264-developers/&langpair=en%7Cja">ja</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/05/21/lets-get-this-staight-mpeg-las-and-x264-developers/&langpair=en%7Cko">ko</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/05/21/lets-get-this-staight-mpeg-las-and-x264-developers/&langpair=en%7Cpt">pt</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/05/21/lets-get-this-staight-mpeg-las-and-x264-developers/&langpair=en%7Cru">ru</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/05/21/lets-get-this-staight-mpeg-las-and-x264-developers/&langpair=en%7Czh-CN">zh-CN</a> ]]]></content:encoded>
			<wfw:commentRss>http://www.j5live.com/2010/05/21/lets-get-this-staight-mpeg-las-and-x264-developers/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>kamaloka-js 0.9.0 released</title>
		<link>http://www.j5live.com/2010/01/28/kamaloka-js-0-9-0-released/</link>
		<comments>http://www.j5live.com/2010/01/28/kamaloka-js-0-9-0-released/#comments</comments>
		<pubDate>Thu, 28 Jan 2010 21:04:24 +0000</pubDate>
		<dc:creator>J5</dc:creator>
				<category><![CDATA[AMQP]]></category>
		<category><![CDATA[Open Formats]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[messaging]]></category>

		<guid isPermaLink="false">http://www.j5live.com/?p=726</guid>
		<description><![CDATA[I am proud to announce the second release of the kamaloka-js AMQP bindings.  This release brings with it a high level API modeled after the new Sender/Receiver and addressing API&#8217;s being developed in the Qpid project.  It is intended to bridge the gap between the 0.10 protocol and the upcoming 1.0 protocol.  [...]]]></description>
			<content:encoded><![CDATA[<p>I am proud to announce the second release of the kamaloka-js AMQP bindings.  This release brings with it a high level API modeled after the new Sender/Receiver and addressing API&#8217;s being developed in the Qpid project.  It is intended to bridge the gap between the 0.10 protocol and the upcoming 1.0 protocol.  I have also simplified the code base and improved the code generator.  Because we are getting so close to implementing the complete 0.10 protocol spec, we have bumped the version to the 0.9.x series to indicate a redefined focus on stabilizing the current code base.  You will notice significant API changes from 0.1.0 to 0.9.0.  We hope to not have to make too many more changes during the current cycle of development and hope to get a 0.10 version out once we have completed coverage of the entire spec.</p>
<p>Some of the highlights of this release are:</p>
<ul>
<li>Rework API to conform to the new Sender/Reciever API and addressing format</li>
<li>Supports multi-channel/multi-frame parts of the spec</li>
<li>Uses js.io class infrastructure</li>
<li>Generated code now easier to read with decoders implemented in a class hierarchy</li>
<li>Rewritten dispatch layer &#8211; event code now works on the message layer instead of the frame layer even for low level dispatching</li>
<li>Much closer to implementing 100% of the 0.10 spec</li>
<li>Infrastructure in place to start working on the 1.0 spec</li>
</ul>
<p><strong> Give me the code</strong></p>
<ul>
<li><a href="https://fedorahosted.org/kamaloka-js/attachment/wiki/releases/kamaloka-js-0.9.0.tar.bz2?format=raw">tar.bz2 format</a> (<a href="https://fedorahosted.org/kamaloka-js/attachment/wiki/releases/kamaloka-js-0.9.0.tar.bz2.sha1?format=txt">sha1</a>)</li>
<li><a href="https://fedorahosted.org/kamaloka-js/attachment/wiki/releases/kamaloka-js-0.9.0.zip?format=raw">zip format</a> (<a href="https://fedorahosted.org/kamaloka-js/attachment/wiki/releases/kamaloka-js-0.9.0.zip.sha1?format=txt">sha1</a>)</li>
<li>Project homepage &#038; trac: <a href="https://fedorahosted.org/kamaloka-js/">https://fedorahosted.org/kamaloka-js/</a></li>
<li>Mailing list: <a href="https://fedorahosted.org/mailman/listinfo/kamaloka-js-devel">https://fedorahosted.org/mailman/listinfo/kamaloka-js-devel</a></li>
<li>git: git clone http://git.fedorahosted.org/git/kamaloka-js.git</li>
</ul>
<p><strong>About Kamaloka-js</strong></p>
<p>Kamaloka-js is an implementation of the <a href="http://amqp.org/">AMQP messaging protocol</a> in native JavaScript.  It is setup to be used with <a href="http://orbited.org">Orbited</a> but can be used with any library which produce TCPSockets in the browser similar to Orbited.  Kamaloka bindings are generated from qpid XML protocol description files.</p>
[read this post in: <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/28/kamaloka-js-0-9-0-released/&langpair=en%7Car">ar</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/28/kamaloka-js-0-9-0-released/&langpair=en%7Cde">de</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/28/kamaloka-js-0-9-0-released/&langpair=en%7Ces">es</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/28/kamaloka-js-0-9-0-released/&langpair=en%7Cfr">fr</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/28/kamaloka-js-0-9-0-released/&langpair=en%7Cit">it</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/28/kamaloka-js-0-9-0-released/&langpair=en%7Cja">ja</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/28/kamaloka-js-0-9-0-released/&langpair=en%7Cko">ko</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/28/kamaloka-js-0-9-0-released/&langpair=en%7Cpt">pt</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/28/kamaloka-js-0-9-0-released/&langpair=en%7Cru">ru</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/28/kamaloka-js-0-9-0-released/&langpair=en%7Czh-CN">zh-CN</a> ]]]></content:encoded>
			<wfw:commentRss>http://www.j5live.com/2010/01/28/kamaloka-js-0-9-0-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flattening the model</title>
		<link>http://www.j5live.com/2010/01/27/flattening-the-model/</link>
		<comments>http://www.j5live.com/2010/01/27/flattening-the-model/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 21:14:04 +0000</pubDate>
		<dc:creator>J5</dc:creator>
				<category><![CDATA[AMQP]]></category>
		<category><![CDATA[Open Formats]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[messaging]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[tubes]]></category>

		<guid isPermaLink="false">http://www.j5live.com/?p=714</guid>
		<description><![CDATA[In my quest for cleaner code in Kamaloka-js I have been working on simplifying the dispatch model.  AMQP has some interesting features built into it to facilitate real-time functionality along with message prioritization.  To accomplish this messages can be sent on different queues and tracks, and also be broken up into segments which can be [...]]]></description>
			<content:encoded><![CDATA[<p>In my quest for cleaner code in Kamaloka-js I have been working on simplifying the dispatch model.  AMQP has some interesting features built into it to facilitate real-time functionality along with message prioritization.  To accomplish this messages can be sent on different queues and tracks, and also be broken up into segments which can be further broken up into frames.</p>
<p><strong>Frames </strong></p>
<p>Frames are the basic building blocks of the AMQP data stream.  They contain complete headers that describe queue, track and segment that is currently being constructed.  The payload of a frame (the segment being built) can be broken up into arbitrary sized byte arrays which are then reassembled based on the channel and track they are sent on.  In this way applications with memory constraints can request that frames be no bigger than what the application can fit in memory.  A typical frame header looks something like:</p>
<p><code> </code></p>
<pre>{
  channel: 0,
  track:1,
  is_first_frame: 1,
  is_last_frame: 1,
  is_first_segment: 1,
  is_last_segment: 1
}</pre>
<p><strong>Segments</strong></p>
<p>Segments are like frames but instead of an arbitrary split on a data size, each segment is split on struct boundaries.  That is to say, when you receive a complete segment you can be sure that it can be fully parsed.  There are currently four segment types: A control segment, command segment, header segment and body segment.  Command messages are currently the only type that can contain a header and body segment. For instance, the transfer command is used to send messages to and from a queue.  It would contain header segments which could be used to route the entire message and it would contain a body segment which contains arbitrary data the user application cared about.  Each segment is broken up into at least one frame.  Multiple segments would never be sent in a single frame.</p>
<p><strong>Channel and Tracks</strong></p>
<p>A channel is just an integer that denotes related frames and segments.  One can think of each channel being a list of incoming frames which are ordered correctly.  Once the last frame in a channel is seen, the message is constructed and the channel is flushed and ready to receive a new message.  In this way, multiple messages can be received at the same time by utilizing different channels but only one message can be sent on a single channel at a time.</p>
<p>Tracks are an exception to the one message per channel rule.  There are two tracks in the current spec.  The control track (track 0) and the command track (track 1).  Controls preempt commands on a channel, so you can be in the middle of receiving frames on the command track and a control can come in on the control track and you must respond to that first.</p>
<p>This all sounds complicated but  you can just think of the channel/track combination as being one entry in an hash.  For instance frames coming into channel 0 and track 1 would be given the hash &#8220;0.1&#8243;:</p>
<p><code>message_channels["0.1"].add_frame(incoming)</code></p>
<p><strong>First pass &#8211; Frame dispatching</strong></p>
<p>At first it was easier to think of the frame and segment issues as different layers.  At the lowest layer I would decode and dispatch each frame and then pass it off to the segment layer once a complete segment had been decoded.  The segment layer would then collect the segments, relate them to each other, and then construct the full message.  The frame layer looked something like this:</p>
<div id="attachment_715" class="wp-caption aligncenter" style="width: 620px"><a href="http://www.j5live.com/wp-content/uploads/2010/01/frame_decoding_0.png"><img src="http://www.j5live.com/wp-content/uploads/2010/01/frame_decoding_0.png" alt="Flowchart showing the frame decoding layer of the kamaloka-js AMQP bindings" title="amqp frame decoding layer" width="610" height="819" class="size-full wp-image-715" /></a><p class="wp-caption-text">Flowchart showing the frame decoding layer of the kamaloka-js AMQP bindings</p></div>
<p>The dispatch would then pass it off to the segment decoder.</p>
<p>This became overly complicated because each segment had varying degrees of metadata and the body and header segments didn&#8217;t map to the message object very well.  I could have gone ahead and created a segment object but I wanted to simplify the code.</p>
<p><strong>Flattening the frame and segment layers</strong></p>
<p>As it turned out flattening the model only added a couple of more steps to the current frame layer.  Since frames and segments are just two different ways of breaking up a message for transfer over the wire, combining the two in the same layer made sense.  What I ended up with was this:</p>
<div id="attachment_717" class="wp-caption aligncenter" style="width: 631px"><a href="http://www.j5live.com/wp-content/uploads/2010/01/frame_decoding_1.png"><img src="http://www.j5live.com/wp-content/uploads/2010/01/frame_decoding_1.png" alt="Flowchart showing how the Kamaloka-js AMQP bindings decode frame and segments into a message" title="frame and segment decoding for the Kamaloka-js amqp bindings" width="621" height="971" class="size-full wp-image-717" /></a><p class="wp-caption-text">Flowchart showing how the Kamaloka-js AMQP bindings decode frame and segments into a message</p></div> 
<p>If you notice I now only create a new message if it is the first frame and first segment on a channel.  When I see it is the last frame I incrementally decode the segment but I only dispatch the message once the last segment is seen.  In the end, these minor adjustments allowed me to strip out a whole layer of redundant code.  It also simplified the low level event code as I used to have to manage callbacks for each segment in order to construct a message.  Now events only trigger once a full message is received and not  when each frame or segment is received.</p>
[read this post in: <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/27/flattening-the-model/&langpair=en%7Car">ar</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/27/flattening-the-model/&langpair=en%7Cde">de</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/27/flattening-the-model/&langpair=en%7Ces">es</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/27/flattening-the-model/&langpair=en%7Cfr">fr</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/27/flattening-the-model/&langpair=en%7Cit">it</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/27/flattening-the-model/&langpair=en%7Cja">ja</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/27/flattening-the-model/&langpair=en%7Cko">ko</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/27/flattening-the-model/&langpair=en%7Cpt">pt</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/27/flattening-the-model/&langpair=en%7Cru">ru</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2010/01/27/flattening-the-model/&langpair=en%7Czh-CN">zh-CN</a> ]]]></content:encoded>
			<wfw:commentRss>http://www.j5live.com/2010/01/27/flattening-the-model/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quick video using Jokosher, PiTiVi and my Canon digital camera</title>
		<link>http://www.j5live.com/2009/11/02/quick-video-using-jokosher-pitivi-and-my-canon-digital-camera/</link>
		<comments>http://www.j5live.com/2009/11/02/quick-video-using-jokosher-pitivi-and-my-canon-digital-camera/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 17:51:56 +0000</pubDate>
		<dc:creator>J5</dc:creator>
				<category><![CDATA[Open Formats]]></category>
		<category><![CDATA[celebration]]></category>
		<category><![CDATA[family]]></category>
		<category><![CDATA[music]]></category>
		<category><![CDATA[usability]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.j5live.com/?p=669</guid>
		<description><![CDATA[
    You will need &#8220;Firefox 3.5 to view this video or another browser that support the HTML 5 video tag and ogg theora video format.  I also wish planet would not filter out video tags!!!

Rome.ogv
This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 United States License
Above is a [...]]]></description>
			<content:encoded><![CDATA[<p><video id="rome_video" controls="true"><source  src="/wp-content/uploads/2009/11/rome.ogv" type="video/ogg" /><br />
    You will need <a href="getfirefox.com">&#8220;Firefox 3.5</a> to view this video or another browser that support the HTML 5 video tag and ogg theora video format.  I also wish planet would not filter out video tags!!!<br />
</video><br />
<a href="/wp-content/uploads/2009/11/rome.ogv">Rome.ogv</a><br />
<a rel="license" href="http://creativecommons.org/licenses/by-nc-nd/3.0/us/"><img alt="Creative Commons License" style="border-width:0" src="http://i.creativecommons.org/l/by-nc-nd/3.0/us/88x31.png" /></a><br />This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-nc-nd/3.0/us/">Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 United States License</a></p>
<p>Above is a song I was writing for my sister&#8217;s wedding.  Unfortunately I never finished it and logistics got in the way of me bringing a guitar to Italy (namely I didn&#8217;t want to lug a guitar all around Italy).  I thought I would record it using my Cannon PowerShot camera and edit it with <a href="http://jokosher.org">Jokosher</a> and <a href="http://pitivi.org">PiTiVi</a> to see how far our tools have gone.</p>
<p>I have to say it was fairly easy but I still ran into issues.  As far as UI Goes PiTiVi is much easier to use than Jokosher in terms of organizing what I wanted to do.  I really only needed Jokosher to tweak the sound a bit but it was still a bit of trial and error to get something decent.  I used the high and low pass filters to filter out background noise and echo from my room.  Jokosher lacks a basic noise filter effect which can be implemented manually in most other editors by taking a sample of the ambient noise and phase shifting it 180 degrees so the ambient noise is canceled out.  Unfortunately the solid bar UI which departs from the usual wave graph makes it impossible to do this by hand.  In any case the low and high pass filters worked fairly well to get the most annoying twangs and hisses out.  </p>
<p>Another issue is not being able to mark cutin and cutout points and have PiTiVi sync the video with these point.  I essentially had to do minimal processing in Jokosher so I could easily sync the video to the edited sound in PiTiVi.  It would have been nice to trim the audio in Jokosher and when I imported it into PiTiVi, had it sync up to the correct points in the video.  Manually doing that in PiTiVi is hard because of the timeline scale and the fact that it is exclusively drag and drop.  It would be nice to be able to enter exact values or load markup metadata so I could snap to my cuts.  Once the audio is in PiTiVi we are stuck with PiTiVi&#8217;s audio tools which will never be as complete as Jokosher&#8217;s (assuming Jokosher gets some development love).  It would be nice to be able to jump back and forth between the two.</p>
<p>All that being said, once I planned out what I wanted to do it took no time at all to do it for a video as simple as this.  It might not be all roses and honey yet but it is much better than it has been.  The next step is to start multi-tracking in Jokosher and syncing it to a video.  We shall see.</p>
[read this post in: <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/11/02/quick-video-using-jokosher-pitivi-and-my-canon-digital-camera/&langpair=en%7Car">ar</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/11/02/quick-video-using-jokosher-pitivi-and-my-canon-digital-camera/&langpair=en%7Cde">de</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/11/02/quick-video-using-jokosher-pitivi-and-my-canon-digital-camera/&langpair=en%7Ces">es</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/11/02/quick-video-using-jokosher-pitivi-and-my-canon-digital-camera/&langpair=en%7Cfr">fr</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/11/02/quick-video-using-jokosher-pitivi-and-my-canon-digital-camera/&langpair=en%7Cit">it</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/11/02/quick-video-using-jokosher-pitivi-and-my-canon-digital-camera/&langpair=en%7Cja">ja</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/11/02/quick-video-using-jokosher-pitivi-and-my-canon-digital-camera/&langpair=en%7Cko">ko</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/11/02/quick-video-using-jokosher-pitivi-and-my-canon-digital-camera/&langpair=en%7Cpt">pt</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/11/02/quick-video-using-jokosher-pitivi-and-my-canon-digital-camera/&langpair=en%7Cru">ru</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/11/02/quick-video-using-jokosher-pitivi-and-my-canon-digital-camera/&langpair=en%7Czh-CN">zh-CN</a> ]]]></content:encoded>
			<wfw:commentRss>http://www.j5live.com/2009/11/02/quick-video-using-jokosher-pitivi-and-my-canon-digital-camera/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>kamaloka-js-0.1.0 AMQP bindings released</title>
		<link>http://www.j5live.com/2009/09/23/kamaloka-js-0-1-0-amqp-bindings-released/</link>
		<comments>http://www.j5live.com/2009/09/23/kamaloka-js-0-1-0-amqp-bindings-released/#comments</comments>
		<pubDate>Wed, 23 Sep 2009 21:38:04 +0000</pubDate>
		<dc:creator>J5</dc:creator>
				<category><![CDATA[AMQP]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Open Formats]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[messaging]]></category>
		<category><![CDATA[webapps]]></category>

		<guid isPermaLink="false">http://www.j5live.com/?p=657</guid>
		<description><![CDATA[I am proud to announce version 0.1.0 of the kamaloka-js AMQP bindings.  This initial release is considered to be an alpha quality release.  It is there for you to break and give feedback so we can continue to improve the bindings and eventually get them to the point where they can be used [...]]]></description>
			<content:encoded><![CDATA[<p>I am proud to announce version 0.1.0 of the <a href="https://fedorahosted.org/kamaloka-js/">kamaloka-js AMQP bindings</a>.  This initial release is considered to be an alpha quality release.  It is there for you to break and give feedback so we can continue to improve the bindings and eventually get them to the point where they can be used to run mission critical applications.</p>
<p>In the next few days I will be concentrating on documenting the design of the bindings so anyone who wants to can easily jump in and contribute patches as well as suggestions.  Please visit the <a href="https://fedorahosted.org/kamaloka-js">project page</a> to find out more and see how you can help out.</p>
<p><strong>What&#8217;s in store for the future?</strong></p>
<ul>
<li>High level bindings for each of the major AMQP client patterns to get developers up and running with AMQP in the browser fast</li>
<li> QMF bindings for working with the QMF management console</li>
</ul>
<p>Where can I find this release?</p>
<ul>
<li> <a href="https://fedorahosted.org/kamaloka-js/attachment/wiki/releases/kamaloka-js-0.1.0.tar.bz2?format=raw">kamaloka-js-0.1.0.tar.bz2</a> (<a href="https://fedorahosted.org/kamaloka-js/attachment/wiki/releases/kamaloka-js-0.1.0.tar.bz2.sha1?format=txt">sha1</a>)</li>
<li><a href="https://fedorahosted.org/kamaloka-js/attachment/wiki/releases/kamaloka-js-0.1.0.zip?format=raw">kamaloka-js-0.1.0.zip</a> (<a href="https://fedorahosted.org/kamaloka-js/attachment/wiki/releases/kamaloka-js-0.1.0.zip.sha1?format=txt">sha1</a>)</li>
</ul>
<p><strong>What&#8217;s in this release?</strong></p>
<ul>
<li>Initial release</li>
<li>Connection handshaking works</li>
<li>AMQP lowlevel bindings for version 0.10 of the AMQP Protocol mostly complete</li>
<li>Higher level bindings implementing the publisher/subscriber pattern is ready for use</li>
</ul>
<p>How can I find out more?</p>
<ul>
<li><a href="https://fedorahosted.org/kamaloka-js">Project page: https://fedorahosted.org/kamaloka-js</a></li>
<li><a href="https://fedorahosted.org/kamaloka-js/wiki/Faq">FAQ: https://fedorahosted.org/kamaloka-js/wiki/Faq</a></li>
<li><a href="https://fedorahosted.org/mailman/listinfo/kamaloka-js-devel">Mailing list: https://fedorahosted.org/mailman/listinfo/kamaloka-js-devel</a></li>
</ul>
<p>Kamaloka-js is an implementation of the AMQP messaging protocol (http://amqp.org/) in native JavaScript released under the MIT license. It is setup to be used with Orbited (http://orbited.org/) but can be used with any library which produce TCPSockets in the browser similar to Orbited. Kamaloka bindings are generated from qpid XML protocol description files. </p>
[read this post in: <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/23/kamaloka-js-0-1-0-amqp-bindings-released/&langpair=en%7Car">ar</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/23/kamaloka-js-0-1-0-amqp-bindings-released/&langpair=en%7Cde">de</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/23/kamaloka-js-0-1-0-amqp-bindings-released/&langpair=en%7Ces">es</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/23/kamaloka-js-0-1-0-amqp-bindings-released/&langpair=en%7Cfr">fr</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/23/kamaloka-js-0-1-0-amqp-bindings-released/&langpair=en%7Cit">it</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/23/kamaloka-js-0-1-0-amqp-bindings-released/&langpair=en%7Cja">ja</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/23/kamaloka-js-0-1-0-amqp-bindings-released/&langpair=en%7Cko">ko</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/23/kamaloka-js-0-1-0-amqp-bindings-released/&langpair=en%7Cpt">pt</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/23/kamaloka-js-0-1-0-amqp-bindings-released/&langpair=en%7Cru">ru</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/23/kamaloka-js-0-1-0-amqp-bindings-released/&langpair=en%7Czh-CN">zh-CN</a> ]]]></content:encoded>
			<wfw:commentRss>http://www.j5live.com/2009/09/23/kamaloka-js-0-1-0-amqp-bindings-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>kamaloka-js AMQP bindings in four browser engines</title>
		<link>http://www.j5live.com/2009/09/14/kamaloka-js-amqp-bindings-in-four-browser-engines/</link>
		<comments>http://www.j5live.com/2009/09/14/kamaloka-js-amqp-bindings-in-four-browser-engines/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 19:44:45 +0000</pubDate>
		<dc:creator>J5</dc:creator>
				<category><![CDATA[Open Formats]]></category>
		<category><![CDATA[messaging]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[webapps]]></category>

		<guid isPermaLink="false">http://www.j5live.com/?p=651</guid>
		<description><![CDATA[While I am developing on Firefox today I tested and fixed some issues under Chromium (webkit based), Opera (opera based) and Konquorer (khtml based).  My pub/sub demo worked the same in all four browsers (and at the same time I might add).  We tried with IE8 on Luke&#8217;s machine but the error messages [...]]]></description>
			<content:encoded><![CDATA[<p>While I am developing on Firefox today I tested and fixed some issues under Chromium (webkit based), Opera (opera based) and Konquorer (khtml based).  My pub/sub demo worked the same in all four browsers (and at the same time I might add).  We tried with IE8 on Luke&#8217;s machine but the error messages were cryptic.  I&#8217;ll have to get my hands on a windows box at some point but I&#8217;m guessing the biggest issues are going to be trailing commas or keywords which are similar in the amqp spec and javascript (e.g. I ran into void and class keyword issues with the webkit browsers).</p>
<p>One thing to note is Chromium&#8217;s integrated debugger is a lot faster than Firebug.  I haven&#8217;t used it extensively but if it can break at breakpoints and introspect objects without getting screwy I might end up switching.  I really like firebug but lately it has become dog slow.  It usually takes a couple of minutes of waiting for each frame of data to be processed and displayed while under Chromium with their debugger on, the slowdown is noticeable but not significant compared to when the debugger is off.  </p>
<p><strong>UPDATE: Chromium&#8217;s debugger is probably faster because it doesn&#8217;t actually do anything that I can see.  It displays scripts but doesn&#8217;t actually break into the code</strong></p>
[read this post in: <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/14/kamaloka-js-amqp-bindings-in-four-browser-engines/&langpair=en%7Car">ar</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/14/kamaloka-js-amqp-bindings-in-four-browser-engines/&langpair=en%7Cde">de</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/14/kamaloka-js-amqp-bindings-in-four-browser-engines/&langpair=en%7Ces">es</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/14/kamaloka-js-amqp-bindings-in-four-browser-engines/&langpair=en%7Cfr">fr</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/14/kamaloka-js-amqp-bindings-in-four-browser-engines/&langpair=en%7Cit">it</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/14/kamaloka-js-amqp-bindings-in-four-browser-engines/&langpair=en%7Cja">ja</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/14/kamaloka-js-amqp-bindings-in-four-browser-engines/&langpair=en%7Cko">ko</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/14/kamaloka-js-amqp-bindings-in-four-browser-engines/&langpair=en%7Cpt">pt</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/14/kamaloka-js-amqp-bindings-in-four-browser-engines/&langpair=en%7Cru">ru</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/09/14/kamaloka-js-amqp-bindings-in-four-browser-engines/&langpair=en%7Czh-CN">zh-CN</a> ]]]></content:encoded>
			<wfw:commentRss>http://www.j5live.com/2009/09/14/kamaloka-js-amqp-bindings-in-four-browser-engines/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Home is where the heart is</title>
		<link>http://www.j5live.com/2009/08/26/home-is-where-the-heart-is/</link>
		<comments>http://www.j5live.com/2009/08/26/home-is-where-the-heart-is/#comments</comments>
		<pubDate>Thu, 27 Aug 2009 01:59:24 +0000</pubDate>
		<dc:creator>J5</dc:creator>
				<category><![CDATA[Open Formats]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[messaging]]></category>
		<category><![CDATA[tubes]]></category>
		<category><![CDATA[webapps]]></category>

		<guid isPermaLink="false">http://www.j5live.com/?p=626</guid>
		<description><![CDATA[I managed to make it home in one piece from Vegas and dove right back into work.  After getting away from messaging for a bit I have come full circle but with a little bit of a twist.  In an effort to bring some of the goodness that is interprocess messaging to the [...]]]></description>
			<content:encoded><![CDATA[<p>I managed to make it home in one piece from Vegas and dove right back into work.  After getting away from messaging for a bit I have come full circle but with a little bit of a twist.  In an effort to bring some of the goodness that is interprocess messaging to the interwebs &#8211; similar to what we get on the desktop with D-Bus &#8211; I am implementing the <a href="http://jira.amqp.org/confluence/display/AMQP/Advanced+Message+Queuing+Protocol">standard AMQP protocol</a> in native JavaScript.  </p>
<p>This along with <a href="http://qpid.apache.org/qmf-protocol.html">QMF</a> will give us the ability to send out notifications of events, monitor statistics and eventually supplement REST and XML-RPC interfaces with more efficient multi-response method calling (imagine streaming rows of data instead of waiting for the entire row set to be sent).</p>
<div id="attachment_627" class="wp-caption alignnone" style="width: 774px"><img src="http://www.j5live.com/wp-content/uploads/2009/08/orbited_test1.png" alt="AMQP Handshake over Orbited" title="Test of AMQP over Orbited" width="764" height="370" class="size-full wp-image-627" /><p class="wp-caption-text">AMQP Handshake over Orbited</p></div>
<p>Above is a little hex dump web app I wrote to test the bindings.  What you see is the start of the AMQP handshake.   First I send the header indicating the version of the protocol I am expecting.  I then get the &#8217;start&#8217; response back stating the capabilities of the broker I have connected to.  I then send the &#8217;start-ok&#8217; packet indicating what auth mechanisms I support and the locale (I would also send a token if I were using a particular auth other than anonymous). </p>
<p>That is about as far as I have gotten but since the bindings are autogenerated from an XML description of the protocol most of the control and command classes are implemented.  There are still some types I am trying to figure out how to support (the supported types are a magnitude above what was needed for D-Bus) and I need to smooth out the rough edges as well as write the higher level user bindings but I am off to a good start.</p>
<p>Code will be posted as soon as the project resources are approved and setup.  Keep watching my blog for updates.</p>
<p><strong>BTW</strong>: The slow response times in the time stamps are due to running inside of the firebug debugger and writing out the hex dumps on the fly using JQuery.  It seems the more sophisticated JQuery and Firebug get, the more they butt heads. </p>
[read this post in: <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/08/26/home-is-where-the-heart-is/&langpair=en%7Car">ar</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/08/26/home-is-where-the-heart-is/&langpair=en%7Cde">de</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/08/26/home-is-where-the-heart-is/&langpair=en%7Ces">es</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/08/26/home-is-where-the-heart-is/&langpair=en%7Cfr">fr</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/08/26/home-is-where-the-heart-is/&langpair=en%7Cit">it</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/08/26/home-is-where-the-heart-is/&langpair=en%7Cja">ja</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/08/26/home-is-where-the-heart-is/&langpair=en%7Cko">ko</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/08/26/home-is-where-the-heart-is/&langpair=en%7Cpt">pt</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/08/26/home-is-where-the-heart-is/&langpair=en%7Cru">ru</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/08/26/home-is-where-the-heart-is/&langpair=en%7Czh-CN">zh-CN</a> ]]]></content:encoded>
			<wfw:commentRss>http://www.j5live.com/2009/08/26/home-is-where-the-heart-is/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Open Video Conference an Amazing Step Forward</title>
		<link>http://www.j5live.com/2009/06/22/open-video-conference-an-amazing-step-forward/</link>
		<comments>http://www.j5live.com/2009/06/22/open-video-conference-an-amazing-step-forward/#comments</comments>
		<pubDate>Mon, 22 Jun 2009 14:35:57 +0000</pubDate>
		<dc:creator>J5</dc:creator>
				<category><![CDATA[Gnome]]></category>
		<category><![CDATA[Open Formats]]></category>
		<category><![CDATA[Politics]]></category>
		<category><![CDATA[community]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[movies]]></category>
		<category><![CDATA[video]]></category>
		<category><![CDATA[weekend]]></category>
		<category><![CDATA[OVC]]></category>

		<guid isPermaLink="false">http://www.j5live.com/?p=603</guid>
		<description><![CDATA[The Open Video Conference just ended yesterday.  I attended the first two days and just stopped in briefly during the hack-fests yesterday before having brunch with some old highschool friends and heading back to my parents house where my dog and car were stashed.
I can say without a doubt the turnout was amazing and [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://openvideoconference.org">Open Video Conference</a> just ended yesterday.  I attended the first two days and just stopped in briefly during the hack-fests yesterday before having brunch with some old highschool friends and heading back to my parents house where my dog and car were stashed.</p>
<p>I can say without a doubt the turnout was amazing and even though not everything I heard all weekend was positive it was a giant leap forward in then understanding of the importance of Open Video and culture.  I won&#8217;t put a figure on how many people attended but some of the upstairs talks were standing room only and after the first day some of the organizers were lamenting that then needed to get bigger rooms (consequently some of the talks were swapped the next day).  Speaking about the organizers, they ran an incredibly smooth ship and should be thanked and praised for their efforts.</p>
<p><H3>The Good</H3></p>
<h4>Apps</h4>
<p>I was mainly there looking to see what video producers wanted from FOSS application developers and to support the <a href="http://pitivi.org">PiTiVi</a>/<a href="http://gstreamer.freedesktop.org">GStreamer</a> teams on behalf of the GNOME Foundation.  It is amazing to see the PiTiVi non-linear video editing app at such a usable state.  While <a href="http://blogs.gnome.org/edwardrv/">Edward Hervey (bilboed on irc)</a> gave his mini presentation on PiTiVi I was busy hacking up a &#8220;How To Make Chocolate Truffles&#8221; video from pictures and clips I had laying around.  </p>
<p>Afterwards I showed him some of the bugs I encountered in the 0.13.1 release and he just rattled off, fixed in git, fixed in git, fixed in git&#8230;etc.  Sadly the releases are tied to GStreamer releases (which is a good thing from a development/bugs standpoint but not so good from a user standpoint given the early stages of PiTiVi) so we won&#8217;t see an official release soon.  I plan on trying to automate a Fedora Repository at some point just to be able to view the progress without breaking my system.  </p>
<p>The point is PiTiVi is about 90% there (and perhaps 100% in git) to be able to support my needs for basic video editing in terms of stability and basic tools.  That should be pretty reflective of those who need to do things like screen casting and interview style video blogs.  Some advanced features like effects (look at <a href="http://projects.gnome.org/cheese/">Cheese</a> for some examples of this already working in an app) already exist in GStreamer and just need to be integrated in PiTiVi&#8217;s UI and rendering pipeline.</p>
<p>There was also a show of <a href="http://heroinewarrior.com/cinelerra.php">Cinelarra</a> but more interesting is the GTK+ fork <a href="http://lumiera.org/">Lumiera</a> which unfortunately is not usable yet but the direction they are going in (GTK+ interface and some GStreamer integration) looks like a great re-start in the case of pro level editing tools.</p>
<p>Also of interest in the pro level space was <a href="http://www.blender.org/">Blender</a> which seems to be the pro project with the most momentum and features for pro&#8217;s.  At least that was the initial reaction from some on the Red Hat media team.  The dev&#8217;s did admit that the functionality is limited to what they needed during production of <a href="http://www.bigbuckbunny.org/">Big Buck Bunny</a> (and other productions currently in the queue) but that in those areas it is rock solid.  It is interesting to see a UI designed with different usability profiles.  For instance one of Blender&#8217;s usability criteria is the avoidance of <a href="http://en.wikipedia.org/wiki/Repetitive_strain_injury">repetitive strain injury</a>.  To combat RSI mouse clicks are evenly divided between left and right mouse clicks.</p>
<p><a href="http://orange.blender.org/bassam-kurdali/">Bassam Kurdali</a>, one of the Blender developers and animators, came up to me later in the conference and said he had noticed me using PiTiVi to edit my video.  He was impressed at the simplicity and slickness of the interface and how far along it is.  There is plenty of room for different approaches and a real potential for cross pollination between the pro tools and the every day end user tools.</p>
<h4>What Content Producers Want</h4>
<p>Speaking of end users we got to hear from a bunch of them who let us know how we could support them.  One of the biggest themes was that Windows tools suck and those who taught others couldn&#8217;t just tell them to go out and buy a mac (praises were heaped on iMovie and Final Cut Pro).  They really want an easy to use tool, with the unfortunate note that it would have to run on Windows.  One really good thing is that a lot of the non-tech content producers understood the need for free codecs.  However in the end they just want a simple way to render down to DVD, You Tube, Daily Motion, iPhone, etc. and don&#8217;t want to deal with formats.</p>
<p>I ended up collecting a bunch of buisness cards and am toying with the idea of starting a feedback group with content producers which would get them involved in improving GNOME App usability from the perspective of those who are not yet familiar with the GNOME workflow.  If we are serious about expanding our reach we need to go beyond our current self selecting internal feedback loops.  The goal wouldn&#8217;t be to get these people using GNOME (though giving them a way through the apps wouldn&#8217;t be a bad thing).  It would be more about getting groups outside of GNOME/Linux to be part of the process of improving GNOME.  Will it be fruitful?  I don&#8217;t know but it is an interesting experiment with a potential huge payoff for a little bit of effort.</p>
<h4>Sita Sings the Blues</h4>
<p>This good section wouldn&#8217;t be complete without the mention of <a href="http://www.sitasingstheblues.com/">Sita Sings the Blues</a> by Nina Paley which is a feature length (82 minutes) animated film released under the <a href="http://creativecommons.org/licenses/by-sa/3.0/us/">Creative Commons Attribution-Share Alike 3.0 United States License</a>.  You have complete rights to watch, screen, remix and redistribute the film as long as you abide by the license.  I do suggest you watch it and if you like it buy the DVD or simply donate to encourage more works like this (I bought the DVD for $20).  Not only is Nina a content producer but she is heavily involved in advocating her distribution methods, going as far as documenting the process that went into releasing Sita under a creative commons license and in her work with <a href="http://questioncopyright.org/">QuestionCopyright.org</a>.</p>
<h4>Mozilla and the Open Video Contest</h4>
<p>I was very impressed with Mozilla&#8217;s involvement and their push for Ogg Theora to become a base line codec for the HTML 5 video tag.  They are also helping launch the upcoming <a href="http://openvideoconference.org/2009/06/upcoming-open-video-contest-win-a-trip-to-sxsw-2010/">Open Video Contest</a> which would see the winner flown to the 2010 <a href="http://sxsw.com/">South by Southwest conference</a>.  We should probably run some sort of sister contest to encourage GNOME users to submit entries.</p>
<p><H3>The Bad</H3></p>
<p>It wasn&#8217;t all roses. While I feel we are reaching independent content producers way more than I would have though at this point, some of the big companies still don&#8217;t get it or are afraid of Open Video implications.</p>
<p><H4>Adobe</H4></p>
<p>It must be said that Adobe has been somewhat good at working with the community over long periods of time but that they just never get around to resolving key issues.  What really surprised me was when on one of the industry round tables the Adobe representative pointed to their release of the Flash documentation as a shining example of this relationship.  After checking with a developer of an alternative flash implementation I was told those documents are pretty much useless.  Due to bugs, some of the spec just doesn&#8217;t work as written and other issues makes it impossible to write a third party Flash player. </p>
<p><H4>YouTube/Google</H4></p>
<p>While reportedly Chrome will ship with Ogg Theora support their flagship video site YouTube seems afraid to do so.  Their rep at the round table stated some pretty audacious things such as continuing the myth that Theora wasn&#8217;t good enough when clearly that <a href="http://people.xiph.org/~greg/video/ytcompare/comparison.html">argument was directly debunked</a> (the side by side comparisons were even playing on HDTV&#8217;s at the conference).</p>
<p>Even more of an issue was the representative&#8217;s idea on what Open Video meant.  He declared that they would love to support Open Video but that it meant letting anybody do whatever they wanted and that doesn&#8217;t work from a buisness perspective.</p>
<p>Open Video isn&#8217;t about wild west, trample on rights.  If anything it is about balancing the rights of content producers, end users and fair use.  From what I read, YouTube&#8217;s position is that they are the 1000 pound gorilla in video distribution and at the end of the day they only believe in a user&#8217;s and content producer&#8217;s freedoms if it is walled behind their own servers.  &#8220;All the world&#8217;s video&#8221; indeed.</p>
<p>The solution there is to drive traffic to sites like <a href="http://www.dailymotion.com/">Daily Motion</a> and <a href="http://blip.tv/">Blip.tv</a> which understand the issues involved.</p>
<p><H3>Conclusion</H3></p>
<p>Nothing is perfect, but we are off to a really good start.  In the end it is up to us to keep the momentum going and eventually produce a better experience within the complete Open Video stack, from content production to delivery.  The web was built and exploded around the concept of open technology. Let&#8217;s continue to make sure this is the case going forward.  The last thing we want is the web to become the domain of a few, with creativity being stifled by restrictions in the non-open parts of the stack. </p>
[read this post in: <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/06/22/open-video-conference-an-amazing-step-forward/&langpair=en%7Car">ar</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/06/22/open-video-conference-an-amazing-step-forward/&langpair=en%7Cde">de</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/06/22/open-video-conference-an-amazing-step-forward/&langpair=en%7Ces">es</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/06/22/open-video-conference-an-amazing-step-forward/&langpair=en%7Cfr">fr</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/06/22/open-video-conference-an-amazing-step-forward/&langpair=en%7Cit">it</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/06/22/open-video-conference-an-amazing-step-forward/&langpair=en%7Cja">ja</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/06/22/open-video-conference-an-amazing-step-forward/&langpair=en%7Cko">ko</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/06/22/open-video-conference-an-amazing-step-forward/&langpair=en%7Cpt">pt</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/06/22/open-video-conference-an-amazing-step-forward/&langpair=en%7Cru">ru</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/06/22/open-video-conference-an-amazing-step-forward/&langpair=en%7Czh-CN">zh-CN</a> ]]]></content:encoded>
			<wfw:commentRss>http://www.j5live.com/2009/06/22/open-video-conference-an-amazing-step-forward/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Open Video Conference</title>
		<link>http://www.j5live.com/2009/05/29/open-video-conference/</link>
		<comments>http://www.j5live.com/2009/05/29/open-video-conference/#comments</comments>
		<pubDate>Fri, 29 May 2009 17:20:39 +0000</pubDate>
		<dc:creator>J5</dc:creator>
				<category><![CDATA[Gnome]]></category>
		<category><![CDATA[Open Formats]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[community]]></category>
		<category><![CDATA[conference]]></category>

		<guid isPermaLink="false">http://www.j5live.com/?p=589</guid>
		<description><![CDATA[As a culmination of all the positive momentum that has been going on the past few years all the important Open Video players will be gathering at NYU&#8217;s law center for the first of hopefully many Open Video Conferences on June 19th.  
The interesting part of this conference is it isn&#8217;t exclusively a tech [...]]]></description>
			<content:encoded><![CDATA[<p>As a culmination of all the positive momentum that has been going on the past few years all the important Open Video players will be gathering at NYU&#8217;s law center for the first of hopefully many <a href="http://openvideoconference.org">Open Video Conferences</a> on June 19th.  </p>
<p>The interesting part of this conference is it isn&#8217;t exclusively a tech conference.   According to their website:</p>
<blockquote><p>
Open Video is a broad-based movement of video creators, technologists, academics, filmmakers, entrepreneurs, activists, remixers, and many others. When most folks think of “open,” they think of open source and open codecs. They’re right—but there’s much more to Open Video. Open Video is the growing movement for transparency, interoperability, and further decentralization in online video. These qualities provide more fertile ground for independent producers, bottom-up innovation, and greater protection for free speech online.
</p></blockquote>
<p>If we have any hopes of success in bringing the general public an understanding of our views on the importance of openness and freedom, forming a larger community with like minded content creators is the next logical step and another piece of the puzzle.</p>
<p>I will be attending the conference as a representative for <a href="http://gnome.org">GNOME</a>. <a href="http://openvideoconference.org/registration/"> Others should consider registering</a> and attending to represent their own media minded project.  I hope to see you there. </p>
[read this post in: <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/05/29/open-video-conference/&langpair=en%7Car">ar</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/05/29/open-video-conference/&langpair=en%7Cde">de</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/05/29/open-video-conference/&langpair=en%7Ces">es</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/05/29/open-video-conference/&langpair=en%7Cfr">fr</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/05/29/open-video-conference/&langpair=en%7Cit">it</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/05/29/open-video-conference/&langpair=en%7Cja">ja</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/05/29/open-video-conference/&langpair=en%7Cko">ko</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/05/29/open-video-conference/&langpair=en%7Cpt">pt</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/05/29/open-video-conference/&langpair=en%7Cru">ru</a> <a href="http://translate.google.com/translate?u=http://www.j5live.com/2009/05/29/open-video-conference/&langpair=en%7Czh-CN">zh-CN</a> ]]]></content:encoded>
			<wfw:commentRss>http://www.j5live.com/2009/05/29/open-video-conference/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

