前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >常见的视频分辨率及如何获取各个分辨率的H264、YUV文件

常见的视频分辨率及如何获取各个分辨率的H264、YUV文件

原创
作者头像
用户6884953
修改2020-01-09 18:47:56
3.9K0
修改2020-01-09 18:47:56
举报
文章被收录于专栏:音视频开发

常用的文件分辨率有 320*240  640*480  800*600 1280*720  1920x1080

先安装ffmpeg,然后利用ffmpeg将对应的MP4文件解封装为H264,再将对应的H264解码为YUV,也可以使用ffmpeg转分辨率,或者转封装。

首先自己用电脑摄像头录制一段mp4文件,或者是flv文件

将mp4转封装为flv

./ffmpeg -i  1.mp4 -c copy -f flv 1.flv

将MP4文件解封装成h264

./ffmpeg -i 640x480.mp4 640x480.h264

将h264文件解码为yuv文件

./ffmpeg -c:v h264_mmal -r 18 -i 640x480.h264 640x480.yuv

h264文件改变分辨率:

./ffmpeg -r 18 -i 640x480.h264 -vf scale=1280:720 1280x720.h264

mp4文件改变分辨率:

./ffmpeg -i 640x480.mp4 -vf scale=1280:720 1280x720.mp4

将yuv编码为H264:

./ffmpeg -s 1920x1080 -i  XXXX.yuv -b:v 7776k -r 25 -c:v h264_omx XXXX.h264  

yuv转png文件

./ffmpeg -s 1920x1080 -i input.yuv output.png

从h264转yuv的时候,如果不加上帧率 -r 18,可能会导致出现  Past duration XXXX too large的报错,然后就丢帧。-r 18是因为之前的H264的帧率就是18,根据真实文件的帧率进行调整。

在用ffmpeg查看h264文件的时候可以看到文件的参数,帧率也在其中:./ffmpeg -i 640x480.h264

显示信息中包含:

Stream #0:0: Video: h264 (High), yuv420p(progressive), 1280x720 [SAR 3:4 DAR 4:3], 18 fps, 18 tbr, 1200k tbn, 36 tbc

这样就可以得到所有想要的分辨率的yuv和h264测试文件。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档