Keyword - libVLC

Entries feed - Comments feed

3 August 2016

Last week in VideoLAN - 51

51st VideoLAN report

So, after a few crazy weeks, I'm coming back to a more regular schedule for my weekly reports about VLC and VideoLAN.

Features

VLC

Decoder fallback

The major change, during last week, was the possibility to restart the audio decoders when the audio device changes.
This is very useful when you switch from normal decoders to SPDIF/HDMI pass-through for DTS, Dolby and related codecs.

In the past, VLC could only restart the filters, not the decoders, so our Dolby and DTS decoders were actually filters. This was finally changed and now decoders are decoders.

For those who don't understand what all this means, it means that it will help us support more formats for pass-through over HDMI, like DolbyDigital+ or DTS-HD.

Modules

We've fixed the green line that appears only on AMD GPUs on Windows. This is scheduled for the next Windows update.

I've implemented the support for browsing FTP remote directories, so that it behaves similarly to SFTP or SMB.

On Windows, we've added the support for hardware decoding of 10bits HEVC , using DxVA and D3D11.

We also pushed improvements to the prefetcher module and to our TTML support; and we've fixed issues for DVD menus, SAT>IP protocol and HLS protocol.

Finally, please note that the license of the UPnP module was switched from GPL to LGPL.

Android

On Android, we've fixed a few issues related to old devices, and we've improved the libVLC Java bindings to support statistics.

WinRT

Last week on WinRT, we've removed all the code that was focusing on older versions of Windows.

The codebase now support only Windows 10 Universal with its Anniversary Edition version.

That's all for this week!

Thanks for the support and see you soon!

28 July 2016

Last weeks in VideoLAN - 50

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!

5 July 2016

Last weeks in VideoLAN - 49

49th VideoLAN report

So, after two busy weeks, you can get a new weekly report about the VLC and VideoLAN communities!

Releases

Android

10 days ago, we released VLC for Android 2.0.

After a long period of development, we're finally at a release that supports more features than the old 0.9.x versions and the 1.7.x versions.

Video List

UWP

And last week, we released the new VLC for Windows 10, numbered 2.0 too.

It is a continuation of the work we did for WinRT, the kickstarter, focused on Windows 8.1, Windows Phone 8.1 and Windows RT.

The new application should supersede the old one.

Black.png

Features

VLC

In the last 2 weeks, we improved the ChromeCast support, notably to work on transmitting the pause status and the title between the device and VLC, and we also changed the interface to scan for devices, since it was a bit confusing.

We added support for some uncompressed video format inside MKV, for the AlbumArtist meta-tag inside mp4 and we now support more MicroDVD subtitles styles.

Our new Kwallet module was transitioned from using libKwallet to DBus. This will be better to support both Qt4 and Qt5 applications with libVLC, because those versions are not ABI compatible.

The core gained a new stream FIFO API, with functions like vlc_stream_fifo_New, vlc_stream_fifo_Queue, vlc_stream_fifo_Write and vlc_stream_fifo_Close.
This change, in addition to the new chained_demux implementation in the core, removes the need for stream_Demux (now removed).

We also improved the security when loading of DLLs on Windows.

And for Android, AudioTrack DTS pass-through was implemented.

Finally, numerous fixes were pushed, notably for Direct3D11, our contribs, some in the core, youtube playback regressions, the Mac OS interface, crashes for MMDevice device, and for the MediaCodec decoders. And more that I forget...

Android

As I said, we released 2.0, and we also pushed 2.0.1 and 2.0.2 to fix the most important crashes reported.

WinRT

Same, we released 2.0, the first beta version of the UWP application. Fixup releases are coming soon!

iOS

On iOS, we pushed the promised update and we had a few refactoring, notably on the network login view.

libbluray

The libbluray code was modified to support 8.3 filenames, like in AVCHD directories we see in camcorders. This is the first step for full AVCHD support in VLC :)

That's all for those weeks! Not too bad :)

See you soon!

20 June 2016

This week in VideoLAN - 48

48th VideoLAN report

Another week passes by and here is a new weekly report about the VLC and VideoLAN communities!

Features

VLC

Like our previous week, most of the work was focused on stabilizing features and bug fixing. Therefore, the changelog will be quite short too. :D

A new type of module was introduced, named demux filter; they are used to filter or intercept demuxer controls commands and demuxing.
The first use case of this type of module is the ChromeCast demux filter, to show the correct playback time when using the ChromeCast, that we merged this week too.

Some work was done to support the next version of macOS: Sierra. This notably concerns the input capture plugin.
Also, on MacOS X, the interface for renderers was merged.

The 2 SPDIF modules, ac3 and dts have been merged into a single one.

In the core, we've seen fixes for UTF-8 support, media discoverers API, libVLC parsing calls memleaks, tests, buildsystem and Windows threads.

Android

On Android, we've done the same kind of bugfixing as last week, and we have released 2.0.0 RC4 and pushed it on the store.

Not many issues are remaining for the release, now.

WinRT/UWP

On WinRT, we are also in the bugfixing phase, with a lot of commits to make sure the application does not crash too much.

Indeed, we're closing to an open beta release, but the number of crashes was still too high, especially when using the application for a long time.

We also fixed the background audio support on Windows 10 Mobile phones; and reworked the thumbnailer.

