OpenCV RTP 解码
Posted
技术标签:
【中文标题】OpenCV RTP 解码【英文标题】:OpenCV RTP Decoding 【发布时间】:2013-06-13 18:24:59 【问题描述】:有什么方法可以读取 RTP 数据包(将通过预先构建的 tcp 连接从服务器发送)并对其进行解码以创建要显示的 h264 流?数据将作为字符缓冲区发送/接收,但可以在接收时轻松更改/转换。不幸的是,我还没有在 OpenCV 中看到这样做的方法。
编辑:在openCV(读取)中不需要这样做,但它需要在解码后能够被openCV数据类型(Mat/IplImage)接收。我记得看到过一个关于创建流的内容,并且会尝试再次找到它,但是有谁知道一种从每个数据包创建单独帧的方法吗?
【问题讨论】:
【参考方案1】:您将需要一个 RTP depayloader 用于您的特定流。
RTP(针对 UDP - 即:面向数据包的协议)在数据包(传输时)和帧之间没有 1:1 映射。大多数情况下,单个帧将通过多个数据包传输(以太网帧(不要与您的图像帧混淆)通常限制为大约 1500 字节,这只会产生很小的图像......)
将有效负载块拆分和重新组合到网络数据包中是 RTP payloader
resp 的任务。 depayloader
.
最简单的方法可能是通过gstreamer,它已经为 h.264 提供了(de)payloaders
【讨论】:
以上是关于OpenCV RTP 解码的主要内容,如果未能解决你的问题,请参考以下文章