Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Video 将H264视频转换为原始YUV格式_Video_Ffmpeg_H.264_Encode - Fatal编程技术网

Video 将H264视频转换为原始YUV格式

Video 将H264视频转换为原始YUV格式,video,ffmpeg,h.264,encode,Video,Ffmpeg,H.264,Encode,是否可以使用ffmpeg从H264编码视频创建原始YUV视频?我想用matlab打开视频,逐帧访问Luma、Cb和Cr组件。可以,只需指定像素格式即可。要获取格式的完整列表,请执行以下操作: ffmpeg -pix_fmts | grep -i pixel_format_name 例如,如果要将mp4文件的第一个视频曲目保存为yuv420p(p表示平面)文件: 首先,我得到了这个错误:无法识别的选项“c:v”,然后,我使用“-vcodec rawvideo”而不是“-c:v rawvideo”

是否可以使用ffmpeg从H264编码视频创建原始YUV视频?我想用matlab打开视频,逐帧访问Luma、Cb和Cr组件。

可以,只需指定像素格式即可。要获取格式的完整列表,请执行以下操作:

ffmpeg -pix_fmts | grep -i pixel_format_name
例如,如果要将mp4文件的第一个视频曲目保存为
yuv420p
p
表示
平面
)文件:


首先,我得到了这个错误:无法识别的选项“c:v”,然后,我使用“-vcodec rawvideo”而不是“-c:v rawvideo”,它就工作了。谢谢-C: V和-C:最近版本的FFMPEG应该是可以的,你可以运行一个旧版本,考虑更新你的版本,如果可以的话)其他人会得到一串多色线吗?此外,转换会立即发生,这对我来说似乎不正确…?@JoshuaF.Rountree您需要指定尺寸以便能够查看它(例如,在VLC中):@thang如果您保留时间戳+原始视频帧,您可以采用两种不同的方式。首先,结合ffmpeg对原始帧进行解码,ffprobe——show_frame(或类似的东西…)转储帧信息并grep它们的pts。在那之后,交错这2个信息源(我想我使用了一个简单的python脚本来读取2个procress标准输出,并在输出上对它们进行多路复用),但我也经常解析ffmpeg-I文件名输出,以获得分辨率和帧速率,从而为原始视频数据构建一个完全独立且紧凑的格式,如:W、H、FPS、PTS、frame等等。。。。PTS,FRAME…working命令:ffmpeg-i input.264-vcodec rawvideo-pix_fmt yuv420p output.yuv
ffmpeg -i video.mp4 -c:v rawvideo -pix_fmt yuv420p out.yuv