我下载了一个带有字幕的 YouTube 视频。我把它上传到我的平台上,当我流式传输视频时,我没有字幕。
AVURLAsset *avAsset = [AVURLAsset URLAssetWithURL:url options:nil];
AVPlayerItem *playerItem = [AVPlayerItem playerItemWithAsset:avAsset];
AVMediaSelectionGroup* subtitle = [avAsset mediaSelectionGroupForMediaCharacteristic:AVMediaCharacteristicLegible];
[playerItem selectMediaOption:subtitle.options[0] inMediaSelectionGroup:subtitle];
变量'subtitle'的值为nil。
代码有问题还是视频配置不同?
This amazing SO answer解释 AVPlayer 处理字幕的方式。
您需要使用某些视频编辑软件将子位“刻录”到视频中,或者创建 .vtt 文件并将它们包含在 mast 播放列表 (.m3u8) 文件中。然后使用上面粘贴的代码,您应该能够打开或关闭字幕。
关于ios - 在 iPhone objective-c 上的 AVPlayer 中添加字幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43495041/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |