文档章节

使用批处理脚本(BAT)调用FFMPEG批量编码视频

雷霄骅
 雷霄骅
发布于 2014/08/16 13:57
字数 654
阅读 565
收藏 0

精选30+云产品,助力企业轻松上云!>>>

使用批处理脚本(BAT)编码视频非常方便,尤其当视频序列非常多的时候,更是省了不少简单重复性劳动。

只要学会批处理里面几个基本的命令就行了,感觉和c/c++差不多。

set:设置变量(注意:变量一般情况下是字符串,而不是整形或者其他类型)

%变量名%:可以取到变量的值

传上来一个做实验的批处理脚本做示范(其中调用了ffmpeg和x264):

@echo off
@rem 使用此脚本生成实验序列
@rem 设置序列名称
set xuliename=src08
@rem 帧率分辨率比特率参数
set resolution1=1920x1080
set resolution2=1280x720
set resolution3=848x480
set resolution4=640x360
set resolution5=480x272
set framerate1=25
set framerate2=20
set framerate3=15
set framerate4=12.5
set framerate5=10
set framerate6=5
set bitrate1=254
set bitrate2=508
set bitrate3=763
set bitrate4=1017
set bitrate5=1526
set bitrate6=2035
set bitrate7=2544
@rem 生成特定分辨率,然后再进行上变换
ffmpeg -s %resolution1% -i %xuliename%_%resolution1%.yuv -s %resolution2% %xuliename%_%resolution2%.yuv
ffmpeg -s %resolution1% -i %xuliename%_%resolution1%.yuv -s %resolution3% %xuliename%_%resolution3%.yuv
ffmpeg -s %resolution1% -i %xuliename%_%resolution1%.yuv -s %resolution4% %xuliename%_%resolution4%.yuv
ffmpeg -s %resolution1% -i %xuliename%_%resolution1%.yuv -s %resolution5% %xuliename%_%resolution5%.yuv
@rem =======================
ffmpeg -s %resolution2% -i %xuliename%_%resolution2%.yuv -s %resolution1% -vcodec rawvideo %xuliename%_reHD_%resolution2%.avi
ffmpeg -s %resolution3% -i %xuliename%_%resolution3%.yuv -s %resolution1% -vcodec rawvideo %xuliename%_reHD_%resolution3%.avi
ffmpeg -s %resolution4% -i %xuliename%_%resolution4%.yuv -s %resolution1% -vcodec rawvideo %xuliename%_reHD_%resolution4%.avi
ffmpeg -s %resolution5% -i %xuliename%_%resolution5%.yuv -s %resolution1% -vcodec rawvideo %xuliename%_reHD_%resolution5%.avi
@rem 原始分辨率 =======================
ffmpeg -s %resolution1% -i %xuliename%_%resolution1%.yuv -s %resolution1% -vcodec rawvideo %xuliename%_reHD_ori.avi
@rem 生成特定帧率
ffmpeg -s %resolution3% -i %xuliename%_%resolution3%.yuv -r %framerate2% -vcodec rawvideo %xuliename%_fps_%framerate2%.avi
ffmpeg -s %resolution3% -i %xuliename%_%resolution3%.yuv -r %framerate3% -vcodec rawvideo %xuliename%_fps_%framerate3%.avi
ffmpeg -s %resolution3% -i %xuliename%_%resolution3%.yuv -r %framerate4% -vcodec rawvideo %xuliename%_fps_%framerate4%.avi
ffmpeg -s %resolution3% -i %xuliename%_%resolution3%.yuv -r %framerate5% -vcodec rawvideo %xuliename%_fps_%framerate5%.avi
ffmpeg -s %resolution3% -i %xuliename%_%resolution3%.yuv -r %framerate6% -vcodec rawvideo %xuliename%_fps_%framerate6%.avi
@rem 原始帧率 =======================
ffmpeg -s %resolution3% -i %xuliename%_%resolution3%.yuv -r %framerate2% -vcodec rawvideo %xuliename%_fps_ori.avi
@rem 生成特定比特率
x264 --bitrate %bitrate1% -o %xuliename%_bit_%bitrate1%.flv %xuliename%_%resolution3%.yuv
x264 --bitrate %bitrate2% -o %xuliename%_bit_%bitrate2%.flv %xuliename%_%resolution3%.yuv
x264 --bitrate %bitrate3% -o %xuliename%_bit_%bitrate3%.flv %xuliename%_%resolution3%.yuv
x264 --bitrate %bitrate4% -o %xuliename%_bit_%bitrate4%.flv %xuliename%_%resolution3%.yuv
x264 --bitrate %bitrate5% -o %xuliename%_bit_%bitrate5%.flv %xuliename%_%resolution3%.yuv
x264 --bitrate %bitrate6% -o %xuliename%_bit_%bitrate6%.flv %xuliename%_%resolution3%.yuv
x264 --bitrate %bitrate7% -o %xuliename%_bit_%bitrate7%.flv %xuliename%_%resolution3%.yuv
@rem 
ffmpeg -i %xuliename%_bit_%bitrate1%.flv -vcodec rawvideo %xuliename%_bit_%bitrate1%.avi
ffmpeg -i %xuliename%_bit_%bitrate2%.flv -vcodec rawvideo %xuliename%_bit_%bitrate2%.avi
ffmpeg -i %xuliename%_bit_%bitrate3%.flv -vcodec rawvideo %xuliename%_bit_%bitrate3%.avi
ffmpeg -i %xuliename%_bit_%bitrate4%.flv -vcodec rawvideo %xuliename%_bit_%bitrate4%.avi
ffmpeg -i %xuliename%_bit_%bitrate5%.flv -vcodec rawvideo %xuliename%_bit_%bitrate5%.avi
ffmpeg -i %xuliename%_bit_%bitrate6%.flv -vcodec rawvideo %xuliename%_bit_%bitrate6%.avi
ffmpeg -i %xuliename%_bit_%bitrate7%.flv -vcodec rawvideo %xuliename%_bit_%bitrate7%.avi



