- Notifications
You must be signed in to change notification settings - Fork661
VLC for Android, Android TV and ChromeOS
License
videolan/vlc-android
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This is the officialAndroid port ofVLC.
VLC on Android plays all the same files as the classical version of VLC, and features a media databasefor Audio and Video files and stream.
Here are the current folders of vlc-android project:
- extension-api : Application extensions SDK (not released yet)
- application : Android application source code, organized by modules.
- buildsystem : Build scripts, CI and maven publication configuration
- libvlc : LibVLC gradle module, VLC source code will be cloned in
vlc/
at root level. - medialibrary : Medialibrary gradle module
LibVLC is the Android library embedding VLC engine, which provides a lot of multimedia features, like:
- Play every media file formats, every codec and every streaming protocols
- Hardware and efficient decoding on every platform, up to 8K
- Network browsing for distant filesystems (SMB, FTP, SFTP, NFS...) and servers (UPnP, DLNA)
- Playback of Audio CD, DVD and Bluray with menu navigation
- Support for HDR, including tonemapping for SDR streams
- Audio passthrough with SPDIF and HDMI, including for Audio HD codecs, like DD+, TrueHD or DTS-HD
- Support for video and audio filters
- Support for 360 video and 3D audio playback, including Ambisonics
- Ability to cast and stream to distant renderers, like Chromecast and UPnP renderers.
And more.
You can use our LibVLC module to power your own Android media player.Download the.aar
directly fromMaven or build from source.
Have a look at oursample codes.
VLC for Android is licensed underGPLv2 (or later). Android libraries make this, de facto, a GPLv3 application.
VLC engine(LibVLC) for Android is licensed underLGPLv2.
Native libraries are published on bintray. So you can:
- Build the application and get libraries via gradle dependencies (JVM build only)
- Build the whole app (LibVLC + Medialibrary + Application)
- Build LibVLC only, and get an .aar package
VLC-Android build relies on gradle build modes :
Release
&Debug
will get LibVLC and Medialibrary from Bintray, and build application source code only.SignedRelease
also, but it will allow you to sign application apk with a local keystore.Dev
will build build LibVLC, Medialibrary, and then build the application with these binaries. (via build scripts only)
You will need a recent Linux distribution to build VLC.It should work with Windows 10, and macOS, but there is no official support for this.
Check ourAndroidCompile wiki page, especially for build dependencies.
Here are the essential points:
On Debian/Ubuntu, install the required dependencies:
sudo apt install automake ant autopoint cmake build-essential libtool-bin \ patch pkg-config protobuf-compiler ragel subversion unzip git \ openjdk-8-jre openjdk-8-jdk flex python wget
Setup the build environment:Set$ANDROID_SDK
to point to your Android SDK directoryexport ANDROID_SDK=/path/to/android-sdk
Set$ANDROID_NDK
to point to your Android NDK directoryexport ANDROID_NDK=/path/to/android-ndk
Then, you are ready to build!
buildsystem/compile.sh -l -a <ABI>
ABI can bearm
,arm64
,x86
,x86_64
orall
for a multi-abis build
You can do a library release build with-r
argument
Build Medialibrary with-ml
instead of-l
VLC is a libre and open source project, we welcome all contributions.
Just respect ourCode of Conduct, and if you want do contribute to the UI or add a new feature, please open an issue first so there can be a discussion about it.
Pull requests must be proposed on ourgitlab server.
So you must create an account, fork vlc-android project, and propose your merge requests from it.
Except for translations, see the section below.
You can help improving translations too by joining thetransifex vlc project
Translations merge requests are then generated from transifex work.
VLC for Android bugtracker is hosted onVideoLAN gitlab
Please look for existing issues and provide as much useful details as you can (e.g. vlc app version, device and Android version).
A template is provided, please use it!
Issues without relevant information will be ignored, we cannot help in this case.
- For usage support, use the in-app feedback option in the
About
screen - Android mailing list:android@videolan.org
- bugtracker:https://code.videolan.org/videolan/vlc-android/issues
- IRC:#videolan channel onlibera
- VideoLAN forum:https://forum.videolan.org/viewforum.php?f=35
About
VLC for Android, Android TV and ChromeOS