<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://www.jbkempf.com/blog/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>Yet another blog for JBKempf</title>
  <link>http://www.jbkempf.com/blog/</link>
  <atom:link href="http://www.jbkempf.com/blog/feed/rss2" rel="self" type="application/rss+xml"/>
  <description>This is the blog of Jean-Baptiste Kempf. I will share some info about my life, my works and my VideoLAN work</description>
  <language>en</language>
  <pubDate>Sat, 04 May 2013 20:23:13 +0200</pubDate>
  <copyright></copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>New report about the WinRT port</title>
    <link>http://www.jbkempf.com/blog/post/2013/New-report-about-the-WinRT-port</link>
    <guid isPermaLink="false">urn:md5:85a80aa736a1425774a5b950ce5fd8bd</guid>
    <pubDate>Tue, 02 Apr 2013 17:33:00 +0200</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>2.1.x</category><category>Metro</category><category>VideoLAN</category><category>VLC</category><category>VLC media player</category><category>WinRT</category>    
    <description>    &lt;h2&gt;News and Excuses&lt;/h2&gt;


&lt;p&gt;I must start this post by sharing some excuses of not doing enough updates lately.&lt;/p&gt;


&lt;p&gt;The main reason is that we've been mostly under-water with the current development, that took most of our time.&lt;/p&gt;


&lt;h3&gt;News and report&lt;/h3&gt;

&lt;p&gt;The good news is that we have had tremendous progress...&lt;/p&gt;


&lt;p&gt;The bad is that we have still a bit of work to do before sharing it on the store, as I will explain soon.&lt;/p&gt;


&lt;h2&gt;Pictures&lt;/h2&gt;

&lt;p&gt;But first, the current pictures:&lt;/p&gt;


&lt;h3&gt;Current start screen&lt;/h3&gt;

&lt;p&gt;&lt;a href=&quot;http://www.jbkempf.com/blog/public/VideoLAN/Metro/Metro1.png&quot; title=&quot;Metro Start Screen&quot;&gt;&lt;img src=&quot;http://www.jbkempf.com/blog/public/VideoLAN/Metro/.Metro1_m.jpg&quot; alt=&quot;Metro Start Screen&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;Metro Start Screen, Mar 2013&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://www.jbkempf.com/blog/public/VideoLAN/Metro/Metro4.jpg&quot; title=&quot;Metro Main Screen&quot;&gt;&lt;img src=&quot;http://www.jbkempf.com/blog/public/VideoLAN/Metro/.Metro4_m.jpg&quot; alt=&quot;Metro Main Screen&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;Metro Main Screen, Mar 2013&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;h3&gt;Fully working playback&lt;/h3&gt;

&lt;p&gt;&lt;a href=&quot;http://www.jbkempf.com/blog/public/VideoLAN/Metro/Metro2.jpg&quot; title=&quot;Metro Playback&quot;&gt;&lt;img src=&quot;http://www.jbkempf.com/blog/public/VideoLAN/Metro/.Metro2_m.jpg&quot; alt=&quot;Metro Playback&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;Metro Playback, Mar 2013&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://www.jbkempf.com/blog/public/VideoLAN/Metro/Metro3.jpg&quot; title=&quot;Metro Playback 2&quot;&gt;&lt;img src=&quot;http://www.jbkempf.com/blog/public/VideoLAN/Metro/.Metro3_m.jpg&quot; alt=&quot;Metro Playback 2&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;Metro Playback 2, Mar 2013&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;Technical update&lt;/h2&gt;


&lt;p&gt;If you followed closely, our main work, in addition to the UI, was to fight and replace the forbidden symbols not allowed on Windows App Store mode.&lt;/p&gt;


&lt;p&gt;We've been quite efficient at that, working closely with &lt;a href=&quot;http://mingw-w64.sourceforge.net/&quot; hreflang=&quot;en&quot; title=&quot;MIngw-w64&quot;&gt;Mingw-w64 project&lt;/a&gt; and &lt;a href=&quot;http://gcc.gnu.org&quot;&gt;GCC&lt;/a&gt; developers.&lt;/p&gt;


&lt;p&gt;The biggest result is that we have now cut down &lt;strong&gt;90%&lt;/strong&gt; of our symbols, that are &lt;strong&gt;forbidden&lt;/strong&gt; on Metro Mode.&lt;/p&gt;


&lt;p&gt;We mostly did this by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;replacing our forbidden calls with newer authorized equivalent calls,&lt;/li&gt;
&lt;li&gt;modifying gcc and Mingw-w64,&lt;/li&gt;
&lt;li&gt;writing new code in a special library of ours,&lt;/li&gt;
&lt;li&gt;writing dummy functions,&lt;/li&gt;
&lt;li&gt;disabling VLC code that would not work on the Metro  platform,&lt;/li&gt;
&lt;li&gt;moving VLC to MSVCRT 11.0,&lt;/li&gt;
&lt;li&gt;moving all the VLC codebase to UNICODE and WideChars to fit the new requirements.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We did also a lot of minor things to help the integration of libVLC and VLC in this modern platform.&lt;/p&gt;


&lt;h2&gt;What are we working on now:&lt;/h2&gt;

&lt;p&gt;We are now mainly working on 2 things:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;make VLC work with MSVCRT 11.0 without crashing &lt;img src=&quot;/blog/themes/jbkempf/smilies/wink.png&quot; alt=&quot;;)&quot; class=&quot;smiley&quot; /&gt;&lt;/li&gt;
&lt;li&gt;write headers and C/C++ code to access the new fashion of COM APIs in which WinRT is written in.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What we are gonna work just after:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ARM, ARM, ARM,&lt;/li&gt;
&lt;li&gt;WP8&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Goodies&lt;/h2&gt;


&lt;p&gt;They are gonna get shipped soon &lt;img src=&quot;/blog/themes/jbkempf/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Over 25000!</title>
    <link>http://www.jbkempf.com/blog/post/2013/Over-25000</link>
    <guid isPermaLink="false">urn:md5:0ed8bd8698ac7ed46193a72dddc44d8e</guid>
    <pubDate>Wed, 13 Feb 2013 17:22:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>VideoLAN</category>    
    <description>    &lt;p&gt;After my &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/Over-20000&quot;&gt;20000 mark&lt;/a&gt;, I have now over 25,000 posts on the &lt;a href=&quot;http://forum.videolan.org&quot; hreflang=&quot;en&quot; title=&quot;VideoLAN Forum&quot;&gt;Videolan Forums&lt;/a&gt;...&lt;/p&gt;


&lt;p&gt;You can check &lt;a href=&quot;https://forum.videolan.org/memberlist.php?mode=viewprofile&amp;amp;u=6753&quot; hreflang=&quot;en&quot; title=&quot;my profile&quot;&gt;my profile&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Of course, I am getting closer to  &lt;a href=&quot;http://forum.videolan.org/memberlist.php?mode=viewprofile&amp;amp;u=16095&quot; hreflang=&quot;VLC_help&quot;&gt;VLC_help&lt;/a&gt;, who is at 25,600+ posts... And the total number of post is above 32000.&lt;/p&gt;


&lt;p&gt;The usual amount of trolls, aggressions and misunderstanding are still present, because most people still do not understand the concepts of &lt;strong&gt;volunteer&lt;/strong&gt;, &lt;strong&gt;open source&lt;/strong&gt; and &lt;strong&gt;free&lt;/strong&gt;. But well, haters gonna hate.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Technical update on the WinRT port</title>
    <link>http://www.jbkempf.com/blog/post/2013/Technical-update-on-the-WinRT-port</link>
    <guid isPermaLink="false">urn:md5:044e2672666451344b1815f581aa328a</guid>
    <pubDate>Tue, 12 Feb 2013 10:37:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>Microsoft</category><category>VideoLAN</category><category>VLC</category><category>Windows</category><category>WinRT</category>    
    <description>    &lt;h2&gt;Status&lt;/h2&gt;

&lt;p&gt;So, a few weeks have passed, and I have not spoken a lot about the port on WinRT/Metro/Windows RT/WP8.&lt;/p&gt;


&lt;p&gt;Of course, some of you will complain, but the main reason for that, is that I've been very busy on VLC &lt;img src=&quot;/blog/themes/jbkempf/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;


&lt;p&gt;So here is what we did &lt;img src=&quot;/blog/themes/jbkempf/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;


&lt;h2&gt;VLC engine&lt;/h2&gt;

&lt;p&gt;The biggest part of the work resides in the port of the VLC engine to a WinRT compatible runtime.&lt;/p&gt;


&lt;p&gt;A lot of the work we've done so far has been on that.&lt;/p&gt;


&lt;p&gt;More specifically, we have:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ported VLC APIs call to UNICODE (wide chars),&lt;/li&gt;
&lt;li&gt;allowed VLC to be compiled for Windows 8 API targets,&lt;/li&gt;
&lt;li&gt;upgraded some VLC Win32 API calls,&lt;/li&gt;
&lt;li&gt;removed some code-path when compiling for WinRT,&lt;/li&gt;
&lt;li&gt;fixed some issues on mingw-w64 toolchain for Windows 8,&lt;/li&gt;
&lt;li&gt;prepared a compatibility library,&lt;/li&gt;
&lt;li&gt;changed our packaging for WinRT,&lt;/li&gt;
&lt;li&gt;improved our audio output for Windows.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Winstore compatibility library&lt;/h3&gt;

&lt;p&gt;A lot of work has been and will be on this library, so let me speak a bit more about it.&lt;/p&gt;


&lt;p&gt;Instead of ifdef-ing the VLC code everywhere for WinRT, we decided to reimplement the forbidden calls in a library that would expose the same old Win32 functions, but implemented with the allowed APIs.&lt;/p&gt;


&lt;p&gt;The biggest advantage of this approach is that you don't need to modify a lot of your common codebase, and that you don't need to hack all the libraries that are linked to VLC. And this would have been a huge task. Moreover, it allows to adapt to newer versions of Windows more easily.
Moreover, this library will be usable by every other project.&lt;/p&gt;


&lt;p&gt;But as you can imagine, doing that is quite tricky, since we don't modify VLC, we don't modify the headers, but we insert it at link time...&lt;/p&gt;


&lt;p&gt;We have done some of the work, but we still have a huge amount of work to do, notably on threads and Winsock reimplementation.&lt;/p&gt;


&lt;p&gt;This library is hosted in the mingw-w64 repository and will be my focus for a bit of time.&lt;/p&gt;


&lt;h2&gt;Application&lt;/h2&gt;

&lt;p&gt;Above the VLC engine (libVLC), we have a CX/C++ wrapper, in order to expose VLC functions to the application, since libVLC is plain C, and it is compiled in Visual Studio.&lt;/p&gt;


&lt;p&gt;Above the wrapper, we have the main application.&lt;/p&gt;


&lt;p&gt;This application is written in C#, compiled in Visual Studio, and uses the wrapper in order to access playback functions.&lt;/p&gt;


&lt;p&gt;So far, the application has a basic media library, and playback support using VLC engine.
The media library UI follows more or less what we've shown in the KickStarter. The player UI wasn't shown, but it looks a bit like the normal Video application, in order to match the official style.&lt;/p&gt;


&lt;p&gt;The video, so far, is rendered into a memory buffer from libVLC and then is displayed using Direct2D in a video surface. This is not yet the best method, but it is good enough for now.&lt;/p&gt;


&lt;h2&gt;What's next&lt;/h2&gt;

&lt;p&gt;So, what are we going to work on now:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;the winstore compat library&lt;/li&gt;
&lt;li&gt;the winstore compat library (threads) ,&lt;/li&gt;
&lt;li&gt;the winstore compat library (MSVCRT),&lt;/li&gt;
&lt;li&gt;the interface, in order to match our promises,&lt;/li&gt;
&lt;li&gt;the audio and video outputs, to go faster.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A lot of the work is going to go faster now that we have done correctly the beginning and a beta as soon as possible for our backers.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Opinion sur la consultation publique lancée par la Hadopi</title>
    <link>http://www.jbkempf.com/blog/post/2013/Opinion-sur-la-consultation-publique-Hadopi</link>
    <guid isPermaLink="false">urn:md5:cba705ac151cafb6bee48ba2f97371fe</guid>
    <pubDate>Mon, 11 Feb 2013 17:30:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>DRM</category><category>Hadopi</category><category>MTP</category><category>VideoLAN</category>    
    <description>    &lt;h2&gt;Sur l’initiative de la consultation publique&lt;/h2&gt;


