视频流 – 使用视频工具箱解码iOS 8中的h264

视频流 – 使用视频工具箱解码iOS 8中的h264,第1张

概述需要解码h264流并获取像素缓冲区 我知道iOS 8上的视频工具箱可能 1.如何将h264流转换为CMSampleBufferRef? 2.如何使用视频工具箱进行解码? 我假设您获得附件B格式的流,如果它已经是AVCC格式(读取MP4),那么您可以使用AssetReader并且不需要做太多. 对于附件B流(这是ppl.通常称为原始h264流). >从中提取SPS / PPS NAL单位并创建参数集 需要解码h264流并获取像素缓冲区

我知道iOS 8上的视频工具箱可能

1.如何将h264流转换为CMSampleBufferRef?

2.如何使用视频工具箱进行解码?

解决方法 我假设您获得附件B格式的流,如果它已经是AVCC格式(读取MP4),那么您可以使用AssetReader并且不需要做太多.

对于附件B流(这是ppl.通常称为原始h264流).

>从中提取SPS / PPS NAL单位并创建参数集.你定期收到它们.它们包含用于解码帧应该如何解码的信息.
>创建具有持续时间的TimingInfo数组(您可以从解析SPS的VUI部分获取它)和呈现时间戳和解码时间戳.如果接收到流作为MPEG2 TS,则从PESr获取时间戳.如果不只是根据您的计算提供缺失的信息.
>将VLC NAL单元包装在CMBlockBuffer中.你可以把多于一个.如果您通过RTP收到可能使NAL单元分段的流,请确保每个NAL单元都已完成.
>将NAL单元包装在CMBlock缓冲区中时,用长度标头替换3或4字节的起始码.
>将信息提供给CMSampleBufferCreate,您可以在VTDecompressionSession中解码帧

WWDC提供了预设,可以更详细地解释这些步骤,并提供示例代码.

总结

以上是内存溢出为你收集整理的视频流 – 使用视频工具箱解码iOS 8中的h264全部内容,希望文章能够帮你解决视频流 – 使用视频工具箱解码iOS 8中的h264所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1100834.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存