Keyword - libvlcpp

Entries feed - Comments feed

1 June 2015

This week in VideoLAN - 4

A new week in VideoLAN world

Continuing what I did the last three weeks, here is a new post summing up what happened, this past week, in the VideoLAN community and VLC development teams.

VideoLAN

For once, I'll speak about the VideoLAN team before speaking about VLC.

This week-end, we had the Q2 meeting of the VideoLAN non-profit organization. We met in Hamburg, hosted by Google.

We spoke about VLC development, VLC new features, VLC mobile ports, libVLC, libav and the non-profit life, including the next VideoLAN Dev Days.

Here is a photo of the group: WP_20150530_14_35_31_Pro.jpg

Features and changes

VLC

The week started with a classic fight we have with COM threading on Windows, for the Qt interface.

Then, the Direct3D11 video output, that we plan to use for Windows 10, WinRT and Windows Phone, got subpictures blending support. This should get sharper subtitles for WinRT and Windows Phone, and less CPU used. Some related work on DxVA acceleration was done too.

The buildsystem was then broken (and fixed) by yours truly, to use C++11 atomics; this is the ongoing change to have a more modern toolchain for VLC.

A really cool new feature was added to the OS X interface: the keyboard backlight will dim during playback! This might not work totally if you are on automatic mode. So far, we can't do that on other platforms.

Finally, a long-standing issue, where you could not get the AVI duration over HTTP or FTP protocols, was fixed. This should notably help, in the UPnP cases over HTTP :)

... and many other small fixes.

Android

This week on Android was a refactoring week. Thomas and I did more than 100 commits on refactoring and cleaning the foundation of our VLC for Android application.

The major changes are, of course, not really visible, but are mostly focused on refactoring the libVLCjni code to match better libvlc, libvlcpp and get rid of the kludges that accumulated on the Android application. Some of those commits are quite extensive, but they should not break too much the application.

We also fixed a couple of issues and added the access to Media Information in the browsing view for videos.

iOS

A contrario from the previous weeks, iOS development has been extremely busy, with more than 100 commits too. The work was focused on the 2.6.0 release, and fixing a large number of tickets.

The most important fixes went into the library, GDrive, the equalizer, the playback view (including cropping), UPnP and thumbnails.

The mini-player was also extended quite a bit and the ARMv7s slice was re-activated.

The 2.6.0 release is now almost ready.

WinRT

There were less commit in the interface, this week. However, quite a bit of work on the hardware decoding was done, and is pending merges!

More news about that next week.

libraries

We've seen quite a few fixes in libvlcpp, libaacs, VLCKit and the web plugins, but nothing newsworthy :)

See you, next week!

Of course, I have probably forgotten some minor things, but that should be most of it!

Have fun, and see you next week!

25 May 2015

This week in VideoLAN - 3

This week in ...

Continuing what I did the last two weeks, here is a third post summing up what happened, this past week, in the VideoLAN community and VLC development teams.

Features and changes

VLC

The week started with the continuation of the work on the VLC Windows threads implementation, by RĂ©mi.
In a similar way, the work on blocking SIGPIPE in libVLC went on. It went on during the whole week, notably to correctly maintain support for old BSD and OS X.

We then got a complete rewrite of the Jamendo service discovery, made by a developer of the Jamendo team.

Support was added for 2 uncommon video file types, created by some QNAP recording devices.

The Android MediaCodec module was reworked, cleaned and split in order to create a new video decoder module using the NDK MediaCodec API, instead of the SDK API. This should be cleaner, and faster than the old one, because written directly in C. However, it will only work on Android 5.0 and later.

A set of patches was merged on Wednesday to rework the browsing of network directories, like SMB, FTP or UPnP. Those patches will allow better filtering, better browsing recursivity, and add this browsing capability to the Samba module of VLC.

The SMB browsing module based on libDSM was reworked too and was fixed to support Guest login detection.

The sharpen video filter should be now faster, by improving the possible auto-vectorization.

Finally the week ended with some rework on the internal variable system of VLC, removing some types, some cases, some locking and simplifying the code.

Android

This week, we released version 1.4.1 of VLC on Android to the store. This is an interesting release, containing a large amount of fixes, stabilizing version 1.4.0, that was never pushed to the store. It should now feature the new browsing view, the MediaCodec NDK module, and lots of small changes of the interface.

We added return information from the VideoPlayer activity, so that applications calling VLC with an Intent could get some result information at the end of playback, on the playback status.

The support for some content:// URI has always been broken in VLC. This was fixed :)

The Deletion dialogs were reworked and fixed, and some small bugs were fixed and translations were updated before the release.

