首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何播放从Live555流中获得的数据帧?

如何播放从Live555流中获得的数据帧?
EN

Stack Overflow用户
提问于 2014-06-05 04:20:24
回答 1查看 1.5K关注 0票数 1

我的iOS应用程序是一个播放器,从监视器摄像头流视频。有两种流模式: HTTP和RTP/RTSP。

HTTP:

媒体容器: MPEG-2 TS

视频编码: H.264 (MPEG-4 AVC)

音频编码: AAC

RTP/RTSP:

媒体容器: MPEG4

视频编码: H.264 (MPEG-4 AVC)

音频编码: AAC

在HTTP模式下,我可以成功地使用MPMoviePlayerViewController。

在RTP/RTSP模式下,我使用Live555来实现协议RTP/RTSP。我们刚刚从流中获取数据并存储到一个温度文件中,比如DATA.MP4。我们不使用ffmpeg来解码数据,因为许可证。

我用MPMoviePlayerViewController播放DATA.MP4文件,但它不能播放。如上面所述,HTTP和RTP/RTSP有相同的视频配置文件H.264,所以想知道为什么MPMoviePlayerViewController不能播放DATA.MP4?

顺便说一下,我正在尝试使用OpenH264(思科)来解码DATA.MP4,但我不知道如何使用这个库。因为这不是更多的文件。任何有经验的人,你能和我分享一些样品吗?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2017-03-12 08:57:15

您可以使用mp4将RTSP蒸汽保存到openRTSP,这还提供了一个源代码示例说明它是如何实现的。http://www.live555.com/openRTSP/

我已经成功地使用openh264解码了RTSP流,但是有一些事情需要注意。有关概述,请参见http://www.live555.com/liveMedia/faq.html#testRTSPClient-how-to-decode-data

  • 从MediaSink派生一个新类
  • 有关openh264解码器API的概述,请参阅https://github.com/cisco/openh264/wiki/UsageExampleForDecoder
  • 在初始化h264解码器之前,您需要从子会话中获取一些参数: string spropParams =subsession->fmtp_ from参数集();并将其传递到接收器对象中。
  • 在解码过程中,重复调用接收器的AfterGettingFrame方法。每次传入一个H264 "NAL帧“,这要么是一个H264框架片段,要么是一组H264参数。
  • 每个帧在发送到解码器之前都需要预先加到缓冲器上的起始代码0x00000001。有关此操作的示例,请参阅H264or5VideoFileSink.cpp (在live555源代码中)。https://github.com/xanview/live555/blob/master/liveMedia/H264or5VideoFileSink.cpp
  • 在发送任何其他数据之前,应将sent参数发送到解码器。关于这个问题,请参见H264or5VideoFileSink.cpp。
  • 使用DecodeFrameNoDelay (用于多片数据的即时显示)或DecodeFrame2 (仅用于显示完整帧)函数在openh264中解码https://github.com/cisco/openh264/wiki/ISVCDecoder#decodeframenodelay
  • 只有当sDstBufInfo.iBufferStatus为真时,框架才会就绪。
  • 该帧通常在一些非RGB颜色空间中编码,如I420。处理这一问题的一种方法是opencv的cvtColor和COLOR_YUV2BGR_I420选项。
  • 当RTSP在UDP上工作时,我遇到了一些帧无法解码的困难(我得到了dsRefLost错误)。这可能是由于某些帧大于网络的MTU,导致分组丢失。所做的工作是将TCP用于RTSP,或者简单地增加网络MTU。https://ffmpeg.org/pipermail/libav-user/2011-November/000901.html

我希望这能帮上忙!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24051583

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档