yamdi()和flvtool2(http://blog.inlet-media.de/flvtool2/)都是对flv文件进行MetaData注入的工具,两者实施后效果差不多,不过二者的效率有较大的不同,因为yamdi是C编译的,效率比较高,而flvtool2是利用Ruby语言的,效率比yamdi差很多,所以大多数时候还是建议采用yamdi,此外同样进行一个最简单的MetaData注入,yamdi的产生的文件比flvtool2稍微小一些。当然,flvtool2还可以实现影片剪辑,但这个功能实际上可以在转换的时候同步实现,而不必专门再剪辑(ffmpeg和mencoder都可以在转换的时候同时剪辑)。
下面再简单介绍下两个命令行工具的参数。
yamdi的参数:
-i 指定FLV源文件.
-o 指定输出文件,如果文件名为-,则输出到标准输出设备上,如果不指定也是
-x 插入的metadata信息XML文件。如果输出文件省略了,则只生成metadata信息.
-c 一个写入creator标签的字符串.
-l 添加 onLastSecond 行为.
-h 显示帮助信息.
|
flvtool2的命令行形式:
$flvtool2 [-ACDPUVaciklnoprstvx]... [-key:value]... in-path|stdin [out-path|stdout]
|
flvtool2的命令参数解释:
在输出路径未指定时,输入文件被覆盖。如果输入路径是目录,则输出路径也必须是路径或者省略。处理目录时可以由-r选择参数进行循环控制,你可以使用stdin和stdout参数作为输入和输出路径,从而实现管道或者重定向操作。
可以直接链式指定参数,比如-UP 就相当于 -U -P (更新FLV文件,并且打印meta数据)
主要命令:
-A 添加由<-t 标签定义文件名 >指定的标签。
-C 剪辑文件,出入点由 <-i 入点> 和 <-o 出点> 进行指定
-D 调试模式,写一些内容到stdout
-H 显示帮助
-P 打印meta数据到stdout
-U 更新FLV文件,实现onMetaTag行为
附件选项:
-a 在剪辑区域收拢空间 -c 兼容模式计算同一个onMetaTag标签不同值的情况 -key:value Key/value 对格式作为onMetaData标签(覆盖对应的值) -i 时间码 定义入点,毫秒格式 -k 关键帧模式中onCuePoint()标签被添加到最近的关键帧上 -l 写日志到当前目录的stream.log中 -n 调试的层次 -o 时间码 定义出点,毫秒格式时间 -p 保护模式只更新还没有处理过的FLV文件 -r 循环处理一个目录 -s Simulation mode never writes FLV data to out-path -t 路径 标签指定文件 (MetaTags 写入 XML) -v 详细模式 -x 被插入的XML模式是YAML格式
|
阅读(3705) | 评论(0) | 转发(0) |