之前解决过一个-12909报错的问题,后来在工作中又遇到了。这次是解码没有报错,但是callback函数中返回了-12909,还是一样的分析思路。最终定位:

问题原因:

    这次出问题的视频源是iPhone录制和拍摄的mp4视频,其extradata中的pps有两个,如果使用CMVideoFormatDescriptionCreateFromHEVCParameterSets API,那么如何组织pps的格式,找不到官方的说明,尝试了几次,均失败。

修复:

    参考开源软件的做法,使用CMVideoFormatDescriptionCreate,将extradata全部设置给extensions解决。

    注意修改extradata的组成格式,如果是annexb格式的,需要使用ffmpeg ff_isom_write_avcc等API将annexb格式的extradata转换为mp4格式。

相关文章:

  • 2021-10-15
  • 2021-12-18
  • 2021-06-18
  • 2021-07-29
  • 2021-09-11
  • 2022-12-23
猜你喜欢
  • 2021-05-24
  • 2021-11-17
  • 2021-10-25
  • 2021-10-01
  • 2022-01-11
  • 2021-11-02
  • 2021-07-21
相关资源
相似解决方案