OStack程序员社区-中国程序员成长平台

标题: ios - AVURLAsset 轨道为空,但可以播放视频/音频 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 00:26
标题: ios - AVURLAsset 轨道为空,但可以播放视频/音频

我这里有视频:

http://195.16.112.71/adaptive/66aebabb-2632-44fc-abf1-df29bca6b941.video/66aebabb-2632-44fc-abf1-df29bca6b941.m3u8

Ffmpeg 说这个视频有 5 个音轨,而且是正确的。

但如果我使用带有该链接的 AVURLAsset,它会告诉我没有任何轨道:

NSArray* const tracks = asset.tracks; // it's empty

我修改了 Apple 的 StichedStreamPlayer 示例来重现此问题,它位于此处: https://yadi.sk/d/hV3jfbx1Z9sfC

只需点击“加载电影”,然后点击“播放”按钮 - 电影可以完美播放,但如果您检查 prepareToPlayAsset 函数中的 tracks 变量,您会发现它是空的。 问题是:如 AVURLAsset 所说,如果视频实际上有 5 个轨道,为什么它是空的?如果不存在轨道,该视频如何播放?

提前感谢您的帮助!



Best Answer-推荐答案


如果您直接流式传输视频,则它不会有轨道。您可以下载文件并询问视频文件 Assets 的轨道。

关于ios - AVURLAsset 轨道为空,但可以播放视频/音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25154576/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4