雷霄骅

雷霄骅

粉丝 219
博文 419
码字总数 2129
作品 4
朝阳
程序员
私信 提问
加载中
请先登录后再评论。
命令行批量合并视频脚本

  批量合并视频头部   需要ffmpeg, 目前直接安装格式工厂, 使用格式工厂模块下的ffmpge.exe, 避免自己去下载源码和编译   ffmpeg合并视频的几种方法   ffmpeg的合并方式有三种, ...

osc_5aj0jo70
2018/01/27
5
0
ffmpeg下载安装和简单应用

先介绍一下ffmpeg:FFmpeg是一个自由软件,可以运行音频和视频多种格式的录影、转换、流功能,包含了libavcodec —这是一个用于多个项目中音频和视频的解码器库,以及libavformat——一个音频...

osc_xucwolsl
2019/03/13
14
0
《自拍教程66》Python ffmpeg批量压缩视频

案例故事: 测试过程中发现Bug视频, 需要提供给开发用于解Bug的参考, 但是视频拍摄后,太大且无法在微信客户端传输的问题, 于是乎出现过测试人员通过winzip分批压缩(part1, part2, part3)...

zipython
05/19
0
0
java生成视频缩略图

对于上传视频生成缩略图使用的是ffmpeg进行生成的。 自己在网上找了如何进行编译ffmpeg的方法 但是感觉太复杂了 就到csdn上找到了编译好的ffmpeg文件 下载下来 给大家一个下载地址 http://d...

谷飞
2013/01/11
583
0
使用FFMPEG降低视频分辨率

由于最近要将yuv视频下采样,于是使用ffmpeg快速将yuv视频下降分辨率。在此记录ffmpeg的基础使用方法和所遇到的问题: 1、下载FFmpeg   可到官网下载:https://www.ffmpeg.org/ 在这推荐一...

osc_6oerel1o
2019/03/27
6
0

没有更多内容

加载失败,请刷新页面

加载更多

博客园二次元主题——Sakura

碎碎念 嗯,时隔多久也记不清了,我又回来了,总算是忙里偷闲把这篇文章写出来,有人要过很多次我的博客园美化方案,但是实在是忙啊,也因为我的前台技术不好,代码bug很多,所以也有点不想把...

osc_2y6i16fz
6分钟前
0
0
highcharts 自适应div的宽度

如果窗口变化时,highcharts图表是自带自适应的,但是切换折叠菜单时,highchats图表并不自适应外层div的宽度。如何实现适应div的宽度? 在网上找到有个 reflow 的方法,我是在项目中引入的 ...

tianyawhl
6分钟前
9
0
个人作业——软件工程实践总结&个人技术博客

这个作业属于哪个课程 2020春|S班 (福州大学) 这个作业要求在哪里 个人作业——软件工程实践总结&个人技术博客 这个作业的目标 回顾这门课程带来的提升、团队总结、实践中的经验总结、对下届...

osc_g032zryv
8分钟前
0
0
从封装变化的角度看设计模式——对象创建

封装变化之对象创建 在对象创建的过程中,经常会出现的一个问题就是通过显示地指定一个类来创建对象,从而导致紧耦合。这是因为创建对象时指定类名将使你受特定实现的约束而不是特定接口的约...

osc_r5t7sskd
8分钟前
11
0
从封装变化的角度看设计模式——对象创建

封装变化之对象创建 在对象创建的过程中,经常会出现的一个问题就是通过显示地指定一个类来创建对象,从而导致紧耦合。这是因为创建对象时指定类名将使你受特定实现的约束而不是特定接口的约...

osc_i5oyb1xr
9分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部