需要从mp4文件转储yuv帧

问题描述 投票:0回答:1

我使用以下命令转储JPEG帧:

gst-launch-1.0 filesrc location=<FILE LOCATION>! qtdemux name=demux  demux.video_0 ! queue ! decodebin ! videoconvert ! jpegenc ! multifilesink location=frame%d.yuv

JPEG图像显示正常。

当我尝试使用以下命令从mp4文件转储YUV帧时:

gst-launch-1.0 filesrc location=[FILE LOCATION] ! qtdemux name=demux  demux.video_0 ! queue ! decodebin ! videoconvert ! multifilesink location=frame%d.yuv

我无法看到图像,因为转储的框架没有标题细节(宽度和高度)。

使用以下命令将此帧转换为ppm格式后:

yuvtoppm [WIDTH] [HEIGHT] frame1.yuv > frame1.ppm

我能够看到框架,但它不是YUV格式。

gstreamer
1个回答
0
投票

那你的期望是什么?根据定义,原始YUV没有标题 - 它们是原始的。通常,阅读这些文件的应用程序需要您设置yuvtoppm的宽度,高度和格式。

您可能想要查看y4menc,它可能会为某些应用程序可能读取的这些文件添加标题。

或者您可以将其存储为视频文件 - matroskamuxavimux应该能够处理未压缩的数据。

© www.soinside.com 2019 - 2024. All rights reserved.