&lt;p&gt;Au début de l’année 2012, &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VideoLAN&quot;&gt;VideoLAN&lt;/a&gt; a saisi la &lt;a href=&quot;http://www.jbkempf.com/blog/tag/Hadopi&quot;&gt;Hadopi&lt;/a&gt;, dans la cadre de sa mission de régulation des mesures techniques de protection, sur la question suivante :&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;De quelle manière l’association VideoLAN, éditrice du logiciel libre VLC media player, peut-elle mettre à disposition des utilisateurs une version du logiciel VLC media player permettant la lecture de l’ensemble des disques couramment regroupés sous l’appellation « Blu-Ray » et comportant des mesures techniques de protection (MTP), dans le respect de ses statuts et de l’esprit du logiciel ?&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Cette question est posée à la Hadopi en sa qualité d’autorité publique indépendante, dotée, par application des dispositions de l’article L.331-36 du Code de la propriété intellectuelle, du pouvoir de rendre un avis sur toute question relative à l’interopérabilité et donc d’interpréter les dispositions en la matière.&lt;/p&gt;


&lt;p&gt;Le 6 février 2013, VideoLAN a appris que la Hadopi avait ouvert une consultation publique spécifiquement sur la question qui lui est posée et sur laquelle elle doit répondre depuis maintenant plus d’un an.&lt;/p&gt;


&lt;p&gt;Malgré la demande de la Hadopi, VideoLAN ne peut répondre officiellement à cette consultation publique, dans les modalités prescrites. En effet, l’association ne peut être à la fois demandeur à la saisine et consultant « disposant d’une expertise dans ce domaine ».&lt;/p&gt;


&lt;p&gt;Ainsi, nous entendons informer le plus grand nombre de son argumentation juridique relative à la notion d’information essentielle à l’interopérabilité.&lt;/p&gt;


&lt;p&gt;Vous pouvez trouvez &lt;a href=&quot;http://www.jbkempf.com/blog/public/VideoLAN/Opinion_Hadopi.pdf&quot;&gt;ici, en pdf,&lt;/a&gt; une opinion sur le sujet.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Why we need a KickStarter for VLC on Metro</title>
    <link>http://www.jbkempf.com/blog/post/2012/Why-we-need-a-KickStarter-for-Metro</link>
    <guid isPermaLink="false">urn:md5:5fb08527e986aed2d0b5de019661f4d7</guid>
    <pubDate>Tue, 11 Dec 2012 18:21:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>VideoLAN</category><category>VLC</category><category>VLC media player</category><category>Windows</category><category>WinRT</category>    
    <description>    &lt;h2&gt;KickStarter for VLC on Metro&lt;/h2&gt;


&lt;p&gt;As you &lt;a href=&quot;http://www.videolan.org/press/win8ks.html&quot;&gt;might&lt;/a&gt; &lt;a href=&quot;http://www.videolan.org/news.html&quot;&gt;have&lt;/a&gt; &lt;a href=&quot;http://www.kickstarter.com/projects/1061646928/vlc-for-the-new-windows-8-user-experience-metro&quot;&gt;heard&lt;/a&gt;, some developers of the &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VideoLAN&quot;&gt;VideoLAN&lt;/a&gt; team have started a &lt;a href=&quot;http://www.kickstarter.com/&quot;&gt;kickstarter&lt;/a&gt; quest to crowdfound a port of &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VLC&quot;&gt;VLC&lt;/a&gt; on &lt;a href=&quot;http://www.jbkempf.com/blog/tag/WinRT&quot;&gt;WinRT&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;The reason for this kickstarter is that porting VLC to WinRT will be &lt;strong&gt;hard&lt;/strong&gt; and &lt;strong&gt;long&lt;/strong&gt;, if we don't speed it up.&lt;/p&gt;


&lt;p&gt;And yet, quite a few people seem to think the task will be simple, like on &lt;a href=&quot;http://www.neowin.net/news/vlc-windows-8-kickstarter-push-will-also-fund-windows-phone-8-version#comment-2031389&quot;&gt;neowin&lt;/a&gt; or &lt;a href=&quot;https://news.ycombinator.com/item?id=4902492&quot;&gt;Hacker News&lt;/a&gt;.&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;I'm all for funding 40k pounds for VLC (they deserve it), but 40k under the guise of Metro seems a bit much, no?&lt;/p&gt;&lt;/blockquote&gt;


&lt;blockquote&gt;&lt;p&gt;I dont know but just creating a metro UI shouldn't be that hard should it?&lt;/p&gt;&lt;/blockquote&gt;


&lt;blockquote&gt;&lt;p&gt;The Windows RT app should be trivial to make... As long as they aren't using Win32 API's, it should just be a matter of recompiling for RT and correcting whatever few bugs they encounter.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;&lt;strong&gt;Well, no, this is not too much.&lt;/strong&gt; &lt;br /&gt;
We are not the kind of person asking money for nothing, I think we've proven that during all those years.&lt;/p&gt;


&lt;p&gt;Let me explain why.&lt;/p&gt;


&lt;h2&gt;Why we need a KickStarter for VLC on Metro&lt;/h2&gt;


&lt;p&gt;Designing a UI above VLC, for the &amp;quot;Modern Experience&amp;quot; is quite easy, and we've already done a few proofs of concept.&lt;br /&gt;
Finding a designer would be simple and 1k$ for the project would be too much already &lt;img src=&quot;/blog/themes/jbkempf/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt; It would take a couple of months and we would be done with it.&lt;/p&gt;


&lt;p&gt;The issue is to get on the store. And this is &lt;strong&gt;hard&lt;/strong&gt;.&lt;/p&gt;


&lt;h3&gt;Why is that?&lt;/h3&gt;


&lt;p&gt;&lt;a href=&quot;http://www.jbkempf.com/blog/tag/VLC&quot;&gt;VLC&lt;/a&gt; (and its underlying libraries, including codecs, networking access or demuxers) represents around 7 Million Lines of Code in C, C++ and ASM languages. And all of this code is following C99 standard and has inline ASM.&lt;/p&gt;


&lt;p&gt;&lt;em&gt;Visual Studio&lt;/em&gt; cannot eat that code in any way. Believe me, we tried. &lt;em&gt;A lot&lt;/em&gt;. So we need to compile the VLC for Windows on Linux, using gcc and mingw.&lt;/p&gt;


&lt;p&gt;Unfortunately, this does not work on WinRT (&amp;quot;Modern UI&amp;quot; or whatever you like to call it). WinRT restricts a lot the Win32 APIs. And only the Windows Store knows which ones are allowed.&lt;/p&gt;


&lt;p&gt;For example, the BSD sockets are gone... Yes, this is not a joke.&lt;br /&gt;
They work on Linux, Windows, Mac, iOS, Solaris, Android, QNX, WP8, WinCE but not WinRT.&lt;/p&gt;


&lt;h3&gt;Roadmap&lt;/h3&gt;

&lt;p&gt;So, we need to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;change and update our toolchains,&lt;/li&gt;
&lt;li&gt;fix MingW for WinRT, in the best way we can,&lt;/li&gt;
&lt;li&gt;link to the newer Windows runtime,&lt;/li&gt;
&lt;li&gt;list the problematic APIs,&lt;/li&gt;
&lt;li&gt;rewrite the code that is using Win32 APIs since 10 years (and in all underlying libraries too...),&lt;/li&gt;
&lt;li&gt;drop some modules or isolate some code,&lt;/li&gt;
&lt;li&gt;write new replacement code,&lt;/li&gt;
&lt;li&gt;write a new interface above all this,&lt;/li&gt;
&lt;li&gt;design the interface correctly,&lt;/li&gt;
&lt;li&gt;fix the code using windows HWND,&lt;/li&gt;
&lt;li&gt;port the audio and video outputs,&lt;/li&gt;
&lt;li&gt;work-around the sandbox for DVD and BluRay playback,&lt;/li&gt;
&lt;li&gt;probably write a WinSock2 replacement library to build all the cross-platform libraries that expect a BSD-socket-like library,&lt;/li&gt;
&lt;li&gt;port to ARM,&lt;/li&gt;
&lt;li&gt;etc...&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Add to that the need to modify MingW to output dlls that we can load on ARM (Windows RT) and do the same project for the different APIs present on WP8.&lt;/p&gt;


&lt;h2&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;As you can see, a lot of the work is not really on VLC, but on being able to compile for WinRT with open source tools, since Microsoft tools are not enough. And a lot of work will be work-around the limitations of WinRT.&lt;/p&gt;


&lt;p&gt;Of course, a lot of the work will be re-usable to other projects.&lt;/p&gt;


&lt;p&gt;So, yes, we will need quite a few developers to do all that. We can do the Android route, and it might take a couple of years to get it there, or we can try to get some money to speed it up...&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Windows Store and the GPL</title>
    <link>http://www.jbkempf.com/blog/post/2012/Windows-Store-and-the-GPL</link>
    <guid isPermaLink="false">urn:md5:14ef90ec65f19377717514388f69fd4c</guid>
    <pubDate>Thu, 22 Nov 2012 10:23:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>Android</category><category>Apple</category><category>GPL</category><category>Windows</category>    
    <description>    &lt;h2&gt;FOSS and AppStore&lt;/h2&gt;


&lt;p&gt;As more and more software distribution are going through so-called &lt;q&gt;App Stores&lt;/q&gt;, the question about the compatibility of their terms and conditions with the open source licenses, notably the &lt;a href=&quot;http://www.jbkempf.com/blog/tag/GPL&quot;&gt;GPL&lt;/a&gt;, often arise.&lt;/p&gt;


&lt;p&gt;Personally I don't like those, but I can understand why they are popular and will continue to be popular.&lt;/p&gt;


&lt;p&gt;So far, the &lt;a href=&quot;http://www.jbkempf.com/blog/tag/Android&quot;&gt;Android&lt;/a&gt; store is open source friendly, and &lt;a href=&quot;http://www.jbkempf.com/blog/tag/Apple&quot;&gt;Apple&lt;/a&gt; one is not yet open source friendly.&lt;/p&gt;


&lt;p&gt;But there is a new one in town, so I will look at the new &lt;a href=&quot;http://www.jbkempf.com/blog/tag/Windows&quot;&gt;Windows&lt;/a&gt; Store, that will ship WinRT &lt;q&gt;Metro&lt;/q&gt; and Windows Phone 8 applications.&lt;/p&gt;


&lt;p&gt;I will look at the &lt;strong&gt;3 main liberties&lt;/strong&gt; (copy, modify, redistribute) and the unrestricted &lt;strong&gt;usage&lt;/strong&gt; liberty.&lt;/p&gt;


&lt;h2&gt;Legal analysis&lt;/h2&gt;

&lt;h3&gt;Part 1: Store terms of use for users&lt;/h3&gt;


&lt;p&gt;The referent document can be found &lt;a href=&quot;http://windows.microsoft.com/en-us/windows/store-terms-of-use&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;The first reaction that those terms of use are way better than the ones from the competition. I don't really like Windows 8 but this is very well executed.&lt;/p&gt;


&lt;p&gt;In section named &lt;strong&gt;What are my rights for apps I get from the Windows Store?&lt;/strong&gt;&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;All apps made available through the Windows Store are licensed, not sold, to you.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;This is quite normal for software.&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;In most cases, that license includes the right to install and use your app on up to five Windows 8 enabled devices simultaneously. If you try to install an app on more than five devices, it may be deactivated automatically from one of these devices, so that no more than five instances are activated at any one time.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;5 device limitation, for most cases. This needs clarification for what other cases are. (see the bottom of this mail)&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;In limited circumstances, such as when a publisher designates the app as eligible for use on only a certain type of device, apps might not install on other types of devices.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Publishers can be assholes or have not ported to ARM or whatever stupidity we add later on, on our devices.&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;We provide the name of the app provider licensing each app, which may be Microsoft or a third-party app provider.&amp;quot;&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Microsoft will always tell you the name of who actually licenses the application.&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;All apps are licensed to you under the &lt;q&gt;Standard App License Terms&lt;/q&gt; at the end of these Terms of Use, unless the provider of an app provides you with access to separate terms or agreements in the app listing page, in which case those terms will apply.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Either there is a correct license, or we force our broken terms.&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;Those terms might also include a privacy policy. The app publisher is the seller and licensor of the app.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Microsoft is not the seller or licensor, they act as a store.&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;When a third party is the app provider, Microsoft is an agent of the third party that provides the app to you, but we aren’t a party to the license between you and the app provider, and our privacy statement doesn’t apply to treatment of information you might exchange with the app provider when using the app. In such cases, Microsoft isn’t responsible for the app or its content, your use of the app, any warranties or claims relating to the app, or customer support for the app.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Microsoft is not responsible for 3rd party apps, and does not apply neither
its terms of conditions nor privacy policy, if there is a license.&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;But your relationship with Microsoft and your use of the Windows Store will still be governed by Software License Terms for your Windows operating system and these Terms of Use. Because Microsoft processes the app purchase or, in some cases, the in-app purchase transaction as the agent of the seller, you might see Microsoft listed as the seller on sales records.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;But even if it is the case, the Microsoft Store software and Microsoft software are govern by Microsoft SLT.&lt;/p&gt;


