example: 将movie.wmv 转成movie.avi
mencoder movie.wmv -o movie.avi -ovc lavc -oac lavc
Here's an explanation each option being passed:
- -o <filename> 输出文件 (output )
- -ovc <video codec> OVC 输出 后的视频格式 ,ovc :output video ..
- -oac <audio codec> 输出后的音频格式
或许你会说记不住 lavc 等音频格式,视频格式,你根本不用去记
当你的选项中缺少-oac 时它会提示
[c-sharp] view plain copy
- jixiuf@jf /tmp/d $ mencoder a.mpg -o b.avi
- MEncoder SVN-r29796-4.4.3 (C) 2000-2009 MPlayer Team
- 成功:格式:0 数据:0x0 - 0xca9800
- 检测到 MPEG-PS 文件格式。
- VIDEO: MPEG1 320x240 (aspect 1) 23.976 fps 0.0 kbps ( 0.0 kbyte/s)
- [V] 文件格式:2 fourcc:0x10000001 大小:320x240 帧速:23.976 帧时间:=0.0417
- 没有选择音频编码器(-oac)。请选择一个编码器(参见 -oac help)或者使用 -nosound。
- 正在退出..
这个时候你只需输入
mencoder -oac help 就会给出如下提示
[c-sharp] view plain copy
- jixiuf@jf /tmp/d $ mencoder -oac help
- MEncoder SVN-r29796-4.4.3 (C) 2000-2009 MPlayer Team
- Available codecs:
- copy - frame copy, without re-encoding (useful for AC3)
- pcm - uncompressed PCM audio
- mp3lame - cbr/abr/vbr MP3 using libmp3lame
- lavc - FFmpeg audio encoder (MP2, AC3, ...)
- twolame - Twolame MP2 audio encoder
- faac - FAAC AAC audio encoder
- copy 表示直接把源视频中的音频部分不经解码直接copy 到新文件
- mp3lame :表示mp3 编码音频
任务1: 延迟视频 部分 (对avi文件有效)
mencoder -delay 0.7 -oac copy -ovc copy input.avi -o output.avi
解释 :让视频轨比当前的音频轨落后0.7秒钟
任务2: 延迟音频 部分(对avi文件有效)
mencoder -oac copy -ovc copy -audio-delay -0.7 input.avi -o output.avi
解释 :让音频轨比当前的视频轨落后0.7秒钟
任务3: 切割视频轨
mencoder -ss 00:00:10 -endpos 60 -ovc copy -oac copy input.avi -o output.avi
解释 :切割视频部分,从0分10秒开始,到1分10秒,时间长度为60秒。将结果存储为output.avi
任务4: 连接两段 视频 (必须比特率相同)
mencoder -oac copy -ovc copy -idx -o output.avi input1.avi input2.avi
解释 :
任务5: 将一系列 静止图像和一个mp3文件转换为AVI视频文件
mencoder "mf://snap*.bmp" -mf fps=25 -oac mp3lame -lameopts abr:br=128:mode=3 -audiofile test.mp3 -ovc lavc -lavcopts vcodec=msmpeg4v2:vpass=1:vbitrate=2560000:mbd=2:keyint=132:vqblur=1.0:cmp=2:subcmp=2:dia=2:mv0:last_pred=3 -o leadnull
mencoder "mf://snap*.bmp" -mf fps=25 -oac mp3lame -lameopts abr:br=128:mode=3 -audiofile test.mp3 -ovc lavc -lavcopts vcodec=msmpeg4v2:vpass=2:vbitrate=2560000:mbd=2:keyint=132:vqblur=1.0:cmp=2:subcmp=2:dia=2:mv0:last_pred=3 -o lead.avi
解释 :mono=3 代表单声道音频输出, mono=0 代表立体声音频输出。 上面使用的视频编码是微软的msmpeg4,因此这个AVI文件可以直接在Windows media player中播放,不需要另外安装插件。 上面两条命令,表示两遍压缩。 为提高速度,也可以只实用第一条做单次压缩。 输出视频的fps为25。
任务6: 切割 mp3音频文件
mplayer -ss 00:01:59 -endpos 102.5 input.mp3 -ao pcm
sox audiodump.wav result1.wav fade t 3
sox result1.wav result2.wav fade t 0 102.5 3.5
lame result2.wav -o fighting.mp3 -b 160
解释 :这个过程由四条命令组成。 上面的例子中,
第一步:切割部分为 1分59秒开始,到3分41.5秒结束,长度102.5秒。用户需自己计算切割部分,设定上述参数。
第二步:用sox对音频开头3秒钟做一个淡入效果(声音逐渐增强)
第三步:用sox对音频结束3.5秒钟做一个淡出效果(声音逐渐衰减)
第四步:将lame处理好的音频重新编码成160kbps的mp3文件
其中,第二、第三步是可以省略的。
任务7: 将wma 文件转换为mp3文件
mplayer input.wma -ao pcm
lame audiodump.wav -o output.mp3 -b 160
解释 :一共两条命令。第一条将wma转化为wav文件,第二条再将wav转换为mp3文件,比特率为160kbps.
任务8: 将一系列 图像文件转换为flv视频文件
mencoder "mf://snap*.bmp" -mf fps=25 -audiofile test.mp3 -o output.flv -af resample=22050:0:0 -sws 9 -vf scale=448:-3,expand=448:336 -of lavf -ovc lavc -lavcopts vcodec=flv:vbitrate=260:mbd=2:mv0:trell:v4mv:cbp:last_pred=3:predia=2:dia=2:vb_strategy=1:precmp=2:cmp=2:subcmp=2:preme=2:vpass=1
mencoder "mf://snap*.bmp" -mf fps=25 -o output.flv -audiofile test.mp3 -af resample=22050:0:0 -sws 9 -vf scale=448:-3,expand=448:336 -of lavf -ovc lavc -lavcopts vcodec=flv:vbitrate=260:mbd=2:mv0:trell:v4mv:cbp:last_pred=3:predia=2:dia=2:vb_strategy=1:precmp=2:cmp=2:subcmp=2:preme=2:qns=2:vpass=2
解释 :两遍压缩,将一系列snap001.bmp, snap002.bmp, ...图像和一个mp3文件"test.mp3"转换成fps=25的录像。音频采样率设定为22050,视频画面大小为448x336, 视频的比特率为260kbps。
如果你希望更改视频中的keyframe, 你可以在第一条命令执行后,手动编辑一个divx2pass.log文件。文件中"Type:1"表示关键帧keyframe (或者叫i frame), "Type:2"表示p-frame,就是只记录相邻帧变化部分的帧。
任务9: 将一系列 图像文件转换为ogg视频文件
ffmpeg2theora -f image2 snap%05d.bmp -V 320 -o output.ogg
解释 :ogg录像还是有点用的,wikipedia, wikimeida都在用。 上面的视频比特率为320kbps
任务10: 将一系 列图像转化为与NTSC DVD兼容的mpeg2格式文件。
来源:(http://blog.sina.com.cn/s/blog_648dbb7c0100h69j.html ) - 15条常用的视频音频编辑脚本命令(mencoder/ffmpeg等)_再会阿休肯_新浪博客
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd:tsaf -vf scale=720:480,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vpass=1:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=18:vstrict=0:acodec=ac3:abitrate=192:aspect=16/9 -ofps 30000/1001 -o ntscdvd.mpg "mf://snap*.bmp" -mf fps=25 -audiofile test.mp3
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd:tsaf -vf scale=720:480,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vpass=2:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=18:vstrict=0:acodec=ac3:abitrate=192:aspect=16/9 -ofps 30000/1001 -o ntscdvd.mpg "mf://snap*.bmp" -mf fps=25 -audiofile test.mp3
解释 :两遍压缩,输入图像帧率为25fps, 输出帧率为29.97fps,视频编码mpeg2, 音频编码192kbps ac3.
任务11: 将一系 列图像文件转换为与PAL DVD兼容的mpeg2格式视频文件
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd:tsaf -vf scale=720:576,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vpass=1:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:vstrict=0:acodec=ac3:abitrate=192:aspect=16/9 -ofps 25 -o paldvd.mpg "mf://snap*.bmp" -mf fps=25 -audiofile test.mp3
mencoder -oac lavc -ovc lavc -of mpeg -mpegopts format=dvd:tsaf -vf scale=720:576,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vpass=2:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=5000:keyint=15:vstrict=0:acodec=ac3:abitrate=192:aspect=16/9 -ofps 25 -o paldvd.mpg "mf://snap*.bmp" -mf fps=25 -audiofile test.mp3
解释 :两遍压缩,输入为snap001.jpg, snap002.jpg... 和test.mp3,图像系列的fps为25, 输出视频文件的fps为25. 视频编码为mpeg2, 音频编码为192kbps ac3.
任务12: 将视频 文件转换为一系列图像
用ffmpeg命令如下
ffmpeg -i test.avi snap%05d.bmp
也可以用mplayer完成同样功能
mplayer video.avi -vo png -ss 00:00:10 -endpos 5.0 -vf crop=480:360:80:60
解释 :这里mplayer的例子中,还提供了额外的切割选择功能。切割的部分从0分10秒开始,到0分15秒结束,长达5秒。同时画面也被 切割,切割的位置从坐标(80,60)开始,宽度480像素,高度360像素。这里坐标系以屏幕左上角为(0,0).
任务13: 将 midi文件转换为mp3文件
timidity input.mid -Ow
lame -b 160 -h -k input.wav output.mp3
解释 :第一条命令使用timidity将midi转换为wav文件,第二条命令用lame将wav转换为160kbps mp3文件。
timidity配置和安装还是比较麻烦的。 还需要额外安装高品质的sf2声音字体文件,配置sf2文件也异常容易出错。总体效果还可以接受。但无法使用目前流行的vst,因此可能会被慢慢淘汰 掉。
任务14: 将一系 列图像转换为swf格式的flash文件(需要perl)
flv2swf input.flv output.swf
解释 :有时候可能用swf来保存视频比flv更方便。如果图像数量不多的话,可以采用swftools来进行转换
如果图像数量很多的话,首先我们用 任务8 中的命令将图像转换为一个flv文件。 然后我们可以用adobe的各种软件很轻松的将flv录像加入一个flash项目里,最后输出为swf. 如果你熟悉perl的话,也可以用一 个perl脚本将flv文件转换成swf. CPAN(Perl公共模块库)有一个FLV::info的模块,安装后就可以使用flv2swf命令了。
任务15: 将 mp3文件转换为wma文件
mplayer input.mp3 -ao pcm
ffmpeg -i audiodump.wav -acodec wmav2 -ab 128000 test.wma1
解释 :偶尔也需要这个功能的。 第一步,将mp3文件转换为wav文件,第二步用ffmpeg将wav文件转换为wma.
如果你只需要将单幅图像如某个封面,和一个mp3合并成一个视频文件,请参看前一篇博文。
将一幅图像和一个mp3文件合并成录像文件的小工具
参考链接
上述命令基本上是参考了mplayer的用户手册,videohelp.com的论坛帖子写的。
http://www.mplayerhq.hu/DOCS/HTML/en/encoding-guide.html
http://forum.videohelp.com/
软件主页
mencoder的Windows binary: http://oss.netfarm.it/mplayer-win32.php
ffmpeg的Windows binary: http://ffmpeg.arrozcru.org/builds/
lame的Windows binary: http://lame.sourceforge.net/links.php
sox: http://sox.sourceforge.net/
ffmpeg2theora: http://v2v.cc/~j/ffmpeg2theora/
cpan: http://search.cpan.org/dist/FLV-Info/
Active perl的Windows版本: http://www.activestate.com/activeperl/
上述软件被广泛使用,其源代码部分没有什么问题, 但因为专利和版权的问题,公布其Windows的二进制可执行文件则可能触犯了一些国家的法律,目前合法性这个问题还比较模糊。
不知道为何我自己无法回复了。
wav转 aac命令 可参考
ffmpeg -i soundtrack.wav -acodec aac -ab 128kb output.m4a
其它例子:
例一:
mencoder basket.rm -ovc lavc -oac lavc -o basket.avi
把basket.rm文件转换为basket.avi文件,其中, 视频 转换为mp4格式,音频转换为
mp2格式。"-o basket.avi"定义转换成的文件名为"basket.avi","-ovc lavc"表示
用默认的mp4格式编码图象,"-oac lavc"表示用默认的mp2格式编码声音。
例二:
mencoder basket.rm -ovc lavc -oac mp3lame -o basket.avi
"oac mp3lame"表示用mp3格式编码声音。
例三:
mencoder basket.rm -ovc lavc -oac mp3lame -o basket.avi -ss 5:00 -endpos
8:00
"-ss 5:00 -endpos 8:00"告诉mencoder仅仅转换从5分0秒到13分0秒的片段。
例四:
mencoder basket.avi -ovc copy -oac copy -o newbasket.avi -ss 5:00
-endpos 8:00
"-ovc copy"表示不作 视频 转换,"-oac copy"表示不作音频转换。这个命令把
basket.avi文件中的5分0秒到13分0秒的部分拷贝到newbasket.avi文件中。
例五:
mencoder a1.avi a2.avi -ovc copy -oac copy -o asum.avi
这个命令把a1.avi和a2.avi文件 合并 为asum.avi文件。
例六:
mencoder basket.rm -ovc lavc -oac lavc -lavcopts vbitrate=100 -lavcopts
abitrate=32 -o basket.avi
限制目的文件的大小。目的文件中,一秒种图象占用100kbit空间,一秒钟声音占用
32kbit空间。较小的目标文件大小,一般意味着较低的图象和声音的质量。
比较详细的Mencoder命令行使用相关推荐
- GitBook制作电子书详细教程(命令行版)
GitBook 是一款基于 Node.js 开发的开源的工具,可以通过命令行的方式创建电子书项目,再使用 MarkDown 编写电子书内容,然后生成 PDF.ePub.mobi 格式的电子书,或生成一 ...
- 视频转换工具-mencoder命令行参数
因为刚好有些视频要转,google了一下,网上有很多Ubuntu视频转换工具mencoder的介绍,使用以后,觉得有必要汇总一下,留以他用. feedom.net CODE: mencoder [op ...
- 视频压缩工具linux,Ubuntu视频转换工具-mencoder命令行参数
因为刚好有些视频要转,google了一下,网上有很多Ubuntu视频转换工具mencoder的介绍,使用以后,觉得有必要汇总一下,留以他用. CODE: mencoder [options] file ...
- linux刻录文件,Linux命令行下刻录CD-ROM数据光盘详细过程
在Linux 环境下,我们也可以轻松制作数据光盘(ISO 9660格式).早期制作光盘都是采用命令行方式进行的,但是由于大多数电脑爱好者不熟悉Unix,因此,在命令行下刻录光盘显得比较繁杂.后来,随着 ...
- Python命令行解析:IDE内点击Run运行代码直接得出结果、基于TF flags(或argparse、sys.argv)在Dos内命令行(一条命令)调用代码文件得出结果
Python命令行解析:IDE内点击Run运行代码直接得出结果.基于TF flags(或argparse.sys.argv)在Dos内命令行(一条命令)调用代码文件得出结果 目录 命令行解析 T1.采 ...
- 如何用命令行刷新,启用,禁用Magento2的缓存
当你使用Magento商店时如何刷新Magento 2中的Cache命令行是基本的常用操作.Magento 2默认有12种缓存类型.在命令行中有5个简单的命令来管理缓存.在这篇文章中,我将逐步向您展示 ...
- FFmpeg命令行解析
目录标题 一.引言(Introduction) 1.1 FFmpeg简介(Overview of FFmpeg) 1.2 FFmpeg命令行的应用场景(Application Scenarios of ...
- keil使用命令行编译_用c51命令行编译HEX单片机文件
刚开始学STC51单片机的开发,用Keil uVision4进行编辑和编译.Keil的IDE是使用工程方式组织,对于小弟初学并不是很方便. 每次做个试验都要建立一个工程,而且会出现一堆文件. 虽然电脑 ...
- python3的命令行参数
概述 Python3的命令行参数可以通过sys模块中的argv属性来获取.argv是一个字符串列表,包含了命令行参数.其中,argv[0]表示程序本身的名称,argv[1:]表示程序接收到的命令行参数 ...
最新文章
- c#调用excel报错 (异常来自 HRESULT:0x80010105 (RPC_E_SERVERFAULT))问题的解决
- python数据比例_#python# #数据分析# 性别比例分析
- 强化学习(四)---基于模型动态规划问题
- 武汉理工计算机拟录取,2017武汉理工计算机复试
- ASP.NET Core 3.x启动时运行异步任务(一)
- linux驱动静态分配内存,Linux驱动设计——内存与IO访问
- 数据结构之图的存储结构:邻接多重表
- 开源硬件 专利_标准和开源:为什么专利待遇不同?
- jquery 性能优化与实践
- android系统打印功能实现,Android实现系统打印功能
- 常见Windows硬件故障
- Javascript——读取json文件方法总结
- 【七日阅书】1.注重实效《程序员修炼之道—从小工到专家》
- 采集插件,自动采集伪原创发布插件
- JZOJ4816. label
- 在JS中使用时间对象获取月份getMonth()时比实际的月份少一
- EI 收录的期刊有哪些
- 【从零开始学习MySql数据库】(3)函数与子查询和连接查询
- Codeforces Round 1133(Div.3)题解
- 比特交织 matlab,比特交织空时编码不对称调制方案及软件分析
热门文章
- Hive-编写UDF函数(详细教程~~~)
- 大数据Flink安装部署
- python基础一 day56
- 从初级程序员到CEO,汤鹏与时代碰撞出的那些“火花”
- mac定时执行python_Mac中的定时任务利器:launchctl
- 关于数字基带信号单、双极性归零与不归零信号中直流分量与定时分量的判断有无的依据
- vs2017开发ActiveX(主讲OCX)(七)、方法
- 关于uC/OS-II 概述
- 使用async批量获取博客链接
- 驱动开发思路以及应用程序与驱动程序的区别