MEncoder 转码 psp 视频

阅读更多

MEncoder 是一个简单的影片编码程序,它可用于将视频或者音频文件在 MPlayer 可播放的格式当中互相转换。说到 MEncoder 就不得不知道 MPlayerMPlayer 是一款为 Linux 编写的电影播放器。它能播放大部分 XAnimRealPlayer 以及 Win32 DLL 解码器支持的 MPEGVOBAVIOGG/OGMVIVOASF/WMA/WMVQT/MOV/MP4FLIRMNuppelVideo yuv4mpegFILMRoQPVAMatroska 文件。它也可以观看 VideoCDSVCDDVD3ivxRealMediaSorensonTheora、以及 MPEG-4 影片。

一、MEncoder 的下载及安装(解压缩)

  MEncoder 可以从它的官方网站(http://www.mplayerhq.hu)下载,包括以下三个文件,解压缩后即可以直接使用,无须安装。
1
MPlayer 1.0 RC2 for WindowsMPlayer MEncoder 的主文件,下载后解压到硬盘的任意位置,比如 D:\Mplayer
2
MPlayer 1.0 RC2 for Windows GUIMPlayer 的用户界面,用于播放媒体文件;
3
Binary Codec Packages解码、编码过程中所需的编码、解码包,解压后放在 MPlayer 的级目录 Codecs,比如 D:\MPlayer\Codecs

二、关于 Libavcodec

  Libavcodec 是目前领先的并开放源码的视频和音频编解码器库。它能够解码的媒体格式最多,通常解码的速度也是最高的。它是 MPlayer 支持的默认解码器。

 三、示例:使用 MEncoder 把一个 MPEG-2 文件压缩成一个 AVI 文件

  以下命令中把一个 MPEG-2 文件(扩展名为 MPG )转换成一个 AVI 文件(Divx 视频编码,MP3 音频编码):
mencoder.exe input.mpg -oac mp3lame -lameopts aq=3:abr:br=128 -srate 44100 -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=1200 -ffourcc DX50 -vf scale=480:360,crop=640:478:0:0,harddup -ofps 30 -o output.avi

  1-oac mp3lameoutput audio codec)指定输出媒体文件的音频编码类型。此例中选择的是 mp3lame

  2-lameopts aq=3:abr:br=128lame options)指定 LAME 的编码设置。aq 为编码质量,它的值为 0~9,数字越小音频的数字失真就越小,编码的时间就越长;编码方式包括有 abr(按平均码率编码)、cbr(指固定码率编码)、vbr(按动态码率编码)三种;br=128 则指定编码码率为 128kbps
3
-srate 44100sample rate)指定音频的采样频率。频率通常有 220503200044100 等几种。
4
-ovc lavcoutput video codec)指定输出媒体文件的视频编码类型。此处选择的是 Libavcodec 的视频编码。

  5-lavcopts vcodec=mpeg4:vbitrate=1200Libavcodec options)指定视频编码的设置。由于 Libavcodec 包含了多种视频编码,所以用 vcodec=mpeg4 来指定具体的使用 MPEG-4 编码,vbitrate 是设定视频编码的码率为 1200kbps
6
-fourcc DX50four character code)指定视频数据流格式的四字符代码。通常视频播放软件通过查询 FourCC 代码并且寻找与 FourCC 代码相关联的视频解码器来播放特定的视频流。比如 DIV3 = DivX Low-MotionDIV4 = DivX Fast-MotionDIVX = DivX4DX50 = Divx5 等等。
7
-vf scale=480:360,crop=640:478:0:0,harddupvideo filters)指定编码的视频滤镜设置。scale=480:360 用于指定输入媒体文件的画面大小,宽度为 480 像素,高度为 360 像素。crop=638:477:1:2 是剪栽选项,从原始画面的座标(1,2)为起点,截取 638×477 像素的图像。
注意,命令里的 scale 参数放在 crop 参数之前,表示先缩放后剪栽,如果 crop 参数放于 scale 参数之前,则表示先剪栽后缩放
8
-ofps 30output fps)指定输出媒体文件的帧速,30fps 指每秒种播放 30 个画面。
9
-o output.avioutput)指定转换后输入媒体的文件名。

