【问题标题】:avcodec_decode_video2 always sets got_picture_ptr to 0 while using with live555avcodec_decode_video2 在与 live555 一起使用时始终将 got_picture_ptr 设置为 0
【发布时间】:2012-12-18 02:31:25
【问题描述】:

我正在尝试使用 libavcodec 解码帧。我的应用程序使用 live555 从 rtsp 流中检索 rtp 数据包。由于 avcodec_decode_video 将 got_picture_ptr 设置为 0 的原因,我进行了很多搜索,但一直找不到。
谁能告诉我 avcodec_decode_video2 在内部是如何工作的?什么原因可能导致 got_picture_ptr 指针设置为零? PS:该函数确实读取字节,即返回值始终是正数,而不是-1。 我在这里很难过,任何帮助将不胜感激。我没有引用任何代码,因为使用 avcodec_decode_video2 解码的代码相当通用,我的代码没有什么特别之处。(我之前使用 libavcodec 解码了 rtsp 流,只是没有使用 live555)

【问题讨论】:

    标签: ffmpeg h.264 libavcodec live555 avcodec


    【解决方案1】:

    好吧,我终于能够解决它。问题是我从 live555 处理 MediaSink 对象的方式。我应该调用从 MediaSink 派生的 Sink 类的 afterGettingFrame 函数,我没有这样做,因为虽然我正在获取数据,但我没有“读取”数据并将其输入 avcodec_decode_video2 方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-07-15
      • 2023-04-02
      • 1970-01-01
      • 1970-01-01
      • 2015-03-22
      • 2016-10-21
      • 2019-12-11
      相关资源
      最近更新 更多