Share this project


Share this project

VLC for Windows 8. A native app, fully featured and fully open source. Play all your files, streams and optical media.
Created by
3,080 backers pledged £47,056 to help bring this project to life.

VLC For Win8: building the new compatibility layer

Posted by VideoLAN (Creator)

Dear backers,

Today, I would like to share an article by Geoffroy with you, covering some technical aspects of the port to Windows 8, RT and Phone.

Additionally, I would like to mention that we crossed the threshold of 90 % of our goal today and it's 7 more days to go. Thanks a lot to the more than 2,200 of you who make this possible! Let's go on on this track!

For the VLC for Windows 8 team,



As you know, we are doing a KickStarter for the Windows 8 (WinRT) port of VLC media player. The goal is to take our existing code, which already works on Windows 8’s “desktop mode”, and make it run on WinRT, the “Metro” interface.

Porting code to WinRT offers significant challenges, mainly caused by the changes in the APIs. A lot of functions we were using, like LoadLibrary, are not available anymore, and replaced by slightly different functions (like LoadPackagedLibrary:). Those might not be too hard to integrate into our current code base.

Other APIs, like sockets, were replaced by their COM interfaces counterpart (for instance Windows.Networking.Sockets). They are used to provide asynchronous interfaces for code running under WinRT. They got inspiration from mobile applications and the “always responsive” goal: a WinRT application should not use blocking code, and should go to sleep or wake up quickly if needed. With COM interfaces, the code polling the socket is executed in another process, and the data is provided through a callback. This changes a bit the usual networking code (connect-\>select-\>read-\>select\>…) and we need to write a large layer of compatibility code.

After all of that, we still have to solve the issue of packaging. We already experimented a bit with side loading, which offers an easy way to distribute applications, but the real goal is to push VLC media player to the Windows Store.

So, why are we doing this? Windows 8 is happening, it is now pre-installed on most of the new computers.

Why am I excited to work on this port? This KickStarter will give us the opportunity to work full time on WinRT for a few months, and solve all these challenges for us, but also for other open source projects. We already know how to create a compatibility layer for different operating systems, so we will be able to build one for WinRT. We could also come up with guidelines on using free software toolchains to build WinRT applications.

Basically, we’re paving the way to WinRT for Open Source libraries and applications, with the nice side effect on running VLC on Windows 8.


Only backers can post comments. Log In
    1. VideoLAN Creator on

      @KIKOS: yes, of course!

    2. Missing avatar

      Scotty Sorrell McLeod on

      Echo Dane's wish for NAS support

    3. Missing avatar

      Dane Reynolds on

      hey, you need Media server support.... the Surface doesn't have much memory to keep video files.

      i only use NAS Drives so please could you add support for this. :)


      Good Job!

    4. Missing avatar

      Kasi Viswanath on


      I would like to congratulate and thank the VLC team for this.
      VLC Player is undoubtedly one of the best video players in the market today.

      I would be interested to know if VLC would try to be one of the best music player as well?
      There are many features missing in the native Windows Phone 7.5/8 music player and I wish VLC can address those in its player. Few of the features could be:
      1. Finger seeking
      2. Folder Play/Display
      3. Tags editing
      4. Very light on resources like CPU/RAM (when run as music player)

      If my request doesn't make sense, please feel free to ignore,


    5. Missing avatar

      Scotty Sorrell McLeod on

      your close and its nice to see you feeding back into the community

    6. Magnetro Chen on

      @Dima: as long as we follow the existing rules for "Modern" framework it's easy to do a port in WP8, WinRT and Windows 8. It's few clicks away in the Microsoft development tool to do that once you have written the code. Well different form factor might require some work to fit the screen resolution if the app is using too many bitmap images, otherwise it would works just fine. We can see the VLC moving to WP8 once VLC codebase finally blend in the WinRT Modern environment!

    7. Coco Geek on

      We' re near the goal, are you going to put new streach goal ?

    8. Magnetro Chen on

      Not everyone knows the kick-starter is one thing, 2278 (as what I am seeing now) and reaching 90% goal still a good benchmark for VLC gurus doing such kind of project funding on kick-starter for the first time. the VLC is being downloaded for multi-million times, everyone who donates to the project can help the VLC player being downloaded for millions in the future and not to mention that we are backed with VLC folks to make the world a better place.

    9. Dima Pursanov on

      Nice to hear that! Actually i want windows phone 8 version more, but WinRT is the beginning. As i know its not that hard to port winRT-> WP8 or WP8 -> winRT.

    10. Missing avatar

      KIKOS on

      Hi guys !

      Thanks for the update.

      It's a little sad to see only 2000 backers when I'm sure this app will be downloaded a million times !

      Anyway, Kickstarter was a very good idea IMO.

      Quick question :

      Will there be a possibility for backers to have access to early builds for beta testing ?

    11. VideoLAN Creator on

      @Gavin: it will support MKV.
      @Dane: it is in the scope, but not sure if it will come at the first release or not...

    12. Gavin Greenwalt on

      What's most important to me as a VLC user on Surface is MKV. My vote would be to focus on getting a good media player out the door and then worrying about streaming/network issues.

    13. Missing avatar

      Dane Reynolds on

      I'd like to thank the team for doing it, i've been waiting for a 'Good' video player.

      also i was wondering if it will support for media servers and NAS Drives?