50th VideoLAN report

So, after a few crazy weeks, I was taken a bit by RealLifeĀ©Ā®, and we've had 3 weeks without report. And this one is late. :)

Therefore, here is a new report about the VLC and VideoLAN communities, covering the last 3 weeks!

The report will be a bit more summarized that usual, and more dense in information, for obvious reasons. :)

Features

VLC

We've added support for codecs with colors in 12bit-depth, in YUV 4:2:0, 4:2:2 and 4:4:4. Of course, nothing can display that yet, but it can happen in some HEVC samples. It will be dithered down before displaying.

The Windows users will be happy, because we're reintroducing the MIDI support, using a new library called FluidLite, in order to replace FluidSynth.

A new protocol to control and distribute satellite signals on a LAN called SAT>IP was implemented in a new access module.

There was a lot of work and rework on our adaptive support, notably to change timings and drain, but also to start supporting HLS using mp4 fragments.

Some work on URL and URI was done to support more cases and improve test coverage. 2 new functions called vlc_uri_resolve() and vlc_uri_compose() were introduced.
At the same time, modifications on the HTTP redirections were merged.

On Windows, we merged the VP9 hardware decoding, using the DxVA APIs.
This code requires very recent video cards to be usable.

Finally, an important work was done to merge the access and stream-filter behavior and semantics. The 2 type of modules still exist, but a large part of the code is now common.
This allows now block-based stream filters.

To achieve this, we now have introduced the vlc_stream_Eof(), vlc_stream_ReadBlock() and vlc_stream_ReadPartial() functions.

Finally, we added support for MP4 chapters in Unicode, and we fixed some Qt sizing issues with Qt5, a DLL loading potential security issue for Win32, MP4 subtitles size, a WMV integer overflow, a crash in smem, the Qt right-click menu on the playlist, SFTP browsing, and the audio fingerprinter. We also improved the HTTP/2 stack, our TS demuxer when dealing with scrambled content, and a few other minor things I forgot.

Android

On Android, we've pushed 2.0.3, 2.0.4 and 2.0.5 to fix the most important issues and regressions reported.

However, we also added a few features notably:

  • Support for HTTP proxies,
  • Support for HTTPS self-signed certificates,
  • Subtitles style modification in preferences,
  • Improvements for SMB browsing,
  • Support for more ARMv8 devices.

And we also added, in the main branch, some modifications about preferences, and adding new ones.

iOS

The iOS buildsystem was modified to support full cocoapod building, so you can compile just the application, without compiling VLC and libVLC.

This important change introduced quite a bit of cleaning of the code and of the project. :D

WinRT

On WinRT, we've prepared a MediaCenter Mode for the Xbox 1.

We fixed numerous interface issues and crashes, that were reported in 2.0.1.

A few fixes where pushed also to address issues happening with specific themes or specific resolutions in responsive mode.

That's all for those weeks! There is probably a bit more I forgot about, but you should have the important parts.

See you soon!