VLC media player development and general info on VideoLAN.

Entries feed - Comments feed

Tuesday, October 6 2015

This week in VideoLAN - 20

20th week of VideoLAN reports

For the 20th time, here is the weekly report of what has happened in the VideoLAN community and VLC development, during the past week.

I'm surprised to have been keeping at it for already 5 months. It's a bit boring to do, and also a bit lonely, but I believe it is necessary so that everyone knows what's going on.

Features and changes


For once, we'll start with libVLC, and the new libVLC backend for EFL/Emotion. You can now use libVLC easily in an EFL or Elementary application!


Last week started with Felix fixing an open bug on the Lua extensions of VLC on OS X.

Then, we received a new audio output for the Tizen Operating System.
So far, it works quite fine on Tizen 2.3 but has extra features on 2.4. The audio/video synchronization is not yet complete, though.

The iOS OpenGL video output was improved to support OpenGL off the main-thread and multiple OpenGL contexts in a sharegroup (multi-thread OpenGL for the n00bs like me in OpenGL).

The libVLC port for tvOS was also improved, notably to correctly disable ARMv7 assembly, that cannot run on the Apple TV.

There were also changes to speed up subtitles sorting and fixes on TTML, WPL, adaptive streaming, and the videotoolbox module.


There was a 0.9.0 libbluray release on Saturday, that mostly added:

  • new API to access files from the VFS, useful for embedded subtitles,
  • largely improved support of the BD-J menus and features,
  • and better support for usage in C++ projects.

It should be integrated in the next major version of VLC.


The week was extremely busy on the WinRT side: we've had more than 140 commits in a week!

The commits were mostly to fix more of the 1.7.0 release issue, but also adding features:

  • a new way to log all the information and a feedback system to send us the logs, so we can fix the bugs,
  • prepare the live tiles for the UWP Project,
  • use the operating system accent color, if you want it!
  • right-click menu support for mouse users,
  • zoom features on the video player,
  • add a vlc:// protocol,
  • string cleaning, translations and a French translation!
  • propagate better the light theme,
  • fix biography and database refreshing issues,
  • kill warnings, and use more C# 6 features,
  • prepare transition for Window 10 universal applications.

Let's hope 1.8.0 can be out next week!


Not much on Android, this week, just a couple of bugfixes.


Quite a few things happened on the Tizen port, and we have a basic application running well.
More on this in a later post, I believe :)


iOS received a few fixes for:

  • GDrive support,
  • Spotlight indexing,
  • RTL support,
  • collection view sizes, and transparency issues,
  • and a few other bugs :)

The tvOS port had a few changes, notably on the bitcode integration. More on this, a bit later, when we have something to show.

That's quite a bit for this week! See you next!

Sunday, October 4 2015

libbluray 0.9.0

Almost 6 months after libbluray 0.8.0, I'm delighted to announce libbluray 0.9.0!

We published, in the meantime, a version 0.8.1, that was focused on fixing the biggest regressions of 0.8.0.
Between 0.8.0 and 0.9.0, we had around 100 commits.

libbluray 0.9.0 introduces a few cool features:

  • new API to access files from the VFS: bd_get_meta_file() and bd_read_file(), this is useful for embedded subtitles,
  • better support for usage in C++ projects
  • largely improved support of the BD-J menus and features
  • fixed Xlet font-caching (with security checking)
  • caching of BD-J bdjo objects
  • numerous fixes for crashes and small issues

Have fun testing it!

Tuesday, September 29 2015

new libVLC backend for EFL/Emotion

This is quite short a post about libVLC in EFL (Enlightenment).

Emotion is the multimedia API of the Enlightenment Foundation Libraries (EFL) used in the e17 desktop environment. It is similar to KDE's phonon.

For a long time, the libVLC backend for Emotion was not a full backend, but was considered as a generic player, mainly because of the license, at the time.
The 2 full backends in EFL were based on GStreamer and Xine.

Since last week, there is now a FULL Emotion backend based on libVLC: see libVLC emotion commit.


  • It requires libVLC 3.0.0
  • It supports the major part of the Emotion API, including some that the other backends don't support,
  • It misses visualization support because there is no libVLC API for this yet,
  • It misses mouse events support because there is no libVLC API for this yet,
  • It misses some events, notably to change the DVD angles and some other we did not understand,
  • It's not yet the fastest, because it would require a new video output in VLC.

We will use that backend to port VLC on Tizen :)

Please test it and report bugs :)

Monday, September 28 2015

Last weeks in VideoLAN - 19

19th week of VideoLAN reports

Because of the VideoLAN Dev Days that happened last week-end, here is a dual-week report of what has happened in the VideoLAN community and VLC development, during the past 2 weeks. :D

It explains also why there may not be as many commits as we usual have. This report is also shorter because I don't have enough time to detail as much as I'd like.

VDD 2015

The VideoLAN Dev Days 2015 were a huge success, with numerous attendees and quite a few nice conferences.

I'll do a longer post about it, but here is a nice picture during one of our meetings!

Features and changes


We've finally merge the work from outreachy on the TTML subtitles. Largely reworked by Hugo, this makes it supports most of the styles from the TTML specification.
We still need a bit of work to merge multiple styles.

François worked on the subtitles support for DASH and HLS, because we had quite a few issues with subtitles streaming input; be careful, it is not ready yet. :)
He also worked on lazy-loading of the playlists, mp4 seeking.

