`

Mencoder常用视频转换参数

阅读更多
Mencoder常用视频转换参数
2008年4月11日发表评论阅读评论
参数详解:
1、-ofps 15 :帧速率15fps
2、scale=176:144 :图像原始比例,如4:3/16:9,-3表示适应宽度,-1表示默认值
3、expand=176:144:转换后的分辨率,0:0:1表示视频x,y位置
4、-srate 44100 :声音采样率44100Hz
5、-ovc xvid :视频编码格式XVID
6、-xvidencopts bitrate=500:视频编码率500Kbps
7、max_bframes=0:禁用BFrame
8、quant_type=h263:XVID编码的量化方式(建议改为mpeg)
9、me_quality=0:VHQ模式参数,动态搜索精度(6为精度最大值)
10、-lavcopts acodec=mp2:音频编码为MP2
11、abitrate=96 :音频编码率96Kbps

这样对于一个15fps视频最佳参数为:
max_key_interval=150:max_bframes=0:profile=sp3:trellis:chroma_me:chroma_opt:hq_ac:quant_type=h263:me_quality=6:vhq=4

Xvid编码高级参数:
压缩过程中的视频码率建议不要超过192Kbps(因为对于加入了手动参数的Xvid编码器,画质提升是相当明显的),强烈建议用2-Pass压缩!
首先介绍一下这些高级参数的作用:
cartoon:卡通模式,非卡通则去掉此参数
vhq=4:VHQ MODE(动态搜索算法),有0-4五个值,越大画质越好,但是编码速度越慢
me_quality=6: 动态搜索精度(6为精度最大值)
chroma_me:动态检索 ,色彩动态评估
max_bframes=0 :B帧最大间距,设为0表示关闭B帧功能
profile=XXX :小于等于15fps设置为sp3,大于15fps设置为asp3
max_key_interval=XXX :最大I帧(关键帧)间隔,一般设置成帧数的10倍
Quant_type=mpeg:量化矩阵,Mpeg模式,如果压缩时去掉这段就默认量化矩阵为H.263
trellis:高质量量化模式
GMC:全域动态补偿
qpel:四分之一像素精确动态补偿(如果使用了该功能则可能降低解码速率,建议不用)
bvhq=1:在B帧上启用VHQ
lumi_mask:加大画面明暗部分压缩率(一般不用,有时会导致画面失真)
greyscale:使用灰度,但是便出来的画面是黑白的(一般不使用)
interlacing:隔行处理,适用于交错片源(一般不使用)
chroma_opt:色度优化 ,色彩最佳化
Quantization量化选项(关键的关键就在这里!)
  量化器级别(quantizer level)即Q值越高画面细节越丰富,但是在低码率下越高的量化器级别,会带来越低的画面质量,Q 值越小,质量越好,码率越大;Q 值越大,质量越差,码率越小。(实际上,它的原始概念更复杂,我们干脆简单地认为1就是100%原质量,31就是1/31的原质量好了)。P-frame(即未来单项预测帧)建议设置在1–15之间,(它的作用是只储存与之前一个已解压画面的差值。即仅仅描述它与前一帧的区别)。I-frame(即关键帧)的Q值只用能作用于2pass-second压制上,在VirtualDub被标示为 [K],关键帧是构成一个帧组(GOP,Group of Picture)的第一个帧。I-Frame 保留了一个场景的所有信息(Keyframe原意是指可以单独解码、用于同步的frame,不过在MPEG系统中只有I-frame有这个特性,因为BF和PF都是预测帧,要靠I-Frame来还原)。B-frame(即双向预测帧)除了参考之前解压过了的画面外,亦会参考后面一帧中的画面信息。这三个设置的范围都是1-31,应该注意的是在场景昏暗的条件下不要让B-frame过低。
min_iquant=1——IF的量化最低值(取值范围在1-31之间)
max_iquant=10——IF的量化最高值(取值范围在1-31之间)
min_pquant=1——PF的量化最低值(取值范围在1-31之间)
max_pquant=10——PF的量化最高值(取值范围在1-31之间)
min_bquant=1——BF的量化最低值(取值范围在1-31之间)
max_bquant=30——BF的量化最低值(取值范围在1-31之间)
-sws 9 取值范围在(0-9)之间,不同值代表不同的Resize算法!建议用 -sws 9
0 快速二次线性(默认)(速度较快)
1 二次线性
2 二次立方(质量很好)
3 实验中
4 最短距离 (bad quality)
5 区域
6 亮度二次立方 度二次线性
7 高斯
8 sincR
9 lanczos(速度较快,而且画面锐利)
10 双三次样条曲线
实际应用举例:
vhq=4:cartoon:chroma_me:min_iquant=1:chroma_opt:min_iquant=1:max_iquant=12:min_pquant=1:max_pquant=12:bvhq=1:min_bquant=1
添加到WisMencoder的手动参数中的视频编码处,然后再把 -sws 9 参数添加到视频滤镜处即可!记得-sws 9前一定加个空格,要不编码器不会启动!当然你也可以自己摸索适合的方案,做出效果更佳的方案!
Mencoder视频转换成flv格式
mencoder “input.avi” -o “output.flv” -of lavf -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -oac mp3lame -lameopts abr:br=56 -ovc lavc -lavcopts vcodec=flv:vbitrate=500:mbd=2:mv0:trell:v4mv:cbp:last_pred=3:dia=4:cmp=6:vb_strategy=1 -ofps 29.97 -srate 22050
参数详解:
-o “output.flv”:是输出文件路径;
-of lavf:是输出文件格式,这里不是flv而是lavf,是因为flv属于libavformat;
-lavfopts i_certify_that_my_video_stream_does_not_use_b_frames:-lavfopts表示对lavf进行一些设置,设置的内容就是i_certify_that_my_video_stream_does_not_use_b_frames,翻译成中文就是:我确定,我的视频不用B frames,对于转换flv格式,最好加上这个参数,否则可能会报错。
-oac mp3lame:oac=output audio codec,输出音频编码器,这里用的mp3lame;
-lameopts abr:br=56:lame options,是专门针对mp3lame的参数设置,abr:br=56,是设置音频比特率为56;
-ovc lavc:ovc=output video codec,输出视频编码器,lavc表示one of libavcodec’s video codec,输出格式为libavformat之一;
-lavcopts vcodec=flv:vbitrate=500:mbd=2:mv0:v4mv:trell:cbp:last_pred=3:dia=4:cmp=6:vb_strategy=1:对lavc进行一些设置,详细介绍如下:
vcodec=flv:指定视频编码器为flv;
vbitrate=500:指定视频比特率为500。
mbd:宏模块选择算法,值为0~2默认为0,值越大转换越缓慢,但在品质和文件大小方面有好处;
mv0:编译每个宏模块并选择最好的一个,当mbd=0时无效;
v4mv:会稍微增加品质,mbd>0时效果更明显;
trell:量子化网格搜索,对每8×8block找到最优化编码;
cbp:只能和trell一期使用,评估失真的图像块编码;
last_pred=3:与上一帧相比的移动数量预测,值为0~99,1~3比较合适,大于3时对品质的提高已经无关紧要,但却会降低速度;
dia=4:移动搜索范围,值为-99~6,对于快速转换,-1是个不错的值,如果不是很重视速度,可以考虑2~4;
cmp=6:值为1~2000,默认为0,设置用于全象素移动预算的比较函数
vb_strategy=1:对动作很大的场景会有帮助,对有些视频,设置vmax_b_frames会有损品质,加上vb_strategy=1会好点。
注意:有些来路不明的FLV文件,或是由FFMPEG、Mencoder转的FLV文件,Meta Data是损坏的,FLV播放时不能拖放。
两个修复工具:Flvtool2,Flvmdi,给flv文件加入时间标签。
本文地址:http://www.etang.info/web-develop/mencoder%e5%b8%b8%e7%94%a8%e8%a7%86%e9%a2%91%e8%bd%ac
分享到:
评论

相关推荐

    常用视频格式转换及网页播放器

    ### 常用视频格式转换及网页播放器 #### 视频转换技术概览 视频转换是一项关键的技术,尤其在互联网视频应用日益广泛的今天。它主要用于改变视频文件的编码方式或容器格式,以便让视频能在不同的设备和平台上流畅...

    ffmpeg+mencoder集合

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

    视频转换学习资料.pdf

    本篇主要讲解了视频的基本术语以及两个常用的命令行工具FFmpeg和mencoder的使用方法。 首先,了解视频的基本术语: 1. **容器(Container)**:如FLV、MKV等,是存储不同视频流(音频、视频、字幕等)的数据格式。 2...

    C#调用mmpeg进行各种视频转换的类实例

    在这些方法内部,我们会根据视频文件的扩展名(例如`.flv`、`.wmv`等)来调用合适的命令行工具,并传递相应的参数,如源文件路径、目标文件路径以及可能的转换参数。 在处理用户上传的文件时,通常会有一个上传流程...

    X.264参数介绍与建议.pdf

    - **转换视频流**: - 需要勾选以启用编码器处理原始视频。 - **格式编码**: - 通常选择H.264,因为它提供了高效的压缩率和良好的画质,适合MP4-AVC格式。 - **容器**: - MP4是常用选择,兼容性好。如果需要...

    Mplayer使用手册

    - **MEncoder**: 影视编解码器,主要用于转换媒体文件。 #### 二、MPlayer 功能特点 - 支持广泛的媒体格式:MPEG/VOB、AVI、ASF/WMA/WMV、RM、QT/MOV/MP4、Ogg/OGM、MKV、VIVO、FLI、NuppelVideo、yuv4mpeg、FILM ...

    KVideoEncoder-开源

    2. **DVD翻录**:用户可以直接通过KVideoEncoder将DVD内容转换为数字视频文件,支持自定义输出格式和编码参数。 3. **视频编码**:支持对各类视频文件进行编码,包括分辨率调整、帧率改变、比特率设定、视频滤镜...

    mplayer中文手册,比较详细

    它可以将视频文件转换成不同的格式,并支持多种视频滤镜和音频编码。 #### 十、MPlayer的输入控制 MPlayer可以通过LIRC实现遥控器支持,允许用户通过遥控器进行播放控制。此外,MPlayer还支持自定义输入设备配置,...

    C#基础类库

    8.运行mencoder的视频解码器转换 复制代码 21.随机数类 BaseRandom 1.产生随机字符 2.产生随机数 3.在一定范围内产生随机数 复制代码 RandomHelper 1.生成一个指定范围的随机整数,该随机数范围包括最小值,但不包括...

    A Bash Toolbox-开源

    1. 视频转码:利用Mencoder,可以快速将一个视频文件转换为其他格式,以适应不同的设备或网络需求。 2. 音频提取:从视频文件中提取音频流,保存为单独的音频文件,如MP3或AAC。 3. 视频截取:截取视频的一部分,...

    C#基类库(苏飞版)

    8.运行mencoder的视频解码器转换 复制代码 21.随机数类 BaseRandom 1.产生随机字符 2.产生随机数 3.在一定范围内产生随机数 复制代码 RandomHelper 1.生成一个指定范围的随机整数,该随机数范围包括最小值,但不包括...

    流媒体技术报告,流媒体技术比较全面的手册

    - Mencoder是MPlayer的一个组件,主要用于音视频文件的编码转换。 - **2.2.2 安装配置** - **2.2.2.1 软件需求**:列出安装MPlayer所需的软件环境。 - **2.2.2.2 编解码器**:安装必要的编解码器以支持更多格式...

Global site tag (gtag.js) - Google Analytics