&lt;p&gt;The rest of the terms is not about apps, and then there is their SLT which is clearly not open source, because of the section 3 that forbids the 3 main liberties.&lt;/p&gt;



&lt;h3&gt;Part 2: Application Developer Agreement&lt;/h3&gt;


&lt;p&gt;The referent document can be found &lt;a href=&quot;http://msdn.microsoft.com/en-us/library/windows/apps/hh694058.aspx&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;The important part is named:
&lt;q&gt;3) g. License to Customer for Windows Store apps.&lt;/q&gt;&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;You, not Microsoft, will license the right to install and use each app to customers. You may provide a license agreement to the customer for your app.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Same as above, restated as a developer point of view.&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;That license agreement or other terms that govern a customer’s use of your app (including any privacy policy), or a link to them, must be delivered to Microsoft for publication via the product description materials you provide to Microsoft.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;You must share the license to MS,&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;If you do not provide such materials, then the Standard Application License Terms, attached as Exhibit A, will apply between you and customers of your app.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;or the SLT will apply, automatically.&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;If you provide your own license agreement, your license must, at a minimum,&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Your license must allow, at minimum (so more can be allowed):&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;(a) permit the customer to download and run the app on up to five Windows 8 enabled devices that are associated with that customer’s Microsoft account, without payment of any additional fees to you (from either  Microsoft or customer),&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;&lt;strong&gt;At least&lt;/strong&gt; 5 devices.&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;(b) include &amp;quot;disclaimer of warranty&amp;quot; and &amp;quot;limitation on and exclusion of remedies and damages&amp;quot; sections that are at least as protective as Exhibit A&lt;/p&gt;&lt;/blockquote&gt;



&lt;blockquote&gt;&lt;p&gt;10. DISCLAIMER OF WARRANTY. TO THE FULLEST EXTENT PERMITTED BY LAW,
(A) THE APPLICATION IS LICENSED &amp;quot;AS-IS,&amp;quot; &amp;quot;WITH ALL FAULTS,&amp;quot; AND &amp;quot;AS
AVAILABLE&amp;quot; AND YOU BEAR ALL RISK OF USING IT; (B) THE APPLICATION
DEVELOPER, ON BEHALF OF ITSELF, MICROSOFT (IF MICROSOFT IS NOT THE
APPLICATION DEVELOPER), AND EACH OF OUR RESPECTIVE AFFILIATES,
VENDORS, AGENTS AND SUPPLIERS, GIVES NO EXPRESS WARRANTIES,
GUARANTEES, OR CONDITIONS IN RELATION TO THE APPLICATION; (C) YOU MAY
HAVE ADDITIONAL CONSUMER RIGHTS UNDER YOUR LOCAL LAWS THAT THIS
AGREEMENT CANNOT CHANGE. APPLICATION DEVELOPER AND MICROSOFT EXCLUDE
ANY IMPLIED WARRANTIES OR CONDITIONS, INCLUDING THOSE OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NON-INFRINGEMENT.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Usual &amp;quot;NO WARRANTY&amp;quot; section.&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;(c) disclaim any support services from Microsoft and the customer’s device manufacturer and network operator (if applicable).&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Be clear on support services and who is in charge of the support.&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;Your license terms must also not conflict with the Standard Application License Terms, in any way, except if you include FOSS,  your license terms may conflict with the limitations set forth in Section 3 of those Terms, but only to the extent required by the FOSS that you use. &amp;quot;FOSS&amp;quot; means any software licensed under an Open Source Initiative Approved License.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Your license should be compatible with the SLT, except if you include FOSS, in which case you can violate the part of the SLT that disallow reverse engineering, decompile.&lt;/p&gt;


&lt;p&gt;Here is the part of the SLT that you can explicitly violate:&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;work around any technical limitations in the application;&lt;/p&gt;&lt;/blockquote&gt;


&lt;blockquote&gt;&lt;p&gt;reverse engineer, decompile or disassemble the application, except and only to the extent that applicable law expressly permits, despite this limitation;&lt;/p&gt;&lt;/blockquote&gt;


&lt;blockquote&gt;&lt;p&gt;make more copies of the application than specified in this agreement or allowed by applicable law, despite this limitation;&lt;/p&gt;&lt;/blockquote&gt;


&lt;blockquote&gt;&lt;p&gt;publish or otherwise make the application available for others to copy; or rent, lease or lend the application.&lt;/p&gt;&lt;/blockquote&gt;


&lt;h2&gt;Technically&lt;/h2&gt;


&lt;p&gt;Technically, a contrario from what Microsoft is trying to explain people, WinRT applications are Win32 applications, that have artificial limitations imposed by the Windows Store submission process.&lt;/p&gt;


&lt;p&gt;They are usually linked to MSVCR110 for standard calls, which is a major component of the operating system on which the executable runs. Those applications don't ship anything else than the usual executables and a few .xml crap.&lt;/p&gt;


&lt;h2&gt;tl;dr: Summary&lt;/h2&gt;


&lt;p&gt;Your usages are not limited; except you cannot use the application on more than 5 devices, unless the license clearly says you can use it on more devices. That might need an extra clarification, to check if you can have unlimited devices.&lt;/p&gt;


&lt;p&gt;You can reverse engineer, decompile, disassemble the application, make more copies of the application, publish, distribute, rent, lease or lend, as long as you are FOSS.&lt;/p&gt;


&lt;p&gt;Therefore, I think it is quite safe, now, to publish a FOSS application on the Windows Store.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>How to properly(?) relicense a large open source project - part 3</title>
    <link>http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project-part-3</link>
    <guid isPermaLink="false">urn:md5:da33b6b30e569bd1e92a6e5f364e2154</guid>
    <pubDate>Tue, 20 Nov 2012 17:06:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>LGPL</category><category>libVLC</category><category>VideoLAN</category><category>VLC</category>    
    <description>    &lt;h2&gt;Relicensing VLC to LGPL&lt;/h2&gt;


&lt;p&gt;As you might know, or might &lt;a href=&quot;http://www.videolan.org/press/lgpl.html&quot; hreflang=&quot;en&quot; title=&quot;Changing the VLC engine license to LGPL&quot;&gt;have&lt;/a&gt; &lt;a href=&quot;http://www.videolan.org/press/lgpl-libvlc.html&quot; hreflang=&quot;en&quot; title=&quot;VLC engine relicensed to LGPL&quot;&gt;read&lt;/a&gt;, I have spent a lot of my time to relicense &lt;a href=&quot;http://www.jbkempf.com/blog/tag/libVLC&quot;&gt;libVLC&lt;/a&gt;, &lt;em&gt;aka VLC engine&lt;/em&gt;, from GPL to &lt;a href=&quot;http://www.jbkempf.com/blog/tag/LGPL&quot;&gt;LGPL&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;This is a continuation of the &lt;a href=&quot;http://www.jbkempf.com/blog/tag/LGPL&quot;&gt;LGPL&lt;/a&gt; posts, please read the &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project&quot;&gt;previous&lt;/a&gt; &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project-part-2&quot;&gt;posts&lt;/a&gt;, if you have not done it already.&lt;/p&gt;


&lt;p&gt;Here is the last part, that should answer a few questions I've had.&lt;/p&gt;


&lt;h2&gt;Part 3: numbers and Q/A&lt;/h2&gt;


&lt;h3&gt;How many lines of code were relicensed?&lt;/h3&gt;

&lt;p&gt;I have not done the total count, but the &lt;a href=&quot;http://www.jbkempf.com/blog/tag/LGPL&quot;&gt;LGPL&lt;/a&gt; modules are now around &lt;strong&gt;230,000&lt;/strong&gt; lines of code.&lt;/p&gt;


&lt;p&gt;The GPL modules are now around &lt;strong&gt;150,000&lt;/strong&gt; lines of code.&lt;/p&gt;


&lt;h3&gt;Does this mean the VLC will come back on the iOS store?&lt;/h3&gt;

&lt;p&gt;Well, the honest answer is still &lt;em&gt;maybe&lt;/em&gt;. I do not have a crystal ball.&lt;/p&gt;


&lt;p&gt;First, I have no checked the compatibility between the AppStore and the LGPL, and then, as far as I know, MobileVLCKit, MediaLibraryKit and the VLC audio and video outputs for iOS are still totally GPL.&lt;/p&gt;


&lt;p&gt;And, as far as I know the legality of the AppStore terms and the GPL is still shady.&lt;/p&gt;


&lt;h3&gt;Did you have to contact companies?&lt;/h3&gt;

&lt;p&gt;Yes. There was a limited number of people who used their corporate email and therefore, we needed the check from their hierarchy.
I can think about &lt;a href=&quot;http://sfr.fr&quot;&gt;SFR&lt;/a&gt;, &lt;a href=&quot;http://viotech.net&quot;&gt;Viotech&lt;/a&gt;, &lt;a href=&quot;http://bbc.co.uk&quot;&gt;BBC&lt;/a&gt;, &lt;a href=&quot;http://m2x.eu&quot;&gt;M2X&lt;/a&gt;, &lt;a href=&quot;http://jutel.fi&quot;&gt;Jutel&lt;/a&gt; and Actech, but their might have been more.&lt;/p&gt;


&lt;p&gt;When working for companies, it is probable that you handed over our patrimonial rights to the company. Therefore, we needed to get the OK.
Since this is more a singularity than the norm, this went quite smoothly, in all cases.&lt;/p&gt;


&lt;h3&gt;Are you crazy?&lt;/h3&gt;

&lt;p&gt;Probably, yes. Why?&lt;/p&gt;


&lt;h3&gt;Did you have some difficulties to convince some people?&lt;/h3&gt;

&lt;p&gt;Well, yes. Some people, notably very old contributors, wanted more details and information with the change. But a couple of mail or a call were enough to explain everything.&lt;/p&gt;


&lt;h3&gt;Do you think the GPL is a bad license?&lt;/h3&gt;

&lt;p&gt;No, the GPL is a great license, but it is not the magic silver bullet that works all the time. Moreover, times have changed, and a lot of companies know that contributing back is more cost-effective than forking a project, licensed under a more liberal license.&lt;/p&gt;


&lt;h3&gt;Did you learn stuff doing this?&lt;/h3&gt;

&lt;p&gt;A lot. Legally, mostly, but also socially and about our community.&lt;/p&gt;


&lt;h3&gt;What about other modules?&lt;/h3&gt;

&lt;p&gt;The main question is about the streaming modules. So far, I don't know. It might come, or might not. This will depend a bit of the first reactions on the current relicensing.&lt;/p&gt;


&lt;h3&gt;Are you available for hire?&lt;/h3&gt;

&lt;p&gt;Yes &lt;img src=&quot;/blog/themes/jbkempf/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;


&lt;h3&gt;What if you did a mistake?&lt;/h3&gt;

&lt;p&gt;Well, I am quite sure I did not. I've spent a lot of time to make stuff correctly, and it was long and boring.&lt;/p&gt;


&lt;p&gt;Yet, in the unlikely eventuality I did a mistake, here are the failsafes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I am quite sure of the support of the top 32 (2⁵) contributors of VLC, which account for more than 47200 commits which represent over 91% of all VLC commits,&lt;/li&gt;
&lt;li&gt;I have received 230 people agreements, which is a large chunk of coders contributors on VLC, probably more than the half,&lt;/li&gt;
&lt;li&gt;The code from people not responding was not relicensed,&lt;/li&gt;
&lt;li&gt;The process was correctly done and validated,&lt;/li&gt;
&lt;li&gt;VideoLAN and ECP support the change,&lt;/li&gt;
&lt;li&gt;VLC would very likely be considered as an &lt;q&gt;Œuvre collective&lt;/q&gt; under the direction of VideoLAN by legal ruling in France. I will detail this point in the next part,&lt;/li&gt;
&lt;li&gt;Unknown contributors that we haven't heard back from will probably be considered as missing, in a similar case than the case of an &lt;q&gt;œuvre orpheline&lt;/q&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Therefore, I don't think I did a mistake, and if I did a mistake, I think it will be only on a very limited piece of code (easy rewritable), and I think VideoLAN and VLC authors would be allowed to relicense it anyway.&lt;/p&gt;


&lt;h2&gt;French Authorship law and community projects&lt;/h2&gt;


&lt;p&gt;&lt;strong&gt;NOTA BENE:&lt;/strong&gt; if you are an idealist developer, you are forbidden to read the following because you will not like it.&lt;/p&gt;