David found a work-around for AirPlay output that was stuttering, on OS X.

We've had large refactoring on the OS X interface, to continue the cleaning, that you've seen in the past weeks.

Rémi worked on the avcodec direct-rendering support, to always assume edge-emulation; and on simplifications of the hardware decoding setup in this module.

This work introduced 2 calls in the core: decoder_GetPicture() and picture_pool_Wait(). The first can be used instead of decoder_NewPicture() when the decoder manages correctly the format updates. The latter is a variant of picture_pool_Get() that sleeps until a picture is available.
This could be useful for the future asynchronous decoding feature...

Finally, we've had fixes on the Mac OS X advanced preferences, the iOS vout, the Direct3D11 video output, a 2.2.0 WMV regression, videotooolbox crashes.


The iOS port has been quite busy, starting by fixes for iOS 9.

We did a release numbered 2.6.5 of VLC for iOS.

The MediaLibraryKit project was updated for iOS 9 and for tvOS.

We've also had fixes for WatchOS, for iOS 9 searches, for the database indexing, and thumbnails.

We've also disabled the search if the folder is hidden behind a passcode, to avoid embarrassing results. :)


We did a 1.7.0 release for Windows Phone, Windows RT and Windows 8.1/10.

This is major WinRT release, adding the hardware decoding, changing a lot of the internal, and improving the interface to match Windows 10 look.

We've updated the projects to support both a Universal Windows Project and a Windows 8.1 project.

We've fixed a few bugs from this 1.7.0 release, notably crashes.


After the 1.5.90 release, things have been quiet on the Android front.

We've had translations updates, fixes for crashes, fixes for last playlist resuming, playlist&random states on resume and a few other small bugs.

Finally, yours truly fixed a very important bug, where we exported more than 14000 symbols in instead of 200. This will make the binary quite smaller and faster to load.

Wednesday, September 16 2015

The future of codecs is at VideoLAN Dev Days '15

VideoLAN Dev Days 15

Like the last few years, we are organizing the VideoLAN Dev Days, this week-end, in Paris.

The conference is nicely hosted by the French unicorn Criteo and sponsored by Google and Videolabs.

Last year was in Dublin:

New Codecs conferences

This year, we'll have quite a few nice talks, focused on all the new and future of open and open source codecs!

In fact, we will have talks about VP10, Daala, Thor and x265.

Video codec Talks

Alex Converse, from Google, will speak about the future development of VP10.

Timothy Terriberry, from Mozilla, will speak about the ongoing development of Daala, and do an update compared to what he spoke about last year, at VDD14.

Thomas Davies, from Cisco, for his first time at VDD, will speak about the new codec named Thor.

Finally, Deepthi Nandakumar, from MCW, will speak about x265, the new implementation of the H.265 encoder, inspired by x264.

Clearly, the fight between the new generation codecs is just beginning! :D

Other talks

We will have talks about VLC 3.0, the speedup of the VP9 decoder in FFmpeg, a new AAC encoder for FFmpeg and the open source community, and a few other surprise talks!

Come and see us!

Monday, September 14 2015

This week in VideoLAN - 18

18th week of VideoLAN reports

Here is the weekly report of what has happened in the VideoLAN community and VLC development, during the past week.

Features and changes


The week started with the addition of a long-asked feature in VLC: hotkeys to increase and decrease the size of the subtitles, without going to preferences or restarting VLC.

We then had several fixes for the Bluray support and mostly BD-J menus, that should now work correctly in VLC.

The skins2 module was fixed for some windows managers like Gnome 3 and Unity that could sometimes keep the taskbar above VLC.

The big mutex that we had for Android decoders and video output was removed by Thomas, after a big fight.

Thomas also modified the core loading of decoders and packetizers: we now always packetize. This is done in preparation of the asynchronous decoding that we'd like to merge inside VLC.

François rewrote some parts of the mp4 demuxer related to seeking to improve fragmented MP4 and adaptive streaming support.

We've also had numerous fixes and improvements for the Direct3D outputs, but also for the OS X code signatures, SFTP input, libVLC playlists, Video Toolbox and subtitles handling.

Oh, and one more thing... we started to prepare VLC for tvOS. :)


This week was mostly a preparation for the next major release.

What we mostly did was fixing bugs, notably in audio playback, in cover art management, chapters display and in the bitmap cache.

We largely modified our Android Thumbnailer to fix regressions and support DVD thumbnails.

We also tweaked a bit the interface for advanced options and started to load asynchronously the images for the video list.

Finally we updated all the translations and pushed a version numbered 1.5.90 on the Play Store, in beta.


On iOS, we prepared and pushed the 2.6.5 release, fixing a couple of regressions, notably the handling of the vlc:// protocol.

The master was updated to match the latest libVLC 3.0.0 which we will base 2.7.0 on.

We also fixed a few bugs for this next version.

Finally, some code to build VLCKit for the new tvOS was merged.
It's very early though, but we have video playback! :)

tvOS simulator screenshot


Last week was a calm week, mostly on the UI side, for WinRT.

We've spent our week fixing regressions and issue in the thumbnailer, in the video output and fixing crashes.

No new feature, for once :)

That's all for this week! See you next! Have fun!

- page 1 of 31