`

mencoder使用的基本参数

阅读更多

mencoder是linux平台功能强大的视频格式转换工具。为将“越狱”拷贝到我的手机里,于是记录下这些使用的基本参数

mencoder.exe -srate 22050 -vf scale=208:-3 -ofps 12 -oac mp3lame -lameopts mode=3:cbr:br=24 -ovc lavc -ffourcc DX50 -lavcopts vcodec=mpeg4:vhq:vbitrate=112 "需要转换的视频文件" -o "输出的.avi" 2> 2.txt

1、-srate 22050 声音采样频率设置,现为22K
2、-vf scale=208:-3 宽度为208,高度自动调整保持比例;-vf scale=-3:176宽度自动调整保持比例,高度为176;如果想保持原来的大小可以不要这个参数
3、-ofps 12 帧速率设置,现为12fps
4、-oac mp3lame 音频采用mp3编码
5、-lameopts mode=3:cbr:br=24单声道,音频码率为24kbps;-lameopts mode=0:cbr:br=24立体声,音频码率为24kbps;
还可设置音量,-lameopts mode=3:cbr:br=32:vol=1,设置范置为1~10,但不宜设得太高
6、-ovc lavc -ffourcc DX50 -lavcopts vcodec=mpeg4:vhq:vbitrate=112采用高质DivX视频编码,视频码率为112kbps;
-ovc xvid -xvidencopts bitrate=112采用XviD视频编码

附文:
使用mencoder制作pda使用的电影

1 mplayer和mencoder
mplayer 是最为强大和灵活的多媒体播放器软件之一,在windows平台能够和他相提并论的只有media player classic而已。mencoder是和mplayer共享同样架构和底层库的多媒体编码软件。这使得mencder有很好的兼容性,和很快的速度。大家只要记住一点:
MPLAYER能够播放的电影,就能够通过mencoder编码。
但反过来,MPLAYER播放有问题的电影,MENCODER也无能为力。这是mencoder最强的,也是最弱的一点。
注意:在此首先提醒,mplayer和mencoder是基于命令行的软件,不过对于mencoder来说,常用的参数就那么几个,可以用简单的脚本来驱动。

2 准备工作
作为典型的unix风格的软件(也包括他的开放源代码性质),mplayer不需要运行什么安装程序,也不需要系统提供的codec,他的安装过程可以参考:
http://www5.eastgame.net/index.p ... flat&tid=483408
(不能够访问连接的,可以通过访问TLF论坛--软件讨论版--神乎奇迹的播放软体mplayer 找到,这个帖子的名字和点击量还是相当匹配的)
当按照这篇文章按照以后,能够正常的使用mplayer播放wmv9,quicktime,和大部分的rm/rmvb时候,代表mplayer和mencoder的配置完成。

3 使用mencoder进行编码
首先选择一部avi文件,假设文件名为src.avi,启动命令行,运行
mencoder.exe src.avi -o dst.avi -endpos 60 -oac copy -ovc copy
他的含义是截取src.avi的前60秒,并且不通过再编码,直接输出为dst.avi。这时候dst.avi应该是src.avi的前60秒的内容。
这个命令行参数中,有一些需要注意的地方:
1 src.avi 源文件名是src.avi
2 -o dst.avi 编码输出的文件名是dst.avi
3 -endpos 60 在第60秒的地方结束编码,这个位置也可以跟其它的全局参数(任何在mplayer播放时指定的参数,都可以在这个位置给出)
4 -oac 指定音频编码方式
5 -ovc 指定视频编码格式
无论后面的mencoder参数多么复杂,都是由这5个部分组成,这点需要牢记。而通过第3点,可以在编码中延伸出非常多的技巧。

接着,使用更加复杂一些的参数:
mencoder.exe src.avi -o dst.avi -endpos 60 -oac mp3lame -lameopts vbr=3:br=128 -ovc copy
他的含义是截取src.avi的前60秒,视频不重新编码,音频使用lame进行重新编码,指定vbr编码方式为abr,比特率为128kbps。
命令行的参数:
1 -lameopts 编码的参数
2 : 各个编码参数使用":"隔开,并列列出
这一步成功以后,试着对音频不重新编码,对视频重新编码:
mencoder.exe src.avi -o dst.avi -endpos 60 -vf scale=320:240 -oac copy -ovc xvid -xvidencopts pass=1:bitrate=300
mencoder.exe src.avi -o dst.avi -endpos 60 -vf scale=320:240 -oac copy -ovc xvid -xvidencopts pass=2:bitrate=300
和上一个不同的是,在编码前视频被scale成320*240格式,接着使用xvid进行编码,1pass,bitrate为300(1 pass的bitrate选项好像无效?),接着使用2pass编码一遍
如果mencoder报错误,首先检查以上的命令行参数是否正确,特别是空格。

通过以上3步,而且都成功的话,那么可以实际试验真正的编码格式了,我目前使用的参数为:
mencoder.exe src.avi -o dst.avi -noskip -vf scale=320:240 -oac mp3lame -lameopts vbr=3:br=128 -ovc xvid -xvidencopts pass=1:bitrate=300:keyframe_boost=20:trellis:quant_type=h263
mencoder.exe src.avi -o dst.avi -noskip -vf scale=320:240 -oac mp3lame -lameopts vbr=3:br=128 -ovc xvid -xvidencopts pass=2:bitrate=300:keyframe_boost=20:trellis:quant_type=h263
无论是电影还是动画,这个参数设置都可以得到非常理想的效果。速度方面,在音频视频都重新编码的情况下,2pass的情况下,在我的C4 2G的机器上,略小于播放时间。我的经验不足,不然2pass中第一遍pass的速度还可以提高。体积方面,一部127分钟的dvd光盘编码后大小为 340M,一部25分钟的动画,编码后结果在76M左右。
在dell x5(pxa255 300MHZ),使用betaplayer播放,除了偶尔停顿以外,整体相当流畅。

4 一些编码提示
---对于dvd光盘的转换,源文件的格式为 dvd://1 -dvd-device z:/
其中z是dvd光驱号.
---对于源是ac3的音频,往往比较轻,可以在lameopts中指定vol=n(取值0-10)来提高增益(音量)
--使用-vf scale -zoom -xy 320 可以指定输出视频的宽度为320,由mencoder自行计算合适的高度
--使用-noskip 禁止编码中跳帧
--使用-ss 00:30 -endpos 60编码电影中30分钟开始的60秒内容,在编码整部电影之前,可以尝试编码片断以看看效果,并且根据结果调整参数
--对于采样率为22KHZ的音频,如果转换后的音频存在问题,可以在mencoder参数的第3部分指定-ssrate 44100进行重采样
--质量优先的情况下,对于源音频不大于128kbps的,建议保留,大于这个值的,重新编码为128kbps
--质量优先的情况下,建议视频编码不低于250kbps,300kbps可以得到相当满意的结果
--质量优先的情况下,建议保留原始的fps

5 存在问题
希望高手多来指点迷津
--外挂字幕问题待研究
--mplayer播放一部分特定特征的rm文件会崩溃,这些文件没有办法通过mencoder编码
--mplayer播放一部分wmv8电影会出问题,mencoder对这些文件也没有办法
--源音频采样率22KHZ情况下,mencoder通过lame转换的音频会有问题,通过-ssrate可绕开这个问题
--xvid编码参数的选择,betaplayer不支持qpel和gmc,其他一些编码的参数,自己用着合适,没有更深入的研究
分享到:
评论

相关推荐

    mencoder视频转码工具

    mencoder的基本转换命令格式如下: ``` mencoder input_video.ext -o output_video.ext -oac audio_codec -ovc video_codec ``` - `input_video.ext` 是源视频文件的路径和扩展名。 - `-o output_video.ext` 指定...

    ffmpeg和mencoder的总结

    MEncoder中的`-ovc`参数可以指定编码器,如`-ovc lavc`使用libavcodec编码器,并可通过`-qscale`设置质量级别。 4. **裁剪和缩放**:使用`-vf`参数添加视频过滤器,例如`-vf crop=width:height:crop_x:crop_y`可以...

    mencoder 编码解码

    mencoder 的使用通常涉及以下参数: - `-i` 或 `--input`:指定输入文件,即要处理的视频源。 - `-o` 或 `--output`:指定输出文件,定义编码后的视频保存位置。 - `-of` 或 `--output-format`:设置输出格式,如...

    ffmpeg+mencoder集合

    1. **音视频转换**:使用`-i`参数指定输入文件,`-c:v`和`-c:a`分别指定视频和音频编码器,`output.mp4`为输出文件名。例如: ``` ffmpeg -i input.avi -c:v libx264 -c:a aac output.mp4 ``` 2. **调整视频...

    基于mencoder实现的视频截取合并demo

    在mencoder中,我们可以使用`-ss`参数来指定开始截取的时间点,`-endpos`参数来设定结束时间。例如,`-ss 00:01:30 -endpos 00:02:00`将从1分钟30秒开始截取,到2分钟结束。 接下来,我们讨论视频合并。当有多段...

    ffmpeg、mencoder转码工具

    FFmpeg和MEncoder是两种广泛使用的命令行工具,主要用于音视频的编码、解码、转换以及流处理。在IT行业中,这些工具对于处理多媒体数据,尤其是视频内容的开发者和运维人员来说,是不可或缺的。 FFmpeg是一个开源...

    mencoder转换工具

    在提供的"mencoder转换工具及使用说明"文件中,应该包含了详细的步骤和参数解释,帮助用户正确使用mencoder。这可能包括但不限于: 1. **系统需求**:确保您的系统已安装了mencoder和所有必要的依赖库。 2. **安装...

    Mencoder实现视频剪切合并添加字幕

    对于初学者,建议查阅Mencoder的官方文档或在线教程,以便更深入地了解每个参数的具体含义和使用方法。 总之,Mencoder是一个功能强大的视频处理工具,通过熟练掌握它的使用,您可以高效地进行视频编辑和优化工作。...

    mencoder实现视频合并、剪切、添加字幕的VisualC++代码

    要在视频中添加字幕,可以使用mencoder的 `-sub` 参数指定字幕文件,和 `-sid` 参数来选择字幕流。例如,如果你有一个名为`subtitle.srt`的字幕文件,可以这样添加: ``` mencoder input.avi -sub subtitle.srt -...

    JAVA 利用 ffmpeg 和 mencoder 对视频进行转换

    本文将深入探讨如何使用Java结合FFmpeg和mencoder工具对视频进行转换。FFmpeg是一个强大的跨平台的命令行工具,用于处理音频和视频文件,而mencoder是MPlayer的一部分,同样用于视频编码和转换。 首先,让我们理解...

    Mplayer及Mencoder视频编解码+播放功能大合集

    它可能是Mplayer和Mencoder使用的入门资料,对于初学者来说尤其有价值。 总的来说,Mplayer和Mencoder是强大的视频处理工具,无论你是想播放各种格式的媒体文件,还是需要对视频进行编码和转换,它们都能提供强大的...

    mencoder媒体格式转换

    mencoder支持音频和视频的同步调整,如使用`-async`参数。同时,它还提供了丰富的滤镜功能,如裁剪、缩放、色彩校正等,通过`-vf`选项应用。 6. **多线程编码** 为了提高编码速度,mencoder支持多线程编码,可以...

    利用ffmpeg、mencoder转换视频格式为FLV格式

    要将视频转换为FLV格式,使用FFmpeg的基本命令格式如下: ```bash ffmpeg -i 输入视频文件 -c:v libx264 -preset slow -crf 22 -c:a aac -b:a 128k 输出的FLV文件 ``` 这里,`-i` 参数指定输入视频文件,`-c:v ...

    ffmpeg 及 mencoder的 exe可执行程序

    FFmpeg和MEncoder是两种广泛使用的开源视频处理工具,它们都是命令行界面的可执行程序,可以在各种操作系统上运行,包括Windows XP。这两个工具在IT行业中对于视频编码、转换、编辑以及流媒体处理等方面有着至关重要...

    mencoder xxx to flv

    mencoder 允许你自定义编码参数,如视频质量、比特率、帧率等。例如,你可以设置视频比特率为 500Kbps: ``` mencoder input_video.xxx -o output.flv -of lavf -ovc lavc -lavfopts i_frame_qscale=2,format=flv,...

    mencoder.exe

    mencoder.exe 提供了丰富的命令行参数,允许用户自定义转码过程中的各种设置。例如,你可以指定输入文件、输出文件、编码器、解码器、视频比特率、音频采样率等。一个基本的使用示例是: ``` mencoder input_video....

    ffmpeg+mencoder实现视频转码

    例如,使用FFmpeg进行视频转码的基本步骤如下: 1. **构建命令**:根据需要设置输入文件、输出文件、编码参数等,构建FFmpeg或MEncoder的命令行字符串。 2. **执行命令**:使用`Runtime.getRuntime().exec(command)...

    mencoder视频格式转换+ffmpeg视频截图DEMO

    2. 使用mencoder命令行,指定输入文件、输出格式以及可能的编码参数,如质量、码率等。 3. 执行命令,mencoder会进行实时编码并将结果保存为指定的FLV文件。 例如,一个基本的mencoder转换命令可能如下所示: ``` ...

    ffmpeg+mencoder两种视频转换成flv的文件

    FFmpeg和MEncoder是两种广泛使用的开源视频处理工具,它们都可以将不同的视频格式转换为FLV(Flash Video)格式,适合在Web上进行流媒体播放。让我们深入了解一下这两个工具及其在视频转码过程中的应用。 FFmpeg是...

Global site tag (gtag.js) - Google Analytics