&lt;p&gt;There are 3 main cases for intellectual works done by a group of authors: l'œuvre composite, l'œuvre collaborative and l'œuvre collective. Of course, those concepts apply very badly for software.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The composite work is clearly not in the scope of VLC, because the GPL takes care of that.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;The collaborative work implies that we only deal with physical entities, which is not true; and that the software is finished, in order to be &lt;q&gt;divulgué&lt;/q&gt;, which is clearly not the case for VLC.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;The collective work implies that some entity is in charge of publication, which is more or less true, seeing that VIA and VideoLAN have done that so far; but it implies that each contribution cannot be traced back to a single author, which is also not true.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We are in a mix here, because no situation perfectly fit. Seeing the jurisprudence of the last 30 years on this, we would probably be considered to be in the last case by a judge.&lt;/p&gt;


&lt;p&gt;Seeing that the very large majority of contributors have agreed, that we have contacted all the contributors (and I have proofs of that), that VideoLAN is doing the coordination, that we are not denaturing the &lt;q&gt;spirit&lt;/q&gt; of the final work, a French judge would very likely consider that VideoLAN and the main VLC authors have the rights to relicense the last pieces anyway.&lt;/p&gt;


&lt;p&gt;This was confirmed by a few lawyer friends of mine.&lt;/p&gt;


&lt;h3&gt;Do I like this situation?&lt;/h3&gt;


&lt;p&gt;Not really, but &lt;q&gt;dura lex sed lex&lt;/q&gt;.&lt;/p&gt;


&lt;p&gt;And it probably saves us from overzealot annoying people.&lt;/p&gt;


&lt;p&gt;Yet, I don't think I did a mistake.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>I did it!</title>
    <link>http://www.jbkempf.com/blog/post/2012/I-did-it</link>
    <guid isPermaLink="false">urn:md5:4d17a9bef0343cf6dee0d4a8d3cd3986</guid>
    <pubDate>Wed, 14 Nov 2012 00:26:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>LGPL</category><category>promised</category><category>VideoLAN</category><category>VLC</category>    
    <description>    &lt;p&gt;&lt;strong&gt;Hello HN&lt;/strong&gt;: you should &lt;em&gt;really&lt;/em&gt; read &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project&quot;&gt;part 1&lt;/a&gt;, &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project-part-2&quot;&gt;part 2&lt;/a&gt; and &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project-part-3&quot;&gt;part 3&lt;/a&gt; about this change.&lt;/p&gt;


&lt;p&gt;This afternoon, I finished the relicensing of most of the code of &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VLC&quot;&gt;VLC&lt;/a&gt; to &lt;a href=&quot;http://www.jbkempf.com/blog/tag/LGPL&quot;&gt;LGPL&lt;/a&gt;, &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project&quot;&gt;like&lt;/a&gt; &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project-part-2&quot;&gt;promised&lt;/a&gt;:&lt;/p&gt;


&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://git.videolan.org/?p=vlc.git;a=commit;h=fef270581f736d4f6289a77cb115195241ed691d&quot; hreflang=&quot;en&quot;&gt;VLC modules LGPL commit&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://www.jbkempf.com/blog/public/VideoLAN/fyeah.jpg&quot; alt=&quot;F*ck Yeah&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;F*ck Yeah, Nov 2012&quot; /&gt;&lt;/p&gt;


&lt;p&gt;You should read my &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project&quot;&gt;posts&lt;/a&gt; on &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project-part-2&quot;&gt;this&lt;/a&gt; &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project-part-3&quot;&gt;subject&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Thanks to all VLC contributors, especially the important ones!&lt;/p&gt;


&lt;p&gt;Last year, I also did the &lt;a href=&quot;http://git.videolan.org/?p=vlc.git;a=commit;h=36ab287e77e9df059f261ed1cfb13fc4674182ec&quot; hreflang=&quot;en&quot;&gt;VLC core LGPL commit&lt;/a&gt;.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>How to properly(?) relicense a large open source project - part 2</title>
    <link>http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project-part-2</link>
    <guid isPermaLink="false">urn:md5:9c1fbe8f15d180929c5fcc851b45d0b2</guid>
    <pubDate>Thu, 08 Nov 2012 23:57:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>LGPL</category><category>VideoLAN</category>    
    <description>    &lt;h2&gt;Relicensing VLC to LGPL&lt;/h2&gt;


&lt;p&gt;As you might know, or might &lt;a href=&quot;http://www.videolan.org/press/lgpl.html&quot; hreflang=&quot;en&quot; title=&quot;Changing the VLC engine license to LGPL&quot;&gt;have&lt;/a&gt; &lt;a href=&quot;http://www.videolan.org/press/lgpl-libvlc.html&quot; hreflang=&quot;en&quot; title=&quot;VLC engine relicensed to LGPL&quot;&gt;read&lt;/a&gt;, I am spending a lot of my time to relicense &lt;a href=&quot;http://www.jbkempf.com/blog/tag/libVLC&quot;&gt;libVLC&lt;/a&gt;, &lt;em&gt;aka VLC engine&lt;/em&gt;, from GPL to &lt;a href=&quot;http://www.jbkempf.com/blog/tag/LGPL&quot;&gt;LGPL&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;This is a continuation of the &lt;a href=&quot;http://www.jbkempf.com/blog/tag/LGPL&quot;&gt;LGPL&lt;/a&gt; posts, please read the &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project&quot;&gt;previous post&lt;/a&gt;, if you have not done it already.&lt;/p&gt;


&lt;p&gt;So, I had a list of contributors on the parts I was considering to relicense, thanks to the &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project&quot;&gt;previous work&lt;/a&gt;.&lt;/p&gt;


&lt;h2&gt;Cleaning the contributors list&lt;/h2&gt;

&lt;p&gt;This huge list was dumped in a spreadsheet, using LibreOffice. I used during all the relicensing with crazy big formulas to keep my status up-to-date.&lt;/p&gt;


&lt;p&gt;While I thought curating the list was useless, it revealed very important, since some developers use pseudonyms or change e-mail addresses.  I thought my list was already unique in the past, but it was not.&lt;/p&gt;


&lt;p&gt;Of course, a lot of emails were invalid, so manual corrections where necessary.&lt;/p&gt;


&lt;h2&gt;Splitting the list&lt;/h2&gt;

&lt;p&gt;During the core relicensing of VLC, an important number of users allowed us to relicense all the VLC code, so I had to mark them as such in the spreadsheet.&lt;/p&gt;


&lt;p&gt;For each group of modules, I had a different blame log, since the complete relicensing seemed too big a task, and logical groups could be relicensed individually.&lt;/p&gt;


&lt;p&gt;Then, with an export of the &lt;code&gt;csv&lt;/code&gt;, the raw &lt;code&gt;blame.log&lt;/code&gt;, a bit of awk, grep, cut, I had a list of &lt;em&gt;people remaining&lt;/em&gt; to mail. This list would get update, after every batch of answers.&lt;/p&gt;



&lt;h2&gt;Mailing&lt;/h2&gt;

&lt;p&gt;The next step is the obvious one, mailing the developers. I did that with a small Python script made by &lt;a href=&quot;http://www.l0cal.com&quot; hreflang=&quot;en&quot;&gt;Ludovic&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;This was a short letter, with explanations and a prototype for an answer.&lt;/p&gt;


&lt;p&gt;I have mailed no more than 30 contributors in a single batch, because processing the answers (or lack of) could be quite long.&lt;/p&gt;


&lt;h3&gt;Answers and reactions&lt;/h3&gt;

&lt;p&gt;In average, the answers were like this:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;25% of the emails just bounce,&lt;/li&gt;
&lt;li&gt;15% of people answer positively during the next hours,&lt;/li&gt;
&lt;li&gt;10% of people answer positively during the next days,&lt;/li&gt;
&lt;li&gt;50% do not answer at all.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After a second and a third mail, I usually got around 50% of positive answers.&lt;/p&gt;


&lt;p&gt;A few points are interesting:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;People answering fast were usually the ones that were GPG-signing their mails (this was asked in the LGPL letter).&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Quite a few people were surprised that I would mail them (&amp;quot;I only wrote one small commit&amp;quot;, &amp;quot;This was minor code&amp;quot;).&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Many people explained me they did not care what license the code was under, as long as it was open source. Some of them gave a full VLC relicensing authorization. Two even gave all the transmittable rights to &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VideoLAN&quot;&gt;VideoLAN&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;A few people thanked me for taking the task of relicensing.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Finding and stalking&lt;/h2&gt;

&lt;p&gt;Now is probably the harder part, where you will think I am crazy.&lt;/p&gt;


&lt;p&gt;So, after the first part, we get usually half of the answers. We need the &lt;em&gt;other&lt;/em&gt; half.&lt;/p&gt;


&lt;p&gt;For the bouncing emails, finding quickly an updated email online, fixing the videolan aliases solved many issues.&lt;/p&gt;


&lt;p&gt;But for the rest...&lt;/p&gt;


&lt;h3&gt;Techniques for stalking&lt;/h3&gt;

&lt;p&gt;The first ones are obvious:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ask older contributors, especially for people from &lt;a href=&quot;http://www.ecp.fr&quot; hreflang=&quot;en&quot;&gt;Ecole Centrale Paris&lt;/a&gt; for contact&lt;/li&gt;
&lt;li&gt;Use google (most of the time, it gives a link to VLC, though)&lt;/li&gt;
&lt;li&gt;Look on freecode, github, gitorious for an alternative contact&lt;/li&gt;
&lt;li&gt;Find a website (they are geeks!).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Some are a bit intrusive&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Use LinkedIn and ask for an introduction&lt;/li&gt;
&lt;li&gt;Friend them on Facebook&lt;/li&gt;
&lt;li&gt;Create an account on another weird social network&lt;/li&gt;
&lt;li&gt;Ask one of their friends and annoy them&lt;/li&gt;
&lt;li&gt;Ask their boss.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Or clearly bad:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Find their phone in a Phone Directory&lt;/li&gt;
&lt;li&gt;Use whois on some of their domain&lt;/li&gt;
&lt;li&gt;Use whois on a domain hosted on the same machine of their domain&lt;/li&gt;
&lt;li&gt;Go to their workplace.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Contact&lt;/h3&gt;

&lt;p&gt;Then, I used IRC, mails on multiple addresses, phones, fax and other means to get them to mail me.&lt;/p&gt;


&lt;p&gt;&lt;em&gt;Over&lt;/em&gt;, &lt;strong&gt;over&lt;/strong&gt;, &lt;em&gt;over&lt;/em&gt; and &lt;em&gt;over&lt;/em&gt;, and &lt;strong&gt;over&lt;/strong&gt;.&lt;/p&gt;


&lt;p&gt;This could get really annoying to do, to be honest.&lt;/p&gt;


&lt;h2&gt;Getting rid of people&lt;/h2&gt;

&lt;p&gt;At some point, you realize that some of the contributors are not going to answer.&lt;/p&gt;


&lt;p&gt;So, now, you need to actually analyze their code contributions and starting working on it.&lt;/p&gt;


&lt;p&gt;First, is there code still in place and not deleted? Is the license LGPL, by any chance?&lt;/p&gt;


&lt;p&gt;Then, is this module very important? Can we drop its priority?&lt;/p&gt;


&lt;p&gt;Then, is this feature important or not?&lt;/p&gt;


&lt;p&gt;And then, I &lt;strong&gt;deleted&lt;/strong&gt; some code, &lt;strong&gt;reverted&lt;/strong&gt; some commits, &lt;strong&gt;rewrote&lt;/strong&gt; some and or &lt;strong&gt;isolated&lt;/strong&gt; code from them in a separate files to reduce the future impact.&lt;/p&gt;


&lt;p&gt;This is not nice? Well, not answering is not nice either.&lt;/p&gt;


&lt;h2&gt;Follow up&lt;/h2&gt;

&lt;p&gt;You can read the &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project-part-3&quot;&gt;last part&lt;/a&gt; about this relicensing.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>How to properly(?) relicense a large open source project - part 1</title>
    <link>http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project</link>
    <guid isPermaLink="false">urn:md5:1eafe5e7a6b5228b0174ed5ac2c9f12f</guid>
    <pubDate>Wed, 07 Nov 2012 15:31:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>DVBlast</category><category>Git</category><category>LGPL</category><category>libVLC</category><category>VideoLAN</category><category>VLC</category><category>x264</category>    
    <description>    &lt;h2&gt;Relicensing VLC to LGPL&lt;/h2&gt;


&lt;p&gt;As you might know, or might &lt;a href=&quot;http://www.videolan.org/press/lgpl.html&quot; hreflang=&quot;en&quot; title=&quot;Changing the VLC engine license to LGPL&quot;&gt;have&lt;/a&gt; &lt;a href=&quot;http://www.videolan.org/press/lgpl-libvlc.html&quot; hreflang=&quot;en&quot; title=&quot;VLC engine relicensed to LGPL&quot;&gt;read&lt;/a&gt;, I am spending a lot of my time to relicense &lt;a href=&quot;http://www.jbkempf.com/blog/tag/libVLC&quot;&gt;libVLC&lt;/a&gt;, &lt;em&gt;aka VLC engine&lt;/em&gt;, from GPL to &lt;a href=&quot;http://www.jbkempf.com/blog/tag/LGPL&quot;&gt;LGPL&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;There are quite a few good reasons to do so, some more obvious than others, but notably competition, necessity to have more professional developers around VLC and AppStores. Other reasons also exist, but this is not the place and time to discuss those.&lt;/p&gt;


