繁体   English   中英

在 iOS 中播放具有透明度的视频

[英]Playing video with transparency in iOS

一点背景知识,我想在从 gif 转换的 web 上播放具有透明度的视频,对于所有非苹果设备,我可以像这样轻松导出 webm 文件

ffmpeg -i test.gif -c:v libvpx-vp9 -qmin 0 -qmax 18 -crf 9 -b:v 1400K -quality good -cpu-used 0 -auto-alt-ref 0 -pix_fmt yuva420p -an -sn -metadata title="test webm" test.webm

无需使用 HTTP 响应 206 部分内容加载它开箱即用的视频流

现在,对于 safari 和苹果设备,我遇到了一个完全不同的野兽,我设置了一个端点,用 HTTP 206 响应为视频提供服务,经过一番挣扎后,我可以在 macOS 中为 Z50DE9BC68C9、3DC32D8C7C905 中的 Z50DE9BC68C9、3DC32D8C7C7C905像这样

ffmpeg -i test.gif -qmin 0 -qmax 18 -vcodec prores_ks -q:v 64 -b:v 1400K -pix_fmt yuva444p10le -profile:v 4444 -an -sn -metadata title="test mov" test.mov

我在 url 地址栏中输入了使用 ZF7B44CFFAFD5C52223D5498196C8A2E7BZ 提供视频的地址栏,视频播放的透明度都很好。

现在在 iOS 中的 Safari 上,视频无法播放,它加载了相同的端点,其他没有透明度的视频也可以使用,从相同的 stream 端点提供服务。

有谁知道一种对在所有苹果设备上播放的透明视频进行编码的解决方案?

我也尝试了手刹但没有成功,实际上手刹甚至无法获得正确的透明度。

最后,至少在 v13 之前的 iOS 设备根本不允许具有 alpha 通道的 prores 编解码器,因此无法在这些设备上以任何格式获得具有透明度的视频。 它与加载的视频流和 HTTP 响应 206 部分内容无关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM