hero

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

  1. 启用 CC_ENABLE_SPU,使选中的字幕轨在 Chromecast 投送路径上被转码合成进画面。 上游默认关闭此开关,因为它只覆盖「内部解码 + 转码合成」这一条路径——而这正是 此处使用的路径。
  2. 加固接收端不可用时控制器的销毁流程。

除此之外未对 libVLC 做任何改动。

补丁全文:0001-chromecast-hardening.patch

# 其它开源组件

YPlayer 使用的其它开源项目与协议,见 YPlayer 主页的致谢章节