YPlayer
开源许可与来源声明
# libVLC
YPlayer 使用 libVLC (opens new window) 播放 AVFoundation 不支持的容器格式(MKV、AVI、FLV、WMV、RMVB、WebM 等)。
libVLC 许可全文:lgpl-2.1.txt
# 库的来源
| 上游仓库 | https://code.videolan.org/videolan/vlc.git |
| 固定提交 | c833c4be0 |
| 构建脚本 | SwiftVLC (opens new window) 的 scripts/build-libvlc.sh |
在上述提交基础上应用下方补丁,即可还原 YPlayer 所使用的 libVLC 源码。
# 对 libVLC 的修改
仅有一处,位于 modules/stream_out/chromecast/cast.cpp:
- 启用
CC_ENABLE_SPU,使选中的字幕轨在 Chromecast 投送路径上被转码合成进画面。 上游默认关闭此开关,因为它只覆盖「内部解码 + 转码合成」这一条路径——而这正是 此处使用的路径。 - 加固接收端不可用时控制器的销毁流程。
除此之外未对 libVLC 做任何改动。
补丁全文:0001-chromecast-hardening.patch
# 其它开源组件
YPlayer 使用的其它开源项目与协议,见 YPlayer 主页的致谢章节。