&lt;p&gt;This is a &lt;em&gt;crazy&lt;/em&gt; task, because every developer keeps all its rights, and &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VideoLAN&quot;&gt;VideoLAN&lt;/a&gt; has little rights on &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VLC&quot;&gt;VLC&lt;/a&gt;. This involves contacting a few hundred developers, some who were active only 10 years ago, some with bouncing mails, and people spread across continents, countries, languages, OS...&lt;/p&gt;


&lt;p&gt;Yet, I did it. Here is the first part of how I did it...&lt;/p&gt;


&lt;h2&gt;Copyright, droit d'auteurs, public domain and VLC.&lt;/h2&gt;

&lt;p&gt;As all VideoLAN projects, like &lt;a href=&quot;http://www.jbkempf.com/blog/tag/x264&quot;&gt;x264&lt;/a&gt; or &lt;a href=&quot;http://www.jbkempf.com/blog/tag/DVBlast&quot;&gt;DVBlast&lt;/a&gt;, VLC is governed under the French law, even if some don't like this fact.&lt;/p&gt;


&lt;p&gt;This means, we are not under a &lt;em&gt;copyright&lt;/em&gt; system, but under an &lt;em&gt;author rights&lt;/em&gt; system. As such, every author has &lt;em&gt;moral rights&lt;/em&gt; and &lt;em&gt;patrimonial rights&lt;/em&gt;. The first ones are nontransferable while the later ones can be transfered to another legal entity. This is quite different from copyright.&lt;/p&gt;


&lt;p&gt;Moreover, this explains why &lt;em&gt;public domain&lt;/em&gt; is not a valid concept for everyone on this planet.&lt;/p&gt;


&lt;p&gt;Unlike a lot of large open source projects, authors of VLC keep all their rights on their code, even if the code is &lt;q&gt;&lt;em&gt;minimal&lt;/em&gt;&lt;/q&gt;. Therefore, to change the license, one must contact &lt;strong&gt;every&lt;/strong&gt; author, even small contributors. From a community management point-of-view, this also makes sense :).&lt;/p&gt;


&lt;h2&gt;VLC authors, core and modules&lt;/h2&gt;

&lt;p&gt;VLC is split in several parts, but most of the code is in the &lt;em&gt;core&lt;/em&gt; or in some &lt;em&gt;modules&lt;/em&gt;.&lt;/p&gt;


&lt;h3&gt;The core&lt;/h3&gt;

&lt;p&gt;The core, that was successfully relicensed &lt;a href=&quot;http://mailman.videolan.org/pipermail/vlc-commits/2011-November/010353.html&quot;&gt;last&lt;/a&gt; &lt;a href=&quot;http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=36ab287e77e9df059f261ed1cfb13fc4674182ec&quot;&gt;year&lt;/a&gt;, involved around &lt;strong&gt;150&lt;/strong&gt; developers and &lt;strong&gt;80000&lt;/strong&gt; lines of code, and the very vast majority of the code was done by two dozens of people, most of whom I have not lost contact with.&lt;/p&gt;


&lt;h3&gt;The modules&lt;/h3&gt;

&lt;p&gt;The modules are a different piece of cake.&lt;/p&gt;


&lt;p&gt;Even, if we concentrate on the playback modules, &lt;em&gt;which I did&lt;/em&gt;, we speak here of &lt;strong&gt;300&lt;/strong&gt; developers and &lt;strong&gt;300000&lt;/strong&gt; lines of code and the repartition is distributed more evenly.&lt;/p&gt;


&lt;h2&gt;Listing the right people&lt;/h2&gt;

&lt;p&gt;The first step, which is the most important, is to correctly list the authors.&lt;/p&gt;


&lt;p&gt;This would seem simple from an external point of view, but it is not, mostly because there was no split between authors and commiters in the CVS and SVN days. Moreover, some code was &lt;del&gt;&lt;q&gt;stolen&lt;/q&gt;&lt;/del&gt; &lt;q&gt;imported&lt;/q&gt; from &lt;a href=&quot;http://www.xine-project.org/&quot;&gt;Xine&lt;/a&gt; or &lt;a href=&quot;http://www.mplayerhq.hu/&quot;&gt;MPlayer&lt;/a&gt;... And sometimes, the author is not even credited in the commit log.&lt;/p&gt;


&lt;p&gt;And this should be the time were you think I am completely crazy.&lt;/p&gt;


&lt;h3&gt;Tools&lt;/h3&gt;

&lt;p&gt;To get a proper listing of contributors, I used 3 things:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;git blame&lt;/li&gt;
&lt;li&gt;git log&lt;/li&gt;
&lt;li&gt;grep, awk&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;on our &lt;a href=&quot;http://git.videolan.org/?p=vlc.git&quot;&gt;vlc git&lt;/a&gt; repository.&lt;/p&gt;


&lt;h3&gt;Blaming&lt;/h3&gt;

&lt;p&gt;The first obvious thing to do, is to use &lt;ins&gt;git blame&lt;/ins&gt; on all the files you care, so you know, lines-by-line who actually wrote the code, even after code copy, code move or re-indentation.&lt;/p&gt;


&lt;p&gt;I ran it, with extra protection, like this:
&lt;code&gt;git blame -C -C -C20 -M -M10 -e $file&lt;/code&gt;.&lt;/p&gt;


&lt;p&gt;Of course, as some &lt;a href=&quot;http://git-scm.com/&quot;&gt;Git&lt;/a&gt; expert told me, this should have been enough:
&lt;code&gt;git blame -C -C -M -e $file&lt;/code&gt;
but I preferred to be extra-safe.&lt;/p&gt;


&lt;h3&gt;Logging&lt;/h3&gt;

&lt;p&gt;The second obvious thing to do, was to check all the logs on the specific modules folder or file, in case :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;someone did some commits on one module&lt;/li&gt;
&lt;li&gt;the code was quite changed, so blaming does not find it&lt;/li&gt;
&lt;li&gt;yet the idea behind the code is the same.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This solves what I call the &lt;em&gt;authorship leak&lt;/em&gt;.&lt;/p&gt;


&lt;p&gt;&lt;code&gt;git shortlog -sne $file&lt;/code&gt; was used for that task.&lt;/p&gt;


&lt;h3&gt;Grepping&lt;/h3&gt;

&lt;p&gt;Finally, some people where only mentioned in the commits logs or just had their names in the final file.&lt;/p&gt;


&lt;p&gt;For this, I grepped &amp;quot;patch&amp;quot;, &amp;quot;original&amp;quot; &amp;quot;at&amp;quot;, &amp;quot;@&amp;quot; in the commit logs.&lt;br /&gt;
I also grepped the author sections of every file to check if there were any other author missing.&lt;/p&gt;


&lt;h2&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;After those steps, I had a quite accurate list of people to contact. I'll skip you the de-duplicating step, because this is obvious and boring.&lt;/p&gt;


&lt;p&gt;The &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project-part-2&quot;&gt;next&lt;/a&gt; &lt;a href=&quot;http://www.jbkempf.com/blog/post/2012/How-to-properly-relicense-a-large-open-source-project-part-3&quot;&gt;posts&lt;/a&gt; will be about how I contacted and found people, and how they did react.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>VLC media player 2.0.4 and VLC for Android 0.0.6</title>
    <link>http://www.jbkempf.com/blog/post/2012/VLC-2.0.4-and-Android-6</link>
    <guid isPermaLink="false">urn:md5:5948f528373cc341bb201826fb522c68</guid>
    <pubDate>Thu, 18 Oct 2012 12:38:00 +0200</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>2.0</category><category>2.1.0</category><category>Android</category><category>Apple</category><category>Blu-Ray</category><category>Opus</category><category>VideoLAN</category><category>VLC</category><category>VLC media player</category><category>Youtube</category>    
    <description>    &lt;h2&gt;VLC 2.0.4&lt;/h2&gt;


&lt;p&gt;So, yet another release for &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VLC&quot;&gt;VLC&lt;/a&gt; is around the corner. Why should you care?&lt;/p&gt;


&lt;p&gt;Well, first, it shows that the VLC project is still quite alive and that we care about our users, even if we are focusing on &lt;a href=&quot;http://www.jbkempf.com/blog/tag/2.1.0&quot;&gt;2.1.0&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Then, a bit of stabilization of the 2.0.x branch cannot be bad. &lt;img src=&quot;/blog/themes/jbkempf/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;


&lt;p&gt;For a summary of the most important features, you have:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Support for &lt;a href=&quot;http://www.jbkempf.com/blog/tag/Opus&quot;&gt;Opus&lt;/a&gt; codec, including multi-channel and icecast streams,&lt;/li&gt;
&lt;li&gt;Support for MSS1 and MSS2 codecs through DMO on Windows and Linux (this can still be hard to use until 2.1.0).&lt;/li&gt;
&lt;li&gt;Support for &lt;a href=&quot;http://www.jbkempf.com/blog/tag/Youtube&quot;&gt;Youtube&lt;/a&gt; Live Streams,&lt;/li&gt;
&lt;li&gt;Support for &lt;a href=&quot;http://www.jbkempf.com/blog/tag/BluRay&quot;&gt;BluRays&lt;/a&gt; correctly on OSX,&lt;/li&gt;
&lt;li&gt;Karaoke control on OSX interface.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For important fixes, we have also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Youtube, Vimeo, Koreus and Soundcloud are back,&lt;/li&gt;
&lt;li&gt;Ogg duration should be fixed in most cases,&lt;/li&gt;
&lt;li&gt;HLS, Dash, HTTPS, MKV and Ogg playback fixes,&lt;/li&gt;
&lt;li&gt;Wallpaper is back on Windows 7 and 8,&lt;/li&gt;
&lt;li&gt;Huge improvements in the OSX interface,&lt;/li&gt;
&lt;li&gt;Lots of fixes in the Qt interface,&lt;/li&gt;
&lt;li&gt;Windows 8 look is now correct,&lt;/li&gt;
&lt;li&gt;Crashes in subtitles, hardware acceleration fixed,&lt;/li&gt;
&lt;li&gt;Web interface improvements,&lt;/li&gt;
&lt;li&gt;Audio devices selections fixes and synchronizations,&lt;/li&gt;
&lt;li&gt;Security issues.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And of course, translations!&lt;/p&gt;


&lt;h2&gt;VLC for Android Beta 6&lt;/h2&gt;


&lt;p&gt;At the same time, you might have seen that we have done quite a few VLC for &lt;a href=&quot;http://www.jbkempf.com/blog/tag/Android&quot;&gt;Android&lt;/a&gt; releases:&lt;/p&gt;


&lt;p&gt;After 0.0.3 and 0.0.4, 2 weeks ago, 0.0.5 and 0.0.6 have been released in the last week.&lt;/p&gt;


&lt;p&gt;So, what are the cool things in?&lt;/p&gt;


&lt;h3&gt;More devices&lt;/h3&gt;

&lt;p&gt;One of the big issues we have been facing was to support the maximum of devices with only one package.&lt;/p&gt;


&lt;p&gt;The first thing was the port of VLC on Android to Intel x86 chips.&lt;/p&gt;


&lt;p&gt;Then, we had to work on NEON autodetection, in order to support all Tegra2 tablets and phones directly. A bit hard to do, but, now, our ARMv7 packages work on both NEON and devices without NEON.&lt;/p&gt;


&lt;p&gt;Finally, we've done quite a few fixes for devices like the Nexus 7, that allocate the memory in a different way than other devices...&lt;/p&gt;


&lt;h4&gt;More Android support&lt;/h4&gt;

&lt;p&gt;We have also been working quite hard to fix our behaviour on all android versions, from 2.1 to 4.1.&lt;/p&gt;


&lt;p&gt;Android 2.1 is really slow and buggy, but we need to support it while adding the coolest features from 4.0 and 4.1.&lt;/p&gt;


&lt;p&gt;A lot of fixes for compatibility went in, notably in 0.0.4 and 0.0.5.&lt;/p&gt;



&lt;h3&gt;New interface&lt;/h3&gt;