The application should be opened in beta to everyone soon.

iOS

The iOS application got a few fixes, notably for remote playlists and XDCAM support and we're pushing an update named 2.7.8 this week.

That's it for this week, stay tuned!

8 June 2016

This week in VideoLAN - 46

46th VideoLAN report

A new week, a new weekly report about the VLC and VideoLAN communities!

Vienna Meeting

This week-end was the Q2 meeting of the VideoLAN asso, hosted in Vienna, by PSPDFKit.

VideoLAN in Vienna

We gathered to fix pending issues for VLC 3.0, and we worked on the mobile apps and the VideoLAN server infrastructure. It was a great week-end!

Features

VLC

During the week-end, we released VLC 2.2.4, to fix 2 security issues, one in VLC, one in a 3rd party library! It is already released and pushed to our users.

Core and libVLC

The input core was modified to support network slaves, aka external subtitles or audio tracks, over the network. In the past, it was only working for local subtitles.
The libVLC API added for this is called libvlc_media_player_add_slave.

The core threading code was improved for recent versions of Windows: it can use futeces and generic semaphore, starting from Windows 8.

We also added the libvlc_media_player_(get|set)_role calls for libVLC, to set the media role (notification, video, audio) that are reflected to the audio output mixer. This is notably used for the PulseAudio output.

Finally, the preparser was reworked to allow interruption and have a default timeout. Applications can also now cancel their preparsing requests with libvlc_MetadataCancel.

Modules

The Qt interface received the first renderers selection dialog. You should be able to detect your ChromeCast from this interface, and stream to it. :)

The UPnP module was improved to support more type of servers, more metadata per item and the code was heavily cleaned. (The library we use is still very bad though).

The OS X interface got new HUD panels and widgets for the dark mode.

Finally, we added the first AppStream Metadata for Linux distributions, a few Qt minor changes, support for GoPro highlights chapters in MP4 and some OS X interface fixes.

Android

Nothing very exciting on Android, just the beta 1.9.13, 2.0.0-rc1 and 2.0.0-rc2 releases, pushed to the store.

For 1.9.13, we mostly focused on activating subtitles over the network, and improving the support for subtitles.

2.0.0-rc1 was mostly focused on fixing the UPnP support and 2.0.0-rc2 was minor fixes for bugs reported by several beta testers. :)

WinRT

On WinRT, we reimplemented the playlists management, and the support for playlists in the PlaybackService.

The Search page, that was hidden, is now visible again, and we support favorites for streams and servers, like the Android version.

The notifications and toasts were reworked to be less intrusive, and Cortana support was improved.

Finally, the new equalizer got a facelift.

And of course, numerous bugs were fixed, so we can have a proper release soon!

That's already quite a bit for last week, see you next!

29 May 2016

This week in VideoLAN - 45

45th VideoLAN report

After a couple of very busy weeks, we're back on a normal schedule. Therefore, here is the weekly report about the VLC and VideoLAN communities!

Features

VLC

We started the week by adding the support for MPEG-2 and VC-1 hardware decoders on Android in the mediacodec module.
We also fixed some MPEG-4 regressions on this module.

Hugo fixed a few issues on the UPnP module, and mostly added the support for Windows Media Sharing servers, in this module.
We also added support for subtitles over UPnP, using the work done in the core the previous week.

The Matroska demuxer got a few fixes for some regressions, but mostly implemented the fast-seek option, that is imprecise, but faster than the normal seek. This is useful when computing thumbnails, for example.

Some changes on the libVLC parsing events were done, to simplify the handling in client applications. If you were using the not-stable-yet libVLC 3.0, beware!

Near the end of the week, the core got some important changes on threads manipulation, with the introduction of vlc_thread_self() and vlc_thread_id(). The usage of futeces was introduced in the core: see Rémi's post about it.

The MMDevice audio output on Windows now supports device change events.

The Windows 64bits build will now have high-entropy ASLR activated, which should reduce the possibility of exploitation of security issues.

On Windows, we also fixed the raising issue of the Qt tooltip that we had with Qt5, the 2.2.3 DirectDraw regression and a small D3D improvement when handling large pictures.

Finally, a few H264 annex-B parsing issues were fixed and the video headers were modified to support, in the future, VR videos (nothing working yet).

Android

On the Android side, we're going on fixing issues for the 2.0.0 release.

This week, we:

  • improved the subtitles downloader, to activate it from within the player, and for any video,
  • improved the interface for scanning, the browsing and the video player animations,
  • improved the audio player on Android TV,
  • improved the speed of MKV thumbnails,
  • fixed a few remaining small issues.

All this was pushed in the update 1.9.12 on the play store. Hopefully, the 2.0.0 release will come this week. :)

WinRT / UWP

As last week, the WinRT port has been very busy again, with almost 100 commits.

As for Android, we're focusing on preparing the release, and fixing the biggest bugs people have reported.

On the libVLC backend, we fixed a few performance issues, we added more codecs support, and we improved the UPnP and SMB browsing.

On the interface side, we improved the thumbnailing and parsing process, we fixed numerous bugs that happened when resizing (and Windows 10 Mobile look) and we fixed a few crashes.

We also improved the settings and activated the access to the equalizer.

Hopefully, we'll be able to open the beta to the public soon.

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

- page 1 of 7