2011-07-17 28 views
1

我正在尝试使用Qt实现RTSP/RTP服务器。我想从视频文件读取到QByteArray中,这样它可以被分割成片段并作为RTP包的有效载荷添加。这是否是正确的方法,如果是的话,代码将读取媒体文件(如“movie.3gp”)到QByteArray中是什么?提前致谢。如何在Qt中为RTP负载创建视频数据包

+0

您可能不希望一次加载整个文件,而是逐步加载? –

+2

你试过了什么代码?先分享一下。然后我会告诉你哪里出了问题。 –

回答

1

我以前用Qt 3.3做过。那时候我使用了ffmpeg,如果我没有误认为压缩来自摄像机的流,并且live library产生RTSP/RTP流。基本上如您所说,将每个帧加载到QByteArray并将其移至实时API。

现在Qt有PhononQtMultimidia模块可能可以直接读取文件,但使用它,看起来像你将不得不创建一个实现流的视频接收器。应该有可能,创建一个声子插件,也许使用现场。

不幸的是,您不能使用当前API(4.8.0)从声子源获取QVideoFrame,据我所知。因此,无论是使用其他库还是创建一个新的声子插件似乎都是实现它的唯一途径。

希望这可以让你在正确的方向。