这个项目能做什么

VLC for Android 是 VLC 媒体播放器的官方 Android 移植版,覆盖手机、Android TV 和 ChromeOS。它是一个自由开源项目,由 VideoLAN 维护,采用 GPLv2 或更高版本发布(应用实际为 GPLv3),而内嵌的 LibVLC 引擎为 LGPLv2。 功能 - 播放与桌面版 VLC 同样广泛的文件,并带有音频和视频文件及流的媒体数据库。 - 内嵌引擎 LibVLC 宣称支持众多媒体格式、编解码器和流媒体协议,硬件及高效解码最高可达 8K,可浏览远程文件系统(SMB、FTP、SFTP、NFS)和服务器(UPnP、DLNA),支持带菜单导航的 Audio CD/DVD/Blu-ray 播放,支持 HDR 包括对 SDR 流的色调映射,支持通过 SPDIF 和 HDMI 进行音频直通(包括 DD+、TrueHD、DTS-HD),支持视频和音频滤镜,支持 360 视频和 3D 音频包括 Ambisonics,并支持投屏到 Chromecast 和 UPnP 等远程渲染器。 项目结构 - extension-api:应用扩展 SDK(尚未发布) - application:Android 应用源码,按模块组织 - buildsystem:构建脚本、CI 和 Maven 发布配置 - libvlc:LibVLC 的 Gradle 模块;VLC 源码会被克隆到根目录下的 vlc/ - medialibrary:媒体库的 Gradle 模块 复用 LibVLC 开发者可以使用 LibVLC 模块来驱动自己的 Android 媒体播放器,方式是从 Maven 下载 .aar 或从源码构建。示例代码可在单独的 libvlc-android-samples 仓库中获取。 构建 Gradle 构建模式包括 Release 和 Debug(从 Bintray 获取 LibVLC 和 Medialibrary,仅构建应用代码)、SignedRelease(相同,但使用本地密钥库签名)以及 Dev(通过构建脚本一起构建 LibVLC、Medialibrary 和应用)。构建 LibVLC 本身需要较新的 Linux 发行版;Windows 10 和 macOS 可能可用,但不受官方支持。wiki 的 AndroidCompile 页面列出了依赖项,buildsystem/compile.sh 接受诸如 -l 表示 LibVLC、-ml 表示 Medialibrary、-a 表示 ABI(arm、arm64、x86、x86_64 或 all)以及 -r 表示发布构建等标志。必须设置 ANDROID_SDK 和 ANDROID_NDK 环境变量。 贡献与支持 Pull request 通过 VideoLAN 的 GitLab 实例提交;贡献者被要求遵守 Code of Conduct,并在进行 UI 更改或新增功能前先开 issue。翻译在 Transifex 上处理,merge request 由该工作生成。Bug 和功能请求在 VideoLAN GitLab 上通过提供的模板跟踪。支持渠道包括 About 屏幕中的应用内反馈选项、android@videolan.org 邮件列表、GitLab bugtracker、Libera 上的 #videolan IRC 频道以及 VideoLAN 论坛。