Chinaunix首页 | 论坛 | 博客
  • 博客访问: 474453
  • 博文数量: 95
  • 博客积分: 1773
  • 博客等级: 上尉
  • 技术积分: 1641
  • 用 户 组: 普通用户
  • 注册时间: 2007-08-17 23:28
文章分类
文章存档

2018年(2)

2017年(10)

2016年(7)

2015年(48)

2014年(2)

2013年(2)

2012年(2)

2011年(7)

2010年(7)

2009年(3)

2008年(1)

2007年(4)

分类: LINUX

2010-01-14 17:17:10

yamdi(http://yamdi.sourceforge.net/)和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格式


阅读(3102) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~