====== Mobilemate 高级用法 ======
除了 [[common|Mobilemate 普通用法]],使用它的通用配置文件 "tce/conf/common.conf" 可更灵活的控制转换。
并且,因为 Mobilemate 是基于它的转换配置文件工作,所以你可以使用[[desk#text_editor|文本编辑器]]而不需要[[video_configure|视频转换配置]]创建你自己的配置文件。例如,你可以基于默认配置文件 "tce/conf/v2vdefault.conf" 创建你的配置文件用于视频转换,基于 "tce/conf/x2adefault.conf" 的用于音频转换。
因为用于转换视频的配置文件 "v2vdefault.conf" 包括了 "x2adefault.conf" 的选项,所以下面我们只解释文件 "v2vdefault.conf"。
===== 解释 "common.conf" =====
文件 "common.conf" 是用于所有转换的全局转换选项设置。位于目录 "tce(TinyCore 扩展目录)/conf" 里。下面是默认的整个 "common.conf" 文件。
PATH="/opt/mobilemate/bin:/opt/custom/bin:$PATH"
TRIVAL="NO"
DEBUG="NO"
CONVOKFLAG="CONVOK"
DECODED_BY="LIBAV"
GUICONFIRM="NO"
MAXHISTORY="3"
WORKDIR="/opt/mobilemate"
TASKBASE="${WORKDIR}/task"
TASKBAKBASE="${WORKDIR}/task.bak"
TASKBACKUP="NO"
TMPBASE="/tmp/mobilemate"
TMPCONFBASE="${TMPBASE}/conf"
THREADS="-1"
STARTTIME="0"
ENDTIME="0"
MPEGTS_MENCODER_OFPS="12.5,25"
DEFAULT_SOURCE_PAR="1"
COMPARE_DAR_CONSTANT="100"
X264PRESET="medium"
X264PROFILE="baseline"
XVIDFOURCC="DX50"
LIBAVSEEK="FAST"
ASYNC="1"
LOGBASE="${WORKDIR}/log"
V2VOPTIONSLISTFILE="${WORKDIR}/conf/v2voptions.list"
X2AOPTIONSLISTFILE="${WORKDIR}/conf/x2aoptions.list"
V2VRULESLISTFILE="${WORKDIR}/conf/v2vrules.list"
X2ARULESLISTFILE="${WORKDIR}/conf/x2arules.list"
下面解释所有的选项:
PATH="/opt/mobilemate/bin:/opt/custom/bin:$PATH"
为 Mobilemate 设置可执行文件的 PATH 环境变量。
TRIVAL="NO"
设置转换时 "Mencoder" 或者 "Libav" 是否在终端上显示输出。无论选项如何输出不会写入到日志文件里。
有效选项是: "NO", "YES"。
默认选项是 "NO"。
DEBUG="NO"
设置是否在终端上显示调试信息和把调试信息输出到日志文件中。
有效选项是: "NO", "YES"。
默认选项是 "NO"。
CONVOKFLAG="CONVOK"
文件转换成功标志常量字符串。不要改动。
DECODED_BY="LIBAV"
设置使用哪个解码工具。
有效选项是: "LIBAV", "MENCODER"。
Mobilemate 可以使用二者之一进行解码,默认是 FFmpeg(libav), 可选替换是 Mencoder。如果你发现默认的 "LIBAV" 不能解码你的来源文件(至今我还没有碰到这种情况),试试 "MENCODER"。但是,当你同时转换多个文件时可能比默认选项使用更多的转换时间。
guiconfirm="NO"
设置是否确认每一个配置或转换步骤。
有效选项是: "NO", "YES"。
默认选项是 "NO"。当你把它变成 "YES",当你配置或转换时你需要确认每个步骤。
MAXHISTORY="3"
设置保留多少个历史配置文件。
有效选项是: "1", "2", "3", ..., 等于或大于1的无符号整数。
Moblemate 会保留你的历史转换配置文件,位于文件夹 "tce/conf" 里面,针对视频转换的名称形如 "v2vhistoryX.conf",针对音频转换的形如 "x2ahistoryX.conf","X" 是等于或大于0的无符号整数。
WORKDIR="/opt/mobilemate"
Mobilemate 工具根目录。不要改变。
TASKBASE="${WORKDIR}/task"
Mobilemate 任务目录。不要改变。
TASKBAKBASE="${WORKDIR}/task.bak"
Mobilemate 任务备份目录。
TASKBACKUP="NO"
设置是否备份任务文件。
有效选项是: "NO", "YES"。
默认选项是 "NO"。
TMPBASE="/tmp/mobilemate"
Mobilemate 临时目录。不要改变。
TMPCONFBASE="${TMPBASE}/conf"
Mobilemate 临时配置目录。不要改变。
threads="-1"
设置同时进行多少个转换进程。
有效选项是: "-1" 和 "1", "2", "3", ..., 无符号整数。
默认的 "-1" 表示进程数等于 CPU 核心数。
STARTTIME="0"
设置以秒数计算的文件转换起始点,或者以 "HH:MM:SS"(小时数:分钟数:秒数) 或 "MM:SS" 或 "-HH:MM:SS"(-小时数:分钟数:秒数) 或 "-分钟数:秒数"的形式。
有效选项是: 负整数, ..., "-3", "-2", "-1", "0", "1", "2", "3", 无符号整数。或者, "-01:01:21", "01:01:21", 等等。或者, "-11:21", "11:21", 等等。
负值表示从指定时间点到文件末尾的时间间隔。无符号值表示开始转换的时间点。默认的 "0" 表示原始文件的开始。
ENDTIME="0"
设置以秒数计算的文件转换结束点,或者以 "HH:MM:SS"(小时数:分钟数:秒数) 或者 "MM:SS" 或者 "-HH:MM:SS"(-小时数:分钟数:秒数) 或 "-MM:SS" 或 "+HH:MM:SS" 或 "+MM:SS" 的形式。
有效选项是: 负整数, ..., "-3", "-2", "-1", "0", "1", "2", "3", 无符号整数, 和 "+1", "+2", "+3", 正整数。或, "-01:01:21", "01:01:21", 等等。或, "-11:21", "11:21", 等等。或, "+11:21", 等等。
负值表示从指定时间点到文件末尾的时间间隔。无符号整数表示文件转换结束时间点。正值表示从指定时间点到开始时间的时间间隔。默认的 "0" 表示原始文件结束的位置。
MPEGTS_MENCODER_OFPS="12.5,25"
针对转换 mpegts 文件设置有效的 Mencoder 输出帧率值。
有效选项是以逗号分隔的无符号数。
有时(或者任何时候,无深度测试),当转换 mpegts 视频文件时,mencoder 因为它的缺陷需要特定的输出帧率值。
DEFAULT_SOURCE_PAR="1"
设置源视频的默认 [[http://en.wikipedia.org/wiki/Pixel_aspect_ratio|PAR(Pixel Aspect Ratio)]] 值。
有效选项是无符号非零数。
有时,Mobilemate 不能正确的检测源视频的 PAR 值(即像素外观比值,译注)。所以使用这个默认值。默认的 "1" 表示正方形像素。
COMPARE_DAR_CONSTANT="100"
设置比较转换中间临时 pipe 视频文件和目的视频的 [[http://en.wikipedia.org/wiki/Display_aspect_ratio|DAR(Display Aspect Ratio)]] (显示外观比,译者注)值常数。仅用于当使用 Mencoder 作为解码工具时。
有效选项是无符号非零整数。
默认的 "100" 表示临时 pipe 视频 DAR 乘以 10000 与目的视频 DAR 乘以 10000 的差值如果小于 "100",我们把这两个文件的 DAR 视为相同。
X264PRESET="medium"
设置当使用 libx264 编码器时选择编码设置的 preset(预设置,译者注)。
有效选项是: "ultrafast", "superfast", "veryfast", "faster", "fast", "medium", "slow", "slower", "veryslow", "placebo"。
基本上,越慢得到越好的质量和越小的文件尺寸,但是需要越长的转换时间。默认是 "medium"。
下面是从 "mplayer_1.0~rc4.dfsg1+svn33713" 的 man 页复制的选项解释。
Use a preset to select encoding settings.
ultrafast
no8x8dct aq_mode=0 b_adapt=0 bframes=0 nodeblock nomb‐
tree me=dia nomixed_refs partitions=none ref=1 scene‐
cut=0 subq=0 trellis=0 noweight_b weightp=0
superfast
nombtree me=dia nomixed_refs partitions=i8x8,i4x4 ref=1
subq=1 trellis=0 weightp=0
veryfast
nombtree nomixed_refs ref=1 subq=2 trellis=0 weightp=0
faster
nomixed_refs rc_lookahead=20 ref=5 subq=4 weightp=1
fast rc_lookahead=30 ref=2 subq=6
medium
Default settings apply.
slow b_adapt=2 direct=auto me=umh rc_lookahead=50 ref=5
subq=8
slower
b_adapt=2 direct=auto me=umh partitions=all rc_looka‐
head=60 ref=8 subq=9 trellis=2
veryslow
b_adapt=2 b_frames=8 direct=auto me=umh me_range=24 par‐
titions=all ref=16 subq=10 trellis=2 rc_lookahead=60
placebo
bframes=16 b_adapt=2 direct=auto nofast_pskip me=tesa
me_range=24 partitions=all rc_lookahead=60 ref=16
subq=10 trellis=2
X264PROFILE="baseline"
设置当使用 libx264 编码器的 H.264 profile(配置文件,译者注)。
有效选项是: "baseline", "main", "high"。
基本上,"baseline" 有最好的硬件兼容性,"high" 的硬件兼容性最小,但是 "high" 有更多的高级特性,例如,在小些文件尺寸的情况下可以获得同样的质量。默认值是 "baseline"。参见: [[http://superuser.com/questions/489087/what-are-the-differences-between-h-264-profiles|What are the differences between H.264 Profiles?]]。
下面是从 "mplayer_1.0~rc4.dfsg1+svn33713" 的 man 页复制的选项解释。
Constrain options to be compatible with an H.264 profile.
baseline
no8x8dct bframes=0 nocabac cqm=flat weightp=0 nointer‐
laced qp>0
main no8x8dct cqm=flat qp>0
high qp>0 (default)
XVIDFOURCC="DX50"
当 ffmpeg(libav) 使用 libxvid 编码器时用 -vtag 选项设置 FOURCC 标志。
有效选项是: "XVID", "DIVX", "DX50"。(todo: 可能不太精确?)
默认选项是 "DX50"。
LIBAVSEEK="FAST"
设置 FFmpeg(Libav) 定位方法。
有效选项是: "FAST", "SLOW"。
当使用默认选项 "FAST" 时,"-ss" 用作输入选项 (在 -i 之前),定位这个输入文件的指定位置。注意,在大多数格式里是不可能精确定位的,所以将定位到指定位置前最接近的定位点。当使用 "SLOW" 选项,"-ss" 用作一个输出选项(在输出文件名前面),在时间戳到达指定位置前解码但是丢弃输入。"SLOW" 选项可以产生更精确的定位,但它要解码定位点前面的部分,将花更多的时间用于定位。
ASYNC="1"
设置 FFmpeg(Libav) 的音频同步方法。
有效的选项是 ""(空) 和任何非零无符号整数。
这个选项主要用于解决一些音视频不同步的问题。非零无符号整数将传递给 FFmpeg(Libav) "-async" 选项。这将 "拉伸/压缩" 音频流以匹配时间戳。参数是音频改变时每秒最大的采样(the parameter is the maximum samples per second by which the audio is changed)。默认值 "1" 是一个特例,只校正音频流的开始而不作后面的校正。
ASYNC="" 表示不使用 "-async" 选项。
LOGBASE="${WORKDIR}/log"
设置日志文件目录。
v2voptionslistfile="${WORKDIR}/conf/v2voptions.list"
转换到视频的选项列表文件。不要改变。
x2aoptionslistfile="${WORKDIR}/conf/x2aoptions.list"
转换到音频的选项列表文件。不要改变。
v2vruleslistfile="${WORKDIR}/conf/v2vrules.list"
转换到视频的规则列表文件。不要改变。
x2aruleslistfile="${WORKDIR}/conf/x2arules.list"
转换到音频的规则列表文件。不要改变。
===== 解释 "v2vdefault.conf" =====
"v2vdefault.conf" 是用于转换视频到视频的默认配置文件。默认整个 "v2vdefault.conf" 如下。
format="mp4"
vcodec="mpeg4"
vbitrate="256"
ofps="10"
vfscale="176:144"
vdar="SAR"
vfcroptype="FULL_HEIGHT"
acodec="aac"
audiochannels="2"
samplerate="44100"
abitrate="128"
audiolevel="ORIGINAL"
splittime="-1"
下列选项解释。
format="mp4"
设置视频容器格式。
有效选项: 见命令行 "/opt/custom/bin/ffmpeg -formats
" 输出结果。
vcodec="mpeg4"
设置视频编码器。
有效选项: 见命令行 "/opt/custom/bin/ffmpeg -codecs
" 输出结果。
vbitrate="256"
设置以 kb/s 为单位的视频码率。
有效选项是任何非零无符号整数。
ofps="10"
设置转换输出视频帧率。
有效选项是任何非零无符号数。例如:"10" 和 "29.97" 是有效的。但是 "30000/1001" 不能用在这里。
vfscale="176:144"
设置输出视频分辨率。
有效选项是形如 "X:Y","X" 和 "Y" 是非零无符号整数。
vdar="SAR"
设置视频 [[http://en.wikipedia.org/wiki/Display_aspect_ratio|Display Aspect Ratio(DAR)]].
有效选项是: "SAR" 和 "X:Y"("X" 和 "Y" 非零无符号整数)。
默认 "SAR" 表示使用与上面 "vfscale" 相同的值。
vfcroptype="FULL_HEIGHT"
设置怎样裁剪视频图像,主要针对宽屏幕源视频。
有效选项是: "FULL_WIDTH", "HALF_WIDTH" 和 "FULL_HEIGHT"。
“FULL_WIDTH” 保留全部宽度并用黑块填充顶底部。与之相对,默认 “FULL_HEIGHT" 保留全部高度并裁剪图像的左右部分。“HALF_WIDTH” 前二者的折衷。
acodec="aac"
设置音频编码器。
有效选项: 见命令行 "/opt/custom/bin/ffmpeg -codecs
" 输出。
audiochannels="2"
设置音频声道数。
有效选项: "1", "2"。
默认 "2" 表示 "立体声","1" 是 "单声道"。
samplerate="44100"
设置音频采样频率。
有效选项是非零整数。
abitrate="128"
设置以 kb/s 为单位的音频码率。
有效选项是任意非零无符号整数。
audiolevel="ORIGINAL"
设置音量等级。
有效选项: "ORIGINAL", "VOL2", "VOL5", "VOL10", "VOL20" 和 "VOLNORM"。
默认 "ORIGINAL" 表示保持音量不变。"VOLx"(x 是 2, 5, 等等) 表示增加 x分贝。"VOLNORM" 只是当使用 Mencoder 作为解码工具时有效,在上面的 common.conf: DECODED_BY="MENCODER" 里设置,表示 "在声音不失真的情况下最大化音量。“(来自 "man mencoder")。
splittime="-1"
设置以秒为单位分割片断的时长。
有效选项是: "-1" 和非零无符号整数。
默认 "-1" 表示不分割视频。
===== 重置配置目录 =====
有些时候,如果你想重置配置目录,可以使用下列两种方法。
1、可以删除位于 "tce(TinyCore 扩展)" 目录里的整个 "conf" 目录。然后重启 MobileMate,初始配置目录会出现。
2、初始配置目录已经压缩进 "/opt/mobilemate/conf.tar.gz",你可以删除 "conf" 目录并解压 "conf.tar.gz" 到 "tce" 目录来重置配置目录。
如果你只需要重置默认视频配置文件 "v2vdefault.conf" 或者音频配置文件 "x2adefault.conf",你可以把 "v2vdefault.conf.orig" 复制为 "v2vdefault.conf" 或者复制 "x2adefault.conf.orig" 为 "x2adefault.conf"。