After the release, the support for libarchive was added and a lot of code was cleaned.

iOS

After the beta from the previous week, a lot of commits were done to fix the various issues reported.

I hope that there the release is now just around the corner :)

WinRT

This week, we released version 1.4.1 of VLC on WinRT to the store. It was mostly done to fix a subtitle issue we had on some hardware, and the look of Flyouts.

Then, the week was mostly spent to port the code to the Windows 10 SDK, and restructure the project files accordingly, which took a lot many commits.

The support for DiscNumber and AlbumArtist was also added in the code, for the next release.

libvlcpp and libraries

libvlcpp finally got it's first official release, numbered 0.1.0; it should be now usable in your projects, without big issues. Please try it and report :)

libbluray, libdvdread and the other discs libraries got a few commits to fix crashes and stability issues.

The webplugins also had a few bugs fixed on the ActiveX version.

See you, next week!

Of course, I have probably forgotten some minor things, but that should be most of it!

Have fun, and see you next week!

10 May 2015

This week in VideoLAN - 1

This week in ...

It's can be sometimes quite difficult to follow what's going on inside the VideoLAN community and VLC development, without reading numerous mailing lists. Therefore, I'm going to start to write a post every week doing a short summary of the interesting news.

The issue, of course, lies in the fact that some weeks will be more interesting than others. :)

Those kind of posts might also become a long list of unrelated things... If so, I'm sorry in advance, but I'll do my best to just speak about the most important :)

Features and changes

VLC

Last week-end, we merged the text shaping patch using the Harfbuzz library for our freetype module. This will solve the issues with some Arabic and South-East Asia languages, where the glyph were not merged correctly.

The first version of the TTML decoder was merged and was activated last week.

readdir was implemented in the FTP access, this will allow browsing of the FTP servers, that are announced in a service discovery.

$o is now usable to get the total number of tracks metadata, in the str_format_meta, to modify your VLC Window title.

libvpx was updated to 1.4.0 for the next releases.

The brightness/chroma adjustment filter was ported to support 9bits and 10bits chromas.

The default compression value for the PNG encoder was lowered to create faster snapshots (and backported to 2.2.2).

The height of the audio bar of the audiobargraph modules is now customizable.

Crashes were fixed in the TS, MP4, image and playlists demuxers.

And quite a few improvements were done in the MP4 and DASH modules.

Voice and Gestures control

I've also been coding some voice and gestures control for VLC, using RealSense SDK on Windows.

Try it!

Android

VLC for Android mostly had a bugfixing week.

The directory browser got improved a bit, in order to merge it with the folder preferences.

The AudioService has been moved from URI to MediaWrapper, which will allow to pass media options for playback (and should bring support for more format).

Some Samsung CPU are banned from Hardware decoding (Samsung Galaxy Core, Samsung Galaxy Ace 4), because they are too buggy.

The mini audio player was restored in most audio browsing activities. This was a regression due to the move to AppCompat 21.

A Play action was added to folders, and the Play as audio action was fixed.

And finally, we did a lot of code cleanup after running Coverity analysis.

iOS

Not much was done on VLC for iOS this week, beside bugfixes. The reason is that Felix, Caro and Tobias are all working on a branch, that should be merged soon. We'll speak about it when it's merged in the main line.

What I can say is that the next release of VLC for iOS should be named 2.6.0.

WinRT

A contrario, the WinRT port has been quite busy.

We're preparing a 1.4.0 release for WinRT (Metro) that should fix most of the important regressions we had (subtitles, DLNA) and should also fix the missing metadatas. For that, we've updated the libVLC core, patched taglib library, and reworked the whole media creation in the code.

The winrt access module now is way more clean and accepts both URLs and WinRT Tokens.

We still have one big bug to fix, so let's hope that we can release next week :)

libbluray, libdvd*

After numerous BD-J fixes last week, this week was a stabilization week for libbluray, so nothing exiting here.

libaacs, on the contrary, got quite a bit of cleanup, and notably the split of system-dependent code to different files. Quite a few potential crashes were fixed.

libbdplus got common code merged from libbluray and libaacs.

Web plugins

The rework with libvlcpp is coming to the end.

This week, a few bugs and regressions were fixed, especially on return types. And compilation with MSVC should be fixed.

Association

This week, we've been discussing updates on our development bounties list we have. We're discussing new ones, and increasing the prices of some other. We'll discuss that at our next meeting, at the end of the month.

We've been discussing also the possibility of moving our servers outside of France, because of the new spying laws.

We've also given commit access to Tobias, to the iOS port and libraries. May he fix all our remaining bugs.

And that's all for this week!