Update on the Windows RT port of VLC Player

Update on the Windows RT port of VLC Player

I love VLC Player, I have it installed on my Windows machines, Mac, Android and recently the app returned to iOS. The one platform that is still missing is Windows RT, Videlan raised funds via a Kickstarter project at the end og last year and it looks like they are getting close to releasing the first version. In a post on one of the developers blog there is an update on the current state of the project (in French).

The developer points out that the VLC team didn’t stop working on the Windows RT version so they could ship the iOS version as many people speculated and that the project is still on track and they are very close to shipping a version to the store for the backers to begin testing. When they started out there were a number of program calls that needed recoding to make VLC compatible with the Windows Store and that count is down to 5 from 16 a couple of months ago, once the remaining calls are fixed the app will be ready for test so it shouldn’t be that long now.

So, last time we spoke about our advance, we had to fix 16 forbidden calls to 4 Windows dll, from 5 dlls and all the socket code. And those required WinRT direct calls from C.

We fixed most of the issues, including the WinRT static calls, meaning that we rewrote a lot of idl, idl tools and header files. We are at 5 forbidden calls (3 tonight, I hope), to 1 Windows dll, from only the VLC core. We still have the socket code to fix though.

The remaining calls are on the threading initialization, and so far, we are not able to create those WinRT objects from a C codebase. We are looking at alternatives, including using a C++ library to work-around this issue.

For the socket code, we have an idea for that too, and I hope I can share it soon to you.

As soon as we are down to 0 calls, we can upload something on the store, for the backers to test it.

 

Share

3 thoughts on “Update on the Windows RT port of VLC Player

Leave a Reply

Your email address will not be published. Required fields are marked *