ios - 如何将带有 alpha channel 的 webm 文件转换为将在 iPad 上的 safari 中播放的 hevc 编码文件?

标签 ios ffmpeg webm transcoding hevc

我有一个透明的 webm 文件:https://itype.techforge.com.au/assets/videos/upshot/module1/NP_1A.webm

我正在尝试将其转换为可在 iPad 上的 Safari 浏览器中的网页视频元素中播放的内容。

一个有效的文件示例是:https://rotato.netlify.app/alpha-demo/movie-hevc.mov

我进行此转换的尝试都失败了。 3rd 方应用程序似乎都失去了 alpha channel 。

在我的 mac 上我尝试了 ffmpeg

ffmpeg -i input.webm -c:v hevc_videotoolbox -allow_sw 1 -alpha_quality 0.75 -vtag hvc1 output.mov

但是,虽然这会生成报告 MPEG-H Part2/HEVC (H.265) (hvc1) 编解码器的文件,但生成的文件仍然具有黑色背景而不是透明背景。

ffmpeg 日志:https://pastebin.com/DMM9y5PU

最佳答案

VP9 的内置默认解码器目前不支持 alpha/透明度。手动使用解码器libvpx-vp9:

ffmpeg -c:v libvpx-vp9 -i input.webm -c:v hevc_videotoolbox -allow_sw 1 -alpha_quality 0.75 -vtag hvc1 -movflags +faststart output.mov

你的 ffmpeg 需要用 --enable-libvpx 编译才能工作。

关于ios - 如何将带有 alpha channel 的 webm 文件转换为将在 iPad 上的 safari 中播放的 hevc 编码文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69255568/

相关文章:

ios - 多用户应用程序的自动续订订阅

ffmpeg - 如何使用 ffmpeg 解密加密的 mp4 文件

php - FFmpeg 可以连接来自不同域的文件吗?

ios - 在 ios 中使用 AVAudioSession 时出错

ios - 如何添加 NSString 以在定义大小的矩形中查看

android - 如何在android中使用ffmpeg文件从URI播放音频文件

java - 将 .webm 转换为 .mp4

ios - 是否有任何库可以在 iPhone 中使用 AVCaptureSession 获取 vorbis 格式的音频数据?

ios - AVPlayer 是否支持 iOS 中的 webm URL?

iphone - 如何以编程方式将 NSData 转换为 NSString?