&lt;p&gt;As you can see in the following screenshot, we have also been working in having a better User Interface and User eXperience on both tablets and phones.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://www.jbkempf.com/blog/public/VideoLAN/Screenshot_2012-10-11-17-03-36.png&quot; title=&quot;VLC 0.0.6 on Android&quot;&gt;&lt;img src=&quot;http://www.jbkempf.com/blog/public/VideoLAN/.Screenshot_2012-10-11-17-03-36_m.jpg&quot; alt=&quot;VLC 0.0.6 on Android&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;VLC 0.0.6 on Android, Oct 2012&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://www.jbkempf.com/blog/public/VideoLAN/Android-Audio.png&quot; title=&quot;VLC 0.0.6 on Android - Audio&quot;&gt;&lt;img src=&quot;http://www.jbkempf.com/blog/public/VideoLAN/.Android-Audio_m.jpg&quot; alt=&quot;VLC 0.0.6 on Android - Audio&quot; style=&quot;display:block; margin:0 auto;&quot; title=&quot;VLC 0.0.6 on Android - Audio, Oct 2012&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;This is long and difficult, and we move step-by-step, but we are going in the right direction.&lt;/p&gt;


&lt;h3&gt;Performance&lt;/h3&gt;

&lt;p&gt;In terms of video performance, VLC is still in beta, in debug mode, and therefore slower than it should be.&lt;/p&gt;


&lt;p&gt;We are also improving there, but it is not easy, especially with the very limited numbers of devices we have on our hands. We have still quite a few ideas to improve.&lt;/p&gt;


&lt;p&gt;In terms of the UI, we are decreasing the CPU and the memory used for snapshots and audio cover arts, so that the UI is smoother. You can see that in 0.0.6 and will see it more in 0.0.7.&lt;/p&gt;


&lt;p&gt;Our background audio service is now completely asleep when not used, and is awaken on phone calls, as needed.&lt;/p&gt;


&lt;h3&gt;Still in beta&lt;/h3&gt;

&lt;p&gt;Yet, as you might know about it, this is still not perfect, and needs some work, so this is still a beta!&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>VideoLAN on HTTPS</title>
    <link>http://www.jbkempf.com/blog/post/2012/VideoLAN-on-HTTPS</link>
    <guid isPermaLink="false">urn:md5:2a3c78b344f98ee486c1ff1747fed74a</guid>
    <pubDate>Wed, 10 Oct 2012 23:53:00 +0200</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>VideoLAN</category>    
    <description>    &lt;h2&gt;HTTPS, Cacert&lt;/h2&gt;


&lt;p&gt;For quite a bit of time, &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VideoLAN&quot;&gt;VideoLAN&lt;/a&gt; had its websites available on HTTPS. This is important for &lt;a href=&quot;https://forum.videolan.org&quot; title=&quot;forums&quot;&gt;forums&lt;/a&gt;,  &lt;a href=&quot;https://wiki.videolan.org&quot; hreflang=&quot;en&quot; title=&quot;wiki&quot;&gt;wiki&lt;/a&gt; and other places were you had to log-in to avoid passwords in clear.&lt;/p&gt;


&lt;p&gt;Unfortunately, our certificate was a &lt;a href=&quot;http://cacert.org&quot;&gt;Cacert&lt;/a&gt; certificate, which means that it was not recognized by most browsers.&lt;/p&gt;


&lt;p&gt;Then &lt;strong&gt;Mozilla&lt;/strong&gt; started its fight against SSL with the most stupid UI ever (and was followed by &lt;strong&gt;Chrome&lt;/strong&gt;) to force people into this SSL certificate extortion business.&lt;/p&gt;


&lt;p&gt;Therefore, when, last week, our &lt;em&gt;Cacert certificate&lt;/em&gt; expired, we bought a new SSL certificate from &lt;strong&gt;Gandi.net&lt;/strong&gt;.&lt;/p&gt;


&lt;h2&gt;Available websites&lt;/h2&gt;


&lt;p&gt;We have now quite a few service that now work on HTTPS:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.videolan.org&quot; title=&quot;VideoLAN&quot;&gt;Main VideoLAN Website&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://forum.videolan.org&quot; title=&quot;forums&quot;&gt;VideoLAN Forums&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://wiki.videolan.org&quot; title=&quot;wiki&quot;&gt;VideoLAN Wiki&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://trac.videolan.org/vlc&quot; title=&quot;trac&quot;&gt;VLC bugtracker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://patches.videolan.org/&quot; title=&quot;patches&quot;&gt;VLC patches review&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;PS: VLC and HTTPS&lt;/h3&gt;

&lt;p&gt;VLC 2.1.0 will play HTTPS in a better way, even with self-signed certificates of your seedboxes &lt;img src=&quot;/blog/themes/jbkempf/smilies/wink.png&quot; alt=&quot;;)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>News</title>
    <link>http://www.jbkempf.com/blog/post/2012/News</link>
    <guid isPermaLink="false">urn:md5:d492a9f5666004b952184de22edf1408</guid>
    <pubDate>Wed, 03 Oct 2012 00:41:00 +0200</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>2.0</category><category>Mac OS X</category><category>VideoLAN</category><category>VideoLAN Dev Days</category><category>Windows</category>    
    <description>    &lt;h2&gt;Phœnix (Long time no see)&lt;/h2&gt;

&lt;p&gt;It has been more than 7 months that I have not blogged around VLC and VideoLAN.&lt;/p&gt;


&lt;p&gt;&lt;strong&gt;Why?&lt;/strong&gt;
To be honest, I have been quite busy, both professionally and personally, for the best and the worst.
But the truth is that, on the little free time I had, I have been lazy, once again, and this website has not been updated &lt;img src=&quot;/blog/themes/jbkempf/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;


&lt;p&gt;&lt;strong&gt;Back!&lt;/strong&gt;
And, a contrario from the previous point, as you might have seen, I've been more active this year around VideoLAN and VLC.&lt;/p&gt;


&lt;h2&gt;Around the world&lt;/h2&gt;

&lt;p&gt;For VideoLAN, since the beginning of the year, I've been around in France, in Belgium, in Brazil, in Germany, in the USA and in Estonia. Most of the time, for conferences, but also for partnerships and meet-ups.&lt;/p&gt;


&lt;h4&gt;VDD 12&lt;/h4&gt;

&lt;p&gt;In September, I organized, with etix and Gigi, the 2012 version of the &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VideoLAN%20Dev%20Days&quot;&gt;VideoLAN Dev Days&lt;/a&gt;.
This year was a huge success, since we coupled the event with FOMS, and we invited way more multimedia people than previously.&lt;/p&gt;


&lt;p&gt;The result:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;there were more non-VLC developers than VLC developers at the conference,&lt;/li&gt;
&lt;li&gt;the technical level was high,&lt;/li&gt;
&lt;li&gt;a high number of FOSS projects were present,&lt;/li&gt;
&lt;li&gt;a lot of great discussions, talks, great food and laughs...&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;One more time&lt;/h2&gt;

&lt;p&gt;This year, we finally released &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VLC%202.0&quot;&gt;VLC 2.0.0&lt;/a&gt; and the subsequent VLC 2.0.1, 2.0.2 and 2.0.3.&lt;/p&gt;


&lt;p&gt;A lot of things were in VLC 2.0.0 and it was an interesting release, with multi-threaded decoding, new video rendering engine, new UI on Mac, and so many other important things.&lt;/p&gt;


&lt;p&gt;However, we've had more important issues that we expected, because people using VLC have more broken machines/drivers than we thought.
We are still sorting some things, and hope to get everything right for 2.1.0.&lt;/p&gt;


&lt;h2&gt;Robot Rock&lt;/h2&gt;

&lt;p&gt;As you might have seen, I have spent quite a bit of time on VLC for Android, enough to take again the project and release it &lt;img src=&quot;/blog/themes/jbkempf/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Of course, this is a beta, and we have a long and steep road ahead, but we know where to go. More about that in a future post.&lt;/p&gt;


&lt;p&gt;And I hope to be able to bring a surprise on this matter too...&lt;/p&gt;



&lt;h2&gt;Harder, better, faster, stronger&lt;/h2&gt;


&lt;p&gt;Of course, I've been:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;answering on the forum (over 23333 posts), on our mailing lists, and on IRC,&lt;/li&gt;
&lt;li&gt;doing PR and community management,&lt;/li&gt;
&lt;li&gt;adapting new codecs and devices for VLC,&lt;/li&gt;
&lt;li&gt;discussing partnerships to get devices or software pre-releases,&lt;/li&gt;
&lt;li&gt;coding on Windows, Mac, Linux, Android,&lt;/li&gt;
&lt;li&gt;moderating the mailing lists, the wiki, the patchwork, the forum, the trac,&lt;/li&gt;
&lt;li&gt;insulting a few morons,&lt;/li&gt;
&lt;li&gt;relicensing more VideoLAN code to LGPL,&lt;/li&gt;
&lt;li&gt;rewriting the Windows compilation howto,&lt;/li&gt;
&lt;li&gt;modifying our website,&lt;/li&gt;
&lt;li&gt;hacking on other projects, sometimes anonymously,&lt;/li&gt;
&lt;li&gt;coding, talking, presenting, testing...&lt;/li&gt;
&lt;li&gt;having my hair cut,&lt;/li&gt;
&lt;li&gt;bored.... not!&lt;/li&gt;
&lt;/ul&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>It's over 20,000!</title>
    <link>http://www.jbkempf.com/blog/post/2012/Over-20000</link>
    <guid isPermaLink="false">urn:md5:4fda698aa9ced053c1b66a7455f53470</guid>
    <pubDate>Thu, 09 Feb 2012 14:19:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
            
    <description>    &lt;p&gt;I did over 20,000 posts on the &lt;a href=&quot;http://forum.videolan.org&quot; hreflang=&quot;en&quot; title=&quot;VideoLAN Forum&quot;&gt;Videolan Forums&lt;/a&gt; to answer questions...&lt;/p&gt;


&lt;p&gt;You can check &lt;a href=&quot;https://forum.videolan.org/memberlist.php?mode=viewprofile&amp;amp;u=6753&quot; hreflang=&quot;en&quot; title=&quot;my profile&quot;&gt;my profile&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Of course, I am far under &lt;a href=&quot;http://forum.videolan.org/memberlist.php?mode=viewprofile&amp;amp;u=16095&quot; hreflang=&quot;VLC_help&quot;&gt;VLC_help&lt;/a&gt;, who is at 23,700+ posts, but still, it's not too bad...&lt;/p&gt;


&lt;p&gt;A lot of trolls and misunderstanding are there too, because many people still do not understand the concepts of &lt;strong&gt;volunteer&lt;/strong&gt;, &lt;strong&gt;open source&lt;/strong&gt; and &lt;strong&gt;free&lt;/strong&gt;. But well, haters gonna hate.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>VLC 2.0 pour MacOS X</title>
    <link>http://www.jbkempf.com/blog/post/2012/VLC-2.0-pour-MacOS-X</link>
    <guid isPermaLink="false">urn:md5:d186001ece97410a4407da8fc77f7637</guid>
    <pubDate>Mon, 06 Feb 2012 12:41:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>2.0</category><category>Apple</category><category>Blu-Ray</category><category>LGPL</category><category>Mac OS X</category><category>TwoFlower</category><category>VideoLAN</category><category>VLC</category><category>VLC media player</category>    
    <description>    &lt;h2&gt;Intro&lt;/h2&gt;

&lt;p&gt;La nouvelle version de &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VLC&quot;&gt;VLC&lt;/a&gt;, nommée &lt;a href=&quot;http://www.jbkempf.com/blog/tag/TwoFlower&quot;&gt;TwoFlower&lt;/a&gt; ou &lt;a href=&quot;http://www.jbkempf.com/blog/tag/2.0&quot;&gt;2.0&lt;/a&gt;, apporte de nombreuses améliorations et modifications spécifiques à &lt;a href=&quot;http://www.jbkempf.com/blog/tag/MacOS%20X&quot;&gt;MacOS X&lt;/a&gt;.
Ce petit article permet de passer en revue ces améliorations, qui sont souvent peu décrites dans les articles plus généralistes.&lt;/p&gt;


&lt;p&gt;Ces dernières années, le développement de VLC sous OSX a été un peu chaotique et incertain, avec un vrai questionnement sur le futur du projet.
Néanmoins, sur l'année passée, Félix, aidé par plusieurs autres développeurs externes, par le reste de l'équipe de VLC et par un jeune designer, a pris le taureau par les cornes.
Il est évident que de nombreux bugs resteront sur les premières moutures, mais les versions devraient se suivre rapidement pour réparer vos bugs les plus gênants.&lt;/p&gt;


&lt;h2&gt;Nouvelle Interface&lt;/h2&gt;

&lt;p&gt;La modification la plus visible de Twoflower est la nouvelle interface. Cette interface remplace l'ancienne interface, qui datait des premières versions de OSX.&lt;/p&gt;


&lt;p&gt;Tout d'abord, cette interface se présente en une seule fenêtre, pour mieux coller au look actuel des applis OS X.
Ensuite, elle existe en deux couleurs: une version noire, qui ressemble au look QuickTime X, et une version grise, comme pour Lion.
De plus, sous Lion, elle permet de choisir entre le plein écran natif Lion ou le plein écran classique de VLC.&lt;/p&gt;


&lt;p&gt;La plupart des fenêtres utiles lors de la visualisation des vidéos, notamment les filtres audio et vidéo, ont migré vers le style gris transparent HUD.
De nombreuses autres fenêtres ont évolués, mais sans bouleversement.&lt;/p&gt;


&lt;h3&gt;Extensions&lt;/h3&gt;

&lt;p&gt;La nouvelle interface supporte les extensions lua de VLC pour créer des nouvelles fenêtres et fonctionnalités, comme l'intégration IMDB, Wikipedia, OpenSubtitles et autres.
Ce support a été fait tardivement dans le développement, donc une période de stabilisation sera probablement nécessaire.&lt;/p&gt;


&lt;h2&gt;Périphériques&lt;/h2&gt;

&lt;p&gt;Jusqu'ici, sous Mac, VLC ne pouvait lire que la webcam intégrée. À partir de VLC 2.0, un support générique des périphériques QTKit a été ajouté pour l'audio (QTSound) et pour la vidéo (QTCapture). Cela devrait permettre de visionner et de rediffuser les webcams externes USB et FireWire, les microphones ainsi que les cartes DVB et SDI compatibles.&lt;/p&gt;


&lt;p&gt;Au niveau du support Blu-Ray, VLC 2.0 permet de lire des disques et des dossiers non chiffrés de façon limitée, sous Linux et Windows. Une fois que certains bugs seront résolus, cela devrait être aussi le cas sous MacOS X, mais probablement seulement sous Snow Leopard et Lion.
Pour les Blu-Rays chiffrés, la bibliothèque libaacs, n'est pas encore porté sous MacOS X. Avis aux amateurs!&lt;/p&gt;


&lt;h2&gt;Codecs&lt;/h2&gt;

&lt;p&gt;La version MacOS X de VLC 2.0 bénéficiera du même support amélioré des codecs, des formats et des filtres vidéos que les versions des autres plate-formes.
La partie la plus intéressante concerne le décodage multi-threadé des codecs majeurs pour profiter des machines modernes multi-cores.
De nouveaux codecs sont supportés, comme le ProRes, l'AVC/Intra, les codecs 10bits et certaines nouvelles variantes WMV.
Le support des formats de fichiers existants a aussi nettement été amélioré, notamment pour le MKV et le MOV.&lt;/p&gt;


&lt;p&gt;Le décodage GPU sous OSX, aka VDADecoder, n'est pas de la partie dans cette version, pour des raisons de priorité de développement. Sébastien, développeur VLC, a porté le code dans FFmpeg, mais la partie VLC n'est pas encore prête. On espère que cela arrivera dans une version mineure suivante.&lt;/p&gt;


&lt;h2&gt;Sortie vidéo&lt;/h2&gt;

&lt;p&gt;La sortie vidéo, en OpenGL a subit quelques modifications, simplifications et améliorations.
Dorénavant, les sous-titres sont rendus à la taille de la fenêtre de sortie, quel que soit la source et directement fusionnés avec la vidéos en OpenGL. Cela améliore la qualité et la netteté des sous-titres. De plus, l'utilisation de fragment shaders pour faire les conversions d'espace de couleurs, même lorsque la source est en 10bits, devrait améliorer les performances.&lt;/p&gt;


&lt;h2&gt;Support OS X et PowerPC&lt;/h2&gt;

&lt;p&gt;Cette version 2.0 est compatible Leopard, Snow Leopard et Lion.
La version intel 64 bits est la version prioritaire pour Snow Leopard et Lion, car elle seule a le support natif du plein écran sous Lion. La version intel 32 bits fonctionne quant à elle aussi sous Leopard.
Il existe toujours une version powerpc pour Leopard, mais qui n'est testée que sous G5, faute de matériel. Cette version powerpc supporte aussi le multi-threading pour le décodage des formats HD, pour ne pas jeter tout de suite les derniers Mac Pro G5 &lt;img src=&quot;/blog/themes/jbkempf/smilies/wink.png&quot; alt=&quot;;)&quot; class=&quot;smiley&quot; /&gt; Il est cependant possible que la prochaine version majeure (2013?) ne supporte plus cette architecture.&lt;/p&gt;


&lt;h2&gt;Le futur&lt;/h2&gt;

&lt;p&gt;Plusieurs pistes de travail sont en cours: finir l'interface et la peaufiner pour palier aux manques qui seront forcément présents dans les premières versions, travailler sur le support Blu-Ray qui reste trop basique, intégrer le code pour le décodage GPU et changer la licence de VLCKit vers la &lt;a href=&quot;http://www.jbkempf.com/blog/tag/LGPL&quot;&gt;LGPL&lt;/a&gt; afin de permettre de construire des applications non-GPL au-dessus du moteur de VLC.&lt;/p&gt;


&lt;p&gt;&lt;strong&gt;Nota Bene:&lt;/strong&gt; Cet article a été écrit par mes soins et donné gracieusement à MacBidouille et Mac4ever.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>VLC 1.2: nouveautés</title>
    <link>http://www.jbkempf.com/blog/post/2011/VLC-1.2-nouveautes</link>
    <guid isPermaLink="false">urn:md5:a1ae4069348fb140b086369445757592</guid>
    <pubDate>Wed, 14 Dec 2011 13:00:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>2.0.0</category><category>VideoLAN</category><category>VLC</category><category>VLC media player</category>    
    <description>    &lt;p&gt;Un an et demi après la dernière version majeure (1.1.0), &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VLC&quot;&gt;VLC&lt;/a&gt; revient avec une nouvelle version: &lt;a href=&quot;http://www.jbkempf.com/blog/tag/1.2&quot;&gt;1.2.0&lt;/a&gt;, disponible en pré-version de test. L'occasion de revenir sur les nouveautés de cette version.&lt;/p&gt;


&lt;p&gt;Avec près de 8000 changements fait par 150 développeurs, 600 bugs fermés et près de 200 000 lignes de code modifiées, cette version est une des versions les plus importantes de VLC. Plus d'informations sur &lt;a href=&quot;http://www.jbkempf.com/blog/post/2011/Who-wrote-VLC-1.2&quot;&gt;les contributeurs de VLC 1.2&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;De son petit nom &amp;quot;&lt;strong&gt;TwoFlower&lt;/strong&gt;&amp;quot; (qui vient de l'univers DiscWorld), les principales nouveautés de VLC portent sur les sorties vidéos, les nouveaux codecs, le support des Blu-Ray et les interfaces.&lt;/p&gt;


&lt;p&gt;&lt;strong&gt;Nota Bene:&lt;/strong&gt; ce post est un écrit qui a servit de base à un article de &lt;a href=&quot;http://www.pcinpact.com&quot;&gt;PCINpact&lt;/a&gt; que vous trouverez &lt;a href=&quot;http://www.pcinpact.com/news/67598-vlc-12-twoflower-nouveautes-telechargement.htm&quot; hreflang=&quot;fr&quot;&gt;en ligne&lt;/a&gt;.&lt;/p&gt;


&lt;h2&gt;Coeur Vidéo&lt;/h2&gt;

&lt;p&gt;Les modifications les plus importantes, mais aussi moins visibles, portent sur la réécriture du coeur vidéo et les modules d'affichage à l'écran.&lt;/p&gt;


&lt;h3&gt;Sous-titres&lt;/h3&gt;

&lt;p&gt;Dans les versions actuelles de VLC, les sous-titres textes ont souvent une mauvaise qualité de rendu, notamment lors de visionnage de vidéo SD sur des écrans HD. En effet, pour des raisons de performance, VLC rend les sous-titres à la taille de la vidéo, puis les intègre dans la vidéo avant de les passer à la carte graphique en une seule texture, qui fait le scaling de l'ensemble. Dans certains cas, les sous-titres sont crénelés et de mauvaise qualité.&lt;/p&gt;


&lt;p&gt;Sous TwoFlower, un nouveau mode de rendu est possible: VLC envoie 2 textures à la carte graphique, une pour la vidéo, à sa taille d'origine et une pour les sous-titres, à la taille de l'écran. La carte graphique se charge du scaling de la vidéo et d'afficher l'ensemble. Le résultat est bien plus agréable, mais demande du matériel plus récent.&lt;/p&gt;


&lt;p&gt;Ce nouveau mode de rendu est disponible pour les sorties Direct3d pour Windows, OpenGL pour Linux et MacOS X et x11 pour Linux.&lt;/p&gt;



&lt;h3&gt;Shaders, 3D et performance&lt;/h3&gt;

&lt;p&gt;Le nouveau coeur vidéo permet aussi des améliorations de performances en déchargeant plus de calculs sur le GPU, lorsque cela est possible.&lt;/p&gt;


&lt;p&gt;Par exemple, l'utilisation de shaders ARB dans la sortie vidéo OpenGL permet de faire les conversions YUV vers RGB sur le GPU, même en profondeur de 10 ou 12bits.&lt;/p&gt;


&lt;p&gt;De plus, les bases des shaders sous Direct3d et de l'affichage 3D ont été ajoutés pour les prochaines versions. Un fork de VLC permet déjà l'affichage 3D sous nVidia Stereo Vision.&lt;/p&gt;


&lt;h3&gt;Filtres vidéos&lt;/h3&gt;

&lt;p&gt;VLC 1.2 voit l'ajout de nombreux filtres vidéos, certains connus, comme hqdn3d (suppression du grain), ou gradfun (suppression des gradients), d'autres originaux comme un nouveau filtre de grain, un filtre d'inverse téléciné ou un filtre de stabilisation pour les caméscopes.&lt;/p&gt;


&lt;h2&gt;Codecs, Formats&lt;/h2&gt;

&lt;p&gt;VLC TwoFlower, comme à chaque version, apporte le support de nombreux nouveaux codecs, formats de fichiers et périphériques.&lt;/p&gt;


&lt;p&gt;Un support limité des Blu-Rays est donc intégré sur toutes les plate-formes. La configuration est compliquée et peu documentée, et une grosse proportion des Blu-Rays n'est pas supportée du tout. Les menus ne sont pas activés non plus. Ceci étant dit, c'est un premier pas.&lt;/p&gt;


&lt;p&gt;L'ajout des protocoles de streaming adaptatifs HLS et DASH, des périphériques de capture de vidéo sous MacOS et des cartes d'acquisition professionnelles de types SDI viennent compléter le tableau au niveau du support des périphériques et protocoles.&lt;/p&gt;


&lt;h3&gt;Codecs&lt;/h3&gt;

&lt;p&gt;Au niveau codecs, le décodage multi-coeur est dorénavant possible et activé en H.264, DivX, VP3/Theora, Jpeg2000 et Webm/VP8, ce qui peut apporter des améliorations très importantes en performance, notamment en Full-HD. VLC était, sur ce point là, bien en-dessous des packs de codecs du style CoreAVC.&lt;/p&gt;


&lt;p&gt;Autre ajout important, notamment pour les professionnels et les fans d'animation japonaise, les codecs en profondeur 10bits, en H.264, Jpeg2000, DNxHD et ProRes sont dorénavant décodés et correctement affichés.&lt;/p&gt;


&lt;p&gt;En plus du support de nouveaux codecs, de très nombreuses améliorations ont été apportés à l'existant, notamment au niveau décodage audio et sous-titres HD, au support des méta-données, des codecs RealVideo, des images fixes et des formats Matroska et MPEG-2 TS.&lt;/p&gt;


&lt;p&gt;Enfin, le décodage matériel est dorénavant supporté pour les cartes CrystalHD et les smartphones avec OpenMax IL, sous Android.&lt;/p&gt;


&lt;h4&gt;Interfaces&lt;/h4&gt;

&lt;p&gt;Les interfaces de VLC ont toujours été les parents pauvres de ce logiciel, notamment sous Mac OS X.&lt;/p&gt;


&lt;p&gt;Cette version introduit donc une réécriture complète des interfaces Mac OS et Web.&lt;/p&gt;


&lt;p&gt;L'interface Mac OS se présente dorénavant en une seule fenêtre, avec une barre latérale, comme iTunes ou Mail.
2 styles sont possibles dans les préférences: le noir de QT X et le gris de Lion. La plupart des fenêtres secondaires utilisent la transparence...&lt;/p&gt;



&lt;h2&gt;Ports&lt;/h2&gt;

&lt;p&gt;La version 1.2 de VLC apporte le portage de VLC sous iOS, Android, OS/2 et Windows 64bits.&lt;/p&gt;


&lt;p&gt;Pour cela, le coeur de VLC a été adapté, des sorties audio et vidéo pour iOS, Android, OS/2 et Direct2d ont été ajoutées, et de nombreuses optimisations assembleurs ARM, ont été écrites.&lt;/p&gt;



&lt;h2&gt;libVLC en LGPL&lt;/h2&gt;

&lt;p&gt;La dernière chose importante de VLC 1.2.0, c'est le passage du coeur de VLC (libVLCcore et libVLC) de GPLv2 vers LGPLv2.1. Cela permet aux développeurs utilisant une autre licence que la GPL d'utiliser le moteur de VLC.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>VLC 1.2.0 features: part 2, formats</title>
    <link>http://www.jbkempf.com/blog/post/2011/VLC-1.2.0-features-formats</link>
    <guid isPermaLink="false">urn:md5:2ccd9eaea7348339da93492ef546754b</guid>
    <pubDate>Mon, 05 Dec 2011 20:46:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>1.1.x</category><category>2.0.0</category><category>Blu-Ray</category><category>DASH</category><category>DVD</category><category>HLS</category><category>QTKit</category><category>VideoLAN</category><category>VLC</category>    
    <description>    &lt;h2&gt;VLC 1.2.0&lt;/h2&gt;

&lt;p&gt;I've spoken already about &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VLC&quot;&gt;VLC&lt;/a&gt; &lt;a href=&quot;http://www.jbkempf.com/blog/tag/1.2.0&quot;&gt;1.2.0&lt;/a&gt;, especially about &lt;a href=&quot;http://www.jbkempf.com/blog/post/2011/VLC-1.2.0-part1&quot;&gt;video&lt;/a&gt;, &lt;a href=&quot;http://www.jbkempf.com/blog/post/2011/VLC-1.2.0-part1b&quot;&gt;video again&lt;/a&gt; and &lt;a href=&quot;http://www.jbkempf.com/blog/post/2011/Who-wrote-VLC-1.2&quot;&gt;authoring&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;However, I haven't spoken about the &lt;strong&gt;format&lt;/strong&gt; supported in VLC 1.2, even if there were &lt;a href=&quot;http://www.jbkempf.com/blog/post/2011/Disc-libraries-releases&quot;&gt;some hints&lt;/a&gt; in &lt;a href=&quot;http://www.jbkempf.com/blog/post/2011/Disc-libraries-releases&quot;&gt;my last post&lt;/a&gt;.&lt;/p&gt;


&lt;h2&gt;Discs and devices&lt;/h2&gt;

&lt;h3&gt;Blu-Ray&lt;/h3&gt;

&lt;p&gt;One of the major cool thing of 1.2, will be a &lt;em&gt;(very partial)&lt;/em&gt; support for &lt;a href=&quot;http://www.jbkempf.com/blog/tag/Blu-Ray&quot;&gt;Blu-Rays&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Through the VideoLAN project &lt;a href=&quot;http://www.videolan.org/developers/libbluray.html&quot; hreflang=&quot;en&quot; title=&quot;libbluray&quot;&gt;libbluray&lt;/a&gt;, VLC 1.2 should be able to open unencrypted disks and backup folders.&lt;/p&gt;


&lt;p&gt;Playback of commercially encrypted disks is also doable, but I won't detail the setup here.&lt;/p&gt;


&lt;h3&gt;DVDs&lt;/h3&gt;

&lt;p&gt;The whole stack of &lt;a href=&quot;http://www.jbkempf.com/blog/tag/DVD&quot;&gt;DVD&lt;/a&gt; playback libraries has been updated for VLC 1.2.0.&lt;/p&gt;


&lt;p&gt;The releases of libdvdnav, libdvdread, libdvdcss should help to playback more recent disks and fix quite a few annoying issues.&lt;/p&gt;


&lt;h3&gt;Capture devices&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;In addition to quite a few fixes on DirectShow and V4L2 capture modules, QTCapture and QTSound capture modules were added for VLC for MacOS X. Requiring QuickTime 7.6.3, it should allow VLC to play, record and stream any &lt;a href=&quot;http://www.jbkempf.com/blog/tag/QTKit&quot;&gt;QTKit&lt;/a&gt; device.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;Decklink and DVEO/Linsys/ComputerModules SDI and SDI-HD cards are now supported as input.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;PulseAudio devices are now supported as input too.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;File formats and protocols&lt;/h2&gt;

&lt;h3&gt;Adaptive Streaming&lt;/h3&gt;

&lt;p&gt;VLC 1.2 should support, at least partially:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;HTTP live streaming, aka &lt;a href=&quot;http://www.jbkempf.com/blog/tag/HLS&quot;&gt;HLS&lt;/a&gt;, in both live and VOD mode;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.jbkempf.com/blog/tag/DASH&quot;&gt;MPEG DASH&lt;/a&gt;, aka Dynamic Adaptive Streaming over HTTP, in at least 2 profiles.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Those are still under heavy work, help is &lt;em&gt;welcome&lt;/em&gt;.&lt;/p&gt;


&lt;h3&gt;File formats&lt;/h3&gt;

&lt;p&gt;First, we will have a completely rewritten support for still images playback. The removal of the old fake module should help to make simpler diaporamas with VLC.&lt;/p&gt;


&lt;p&gt;Of course, VLC supports new formats, like caf, mtv, awb, f4v, amr, vro (DVD-VR), VDR recordings folders, EBU subtitles (stl). It also supports sid files, from Commodore 64.&lt;/p&gt;


&lt;p&gt;The most important improvements to our existent formats should concern Matroska and TS.&lt;/p&gt;


&lt;p&gt;A lot of work has been spent on our Matroska demuxer, to handle split-segments and correct seeking. There is still some work to do, but it should be light-year ahead of VLC &lt;a href=&quot;http://www.jbkempf.com/blog/tag/1.1.x&quot;&gt;1.1.x&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;For broadcast and professional people, in addition to the STL subtitles, we have now durations in the Mpeg2 TS files.&lt;/p&gt;


&lt;h3&gt;Metadata&lt;/h3&gt;

&lt;p&gt;Finally, we've worked quite a bit on the Metadata support for most file formats.&lt;/p&gt;


&lt;p&gt;APE tags, Ogg tags, seeking in flv, mxf, amr should be better supported. Also, as frequently requested, embedded cover arts in wmv, asf, wma are now correctly detected. The missing bits for cover art support are mainly for MKV and APE formats.&lt;/p&gt;


&lt;p&gt;Styles for various subtitles formats are also better supported, especially for simple file formats.&lt;/p&gt;


&lt;h2&gt;Codecs&lt;/h2&gt;


&lt;p&gt;Codecs support has also improved quite a bit, but that's for the next blogpost. :D&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Disc libraries releases: bluray, aacs, dvdcss</title>
    <link>http://www.jbkempf.com/blog/post/2011/Disc-libraries-releases</link>
    <guid isPermaLink="false">urn:md5:6e1cb9288c01fba89be97acc043ec593</guid>
    <pubDate>Sat, 03 Dec 2011 13:36:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>2.0</category><category>Blu-Ray</category><category>DVD</category><category>VLC</category>    
    <description>    &lt;p&gt;So, we are working quite actively on &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VLC&quot;&gt;VLC&lt;/a&gt; &lt;a href=&quot;http://www.jbkempf.com/blog/tag/1.2&quot;&gt;1.2&lt;/a&gt;. Many improvements were merged into &lt;a href=&quot;http://www.jbkempf.com/blog/tag/VLC&quot;&gt;VLC&lt;/a&gt; 1.2, notably for &lt;a href=&quot;http://www.jbkempf.com/blog/tag/DVD&quot;&gt;DVD&lt;/a&gt; and &lt;a href=&quot;http://www.jbkempf.com/blog/tag/Blu-Ray&quot;&gt;Blu-Ray&lt;/a&gt; playback.&lt;/p&gt;


&lt;p&gt;Therefore, there were a few releases of libraries used by VLC, lately.&lt;/p&gt;


&lt;h2&gt;libbluray 0.2.1&lt;/h2&gt;

&lt;p&gt;A contrario of this weird number, this is actually the &lt;strong&gt;first release&lt;/strong&gt; of &lt;a href=&quot;http://www.videolan.org/developers/libbluray.html&quot; hreflang=&quot;en&quot; title=&quot;libbluray&quot;&gt;libbluray&lt;/a&gt; that is usable.&lt;/p&gt;


&lt;p&gt;&lt;strong&gt;libbluray&lt;/strong&gt; is an open-source library designed for &lt;a href=&quot;http://www.jbkempf.com/blog/tag/Blu-Ray&quot;&gt;Blu-Ray&lt;/a&gt; Discs playback for media players, like VLC, xine or MPlayer.&lt;/p&gt;


&lt;p&gt;It could be seen as the equivalent to libdvdnav, but for Blu-Ray Discs.&lt;/p&gt;


&lt;h2&gt;libaacs 0.3.0&lt;/h2&gt;

&lt;p&gt;In spite of this weird number too, this is actually the &lt;strong&gt;first release&lt;/strong&gt; of &lt;a href=&quot;http://www.videolan.org/developers/libaacs.html&quot; hreflang=&quot;en&quot; title=&quot;libaacs&quot;&gt;libaacs&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;&lt;strong&gt;libaacs&lt;/strong&gt; is an open-source library implementing the AACS specification, for all systems, for interoperability.&lt;/p&gt;


&lt;p&gt;True, stand-alone, it is of very little use :D&lt;/p&gt;


&lt;h2&gt;libdvdcss 1.2.11&lt;/h2&gt;

&lt;p&gt;I am, de facto, the new maintainer of &lt;a href=&quot;http://www.videolan.org/developers/libbluray.html&quot; hreflang=&quot;en&quot; title=&quot;libdvdcss&quot;&gt;libdvdcss&lt;/a&gt;. &lt;em&gt;Congratz&lt;/em&gt; to me!&lt;/p&gt;


&lt;p&gt;Therefore, I've done a release: &lt;strong&gt;1.2.11&lt;/strong&gt;.&lt;/p&gt;


&lt;p&gt;This is just a boring release, just to incorporate patches and small maintenance, but shows that the project is still alive.&lt;/p&gt;


&lt;h2&gt;Other libraries&lt;/h2&gt;


&lt;p&gt;I just wanted to mention that:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;libdvdnav 4.2.0&lt;/li&gt;
&lt;li&gt;libdvdread 4.2.0&lt;/li&gt;
&lt;li&gt;libdvbpsi 0.2.2 (not disc related)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;were released too, in the last weeks.&lt;/p&gt;


&lt;p&gt;Those projects are still alive and maintained. Cool.&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Who wrote VLC 1.2?</title>
    <link>http://www.jbkempf.com/blog/post/2011/Who-wrote-VLC-1.2</link>
    <guid isPermaLink="false">urn:md5:e7e60df2785bb2d11c31247cc9e1356c</guid>
    <pubDate>Mon, 28 Nov 2011 15:42:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>VideoLAN</category>
        <category>2.0.0</category><category>VideoLAN</category><category>VLC media player</category>    
    <description>    &lt;h2&gt;VLC 1.2&lt;/h2&gt;
So, VLC 1.2.x is approaching. But who wrote it?
Here are some statistics computed by &lt;a href=&quot;http://www.remlab.net&quot; hreflang=&quot;en&quot; title=&quot;Rémi&quot;&gt;Rémi&lt;/a&gt;.
&lt;iframe src=&quot;http://www.jbkempf.com/blog/public/VideoLAN/stats-1.2.html&quot; style=&quot;background: white; position: relative;&quot; height=&quot;800px&quot; width=&quot;550px&quot;&gt;You need iframe to read this.&lt;/iframe&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Dotclear 2.4 upgrade</title>
    <link>http://www.jbkempf.com/blog/post/2011/Dotclear-2.4-upgrade</link>
    <guid isPermaLink="false">urn:md5:5cae74ad36059eaf5a284f4c74dded93</guid>
    <pubDate>Wed, 23 Nov 2011 14:00:00 +0100</pubDate>
    <dc:creator>Jean-Baptiste Kempf</dc:creator>
        <category>Geek &amp; Computer</category>
        <category>dotclear</category>    
    <description>    &lt;p&gt;Yet another upgrade of &lt;a href=&quot;http://www.jbkempf.com/blog/tag/Dotclear&quot;&gt;Dotclear&lt;/a&gt; for this blog. The version is now 2.4.0.&lt;/p&gt;


&lt;p&gt;All went absolutely fine, as usual, except the need to edit the config.php to add a line like this:&lt;/p&gt;


&lt;p&gt;&lt;code&gt;define('DC_ADMIN_MAILFROM','foo@bar.com');&lt;/code&gt;&lt;/p&gt;


&lt;p&gt;And after relogging into the admin section, a new style is there, your dotclear with the same cools things and almost the same issues...&lt;/p&gt;</description>
    
    
    
      </item>
    
</channel>
</rss>