iOS - 可以播放RBGA视频吗?

时间:2017-03-15 22:29:04

标签: ios video avfoundation

我没有运气获得带有RGBA像素的h264视频在iOS上运行(在iOS 10.2上测试)是否可能? Apple文档并没有多说这些:https://developer.apple.com/library/content/documentation/Miscellaneous/Conceptual/iPhoneOSTechOverview/MediaLayer/MediaLayer.html

我没有太多有趣的代码可供分享,因为AVPlayer并没有显示RGBA像素的视频。

1 个答案:

答案 0 :(得分:3)

无法将H264解码为完全' RGBA'然而: 可以使用 kCVPixelBufferPixelFormatTypeKey

AVPlayerItemVideoOutput 设置为: kCVPixelFormatType_32BGRA

VTDecompressionSessionCreate 还允许: kCVPixelFormatType_32BGRA

然后在渲染时我会像这样调整像素:gl_FragColor.bgra = texture2D(SamplerRGB, v_textureCoordinate);

所以答案是肯定的,但你必须做渲染和混合。

/ A

(编辑。添加了代码链接):

这是Apple推出的一个非常棒的项目,可以帮助您实现目标.. Real-time Video Processing Using AVPlayerItemVideoOutput

只需将它从YUV更改为RGB并绕过' colorConversionMatrix'着色器的一部分。

祝你好运!