Gstreamer视频到pgm文件



我正试图使用Gstreaamer从视频源以RAW格式(PGM)保存多个文件。感谢gst-inspect工具阅读我使用的differents插件的differentssource和sink,我找不到实现目标的正确方法。我使用mfw_v4lsrc作为源视频,使用ffenc_pgm进行编码,使用filesink保存文件。

这是我的命令行:gst启动mfw_v4lsrc设备=/dev/video0名称=源!video/x-raw-yuv,宽=250,高=250!ffenc_pgm!filesink location=test.pgm

我一直坚持无法将源链接到ffenc_pgm。

我可以获得一个实时并保存在jpeg中。但为了我的目标,我需要你的帮助。

感谢

这可能是因为源元素无法生成ffenc_pgm所期望的格式(似乎只需要灰度格式),也可能是因为您施加的250x250分辨率限制,您的源元素可能无法生成。

你可以尝试添加转换器来帮助那里:

gst-launch mfw_v4lsrc device=/dev/video0 name=source ! videoscale ! video/x-raw-yuv, width=250, height=250 ! ffmpegcolorspace ! ffenc_pgm ! filesink location=test.pgm

此外,您可能希望用多文件接收器替换filesink。如果您希望每个缓冲区有一个文件,filesink将创建一个文件。我不知道pgm文件是如何工作的,所以我不能就此提出建议。

最后一个提示:请转到gstreamer 1.x系列,0.10已经过时,并且在3年以上的时间内未接触。

好的,

通过使用这个:

gst启动-v mfw_v4lsrc设备=/dev/video0数字缓冲区=9!ffmpeg色彩空间!video/x-raw-gray,宽=248,高=248,格式=(fourcc)I420!ffenc_pgm!多文件接收器位置="帧%d.pgm"

我有9个pgm文件通过xnview验证。然而,这些文件是用等于255的灰度编码的,但我需要用1024(每个像素2个字节)进行编码,使用P5幻数。我在ffmpegcolorspace或ffenc_pgm中找不到如何做到这一点。。。

相关内容

  • 没有找到相关文章

最新更新