从rtsp(mp4)流中提取每个帧

时间:2011-10-27 23:56:19

标签: rtsp mpeg-4

我试图从rtsp mp4流中提取每个帧,并使用ffmpeg将其转换为jpeg / gif。我从000001b0.....000001b5获取sdp头,并将其添加到字节数组中,然后从000001b6开始捕获一个帧并将其附加到字节数组。

当我将其刷新到文件(.mpg)并使用ffmpeg时,它会抛出错误而不是转换。 我的标题看起来像000001B008000001B58913000001000000012000C488BA98514043C1463F,之后我追加一个框架(从000001b6开始)。

2 个答案:

答案 0 :(得分:0)

我使用FFMPEG做了类似的事情,看起来你从FFMPEG获得的帧数据已经包含了帧头,这就是你需要对数据进行转码所需的全部内容。请确保将mp4数据解码为原始格式(例如RGB24),然后在将数据传递给编码器之前,使用libswscale将其编码为JPEG / GIF编码器期望的像素格式(可能是YUV格式)。 p>

答案 1 :(得分:0)

根据编解码器的不同,您可能不需要添加任何东西,或者您可能需要添加很多..

这被称为解包,MPEG4-ES没有打包模型...... H264有很多取决于配置文件。

查看RFC ..

3016或3640应该可以帮到你。

http://tools.ietf.org/html/rfc3640

http://tools.ietf.org/html/rfc3016

相关问题