四、示例:使用 Mencoder 将一个 RMVB 文件转换成一个 PMP 文件(PSP 游戏机专用)

  需要使用到以下三个命令:
1mencoder.exe input.rmvb -sws 9 -ofps 23.976 -vf harddup,pp=md/lb,scale=480:272 -ovc x264 -ffourcc H264 -x264encopts qp_constant=25 -srate 44100 -af volnorm -oac mp3lame -lameopts aq=3:cbr:br=128:vol=1 -o video.avi
  (2mencoder.exe video.avi -oac copy -ovc copy -of rawaudio -o audio.mp3
  (3pmp_muxer_avc.exe -v video.avi -a audio.mp3 -s 1000 -r 23976 -d 1 -o output.pmp

  1、第一个命令是将 RMVB 转换成视频为 H264 编码、音频为 MP3 编码的 AVI 文件,其中:-sws 9 参数指定了编码的采样使用 Lanczos3 算法(如果不指定则采用线性采样),可以获得更具体的细节和更精细的画面;qp_constant=25 指定了视频编码的质量,在压缩 PSP 媒体的时候一般选择 20(最优)~25(普通);-af volnorm volume normalize)设置了音频编码时音量规格化。
2
、第二个命令是将音频部份从第一个命令生成的 video.avi 中提取出来,其中-of rawaudio output filter)指定了只输出音频部分而忽略视频部分。
3
、第三个命令是将 video.avi audio.mp3 合成 PMP 文件。pmp_muxer_avc.exe 文件须要另外下载,在各个 PSP 论坛里都可以找到。PMP AVI 一样,是媒体文件的一种容器格式,并非是编码格式,而 MEncoder 并不直接支持 PMP 容器,所以须要借助一下第三方的工具。

五、使用 MEncoder 压制 DVD 影碟和处理字幕

  MEncoder 可以直接压制 DVD 或者 VCD 的内容,将 DVD 或者 VCD 放入光驱,使用如下命令:
mencoder.exe dvd://2 -chapter 1-8 -alang eng -slang zh -aspect 16/9 -ovc -lavc -lavcopts vcodec=mpeg4:vhq:vbitrate=694 -vop scale -zoom -xy -640 -oac mp3lame -lameopts abr:br=128:vol=9 -o output.avi

  1dvd://2指定压缩 DVD 影碟中的第 2 个标题内容。
2
-chapter 1-8指定压缩第 1-8 个章节的内容,如不指定,则压缩整个标题的内容。有关 DVD 根目录(Root)、标题(Title)、章节(Chapter)的概念请查阅相关的资料。
3
-alang engaudio language)指定被压缩的 DVD 音频为英文。大多数 D 版的 DVD 影碟都没有明确地标记出音频的语言,比如英语(eng)、日语(jap)、朝鲜语(kor)等,这时可以使用 -aid audio ID)来指定压缩第几条音轨,比如 -aid 2
4
-slang zhsubtitle language)指定被压缩 DVD 的字幕为中文。此参数与 -alang 参数相似,没有标记字幕语言的影碟也可以使用 -sid subtitle ID)来代替。
5
-aspect 16/9aspect ratio)指定影片的高宽比。通常有 4/35/416/92.35/1 等,根据 MEncoder 版本的不同,有可能写成 4:35:416:92.35:1
6
-zoom -xy 640压缩影片时进行缩放,640 是指定了影片的宽度,高度则根据高宽比 16:9 自动计算。

  另外,MEncoder 可以从 DVD 直接输出外挂式的 VOBSubidx+sub)字幕,例如:
mencoder.exe dvd://1 -oac copy -ovc lavc -lavcopts vcodec=mpeg4:vpass=1 -vobsubout subtitles -vobsuboutindex 0 -sid 2
命令运行成功后生成了 subtitles.idx subtitles.sub 两个文件。

 

 

你可能感兴趣的:(360,Qt,游戏,Linux,Windows)