yamdi flv metadata

源文地址:http://yamdi.sourceforge.net/
下载yamdi安装包地址:http://sourceforge.net/projects/yamdi/files/
yamdi
Yet Another MetaData Injector for FLV
Download yamdi

Current version: 1.5

2010-04-03: 1.5
* [Fix] Segfault on empty files under *nix [zas_]
* [Fix] VP62 occasional zero height [xtat]
* [Add] AVC/H.264 support
* [Add] Input file can be read from stdin

2008-05-24: 1.4
* [Fix] The onLastSecond event did not have the correct timestamp
* [Add] Source code compatible with Win32 (MinGW32) [sfyang]

2008-04-27: 1.3
* [Fix] SCRIPTDATAVARIABLEEND tag of the onMetaData object was missing
* [Add] XML output of the meta data with option -x [teshock]
* [Add] Makefile and manpage [xtat]

2007-05-06: 1.2
* [Fix] Width and height calculation of ScreenVideo stream was wrong.
* [Add] onLastSecond event with option -l

yamdi stands for Yet Another MetaData Injector and is a metadata injector for FLV files. It adds the onMetaData event to your FLV files. yamdi should run under *BSD, Linux and Win32 and is published under the BSD license.
why?
For a project I had to add metadata to quite large FLV files (over 1GB). The other known free tools (flvmdi and flvtool2) are not suitable for that job because they read the whole file into memory. Because I'm not very familiar with ruby (in order to modify flvtool2) and flvmdi is not open source I took the FLV specs and implemented a metadata injector in C. yamdi uses less memory and is faster.
how?
<a href="http://sourceforge.net/projects/yamdi/files/>"Download the source code</a> from SourceForge.net and extract it with tar:
tar xzf yamdi-1.5.tar.gz
Change into the yamdi directory and compile the source code with:
cd yamdi-1.5
gcc yamdi.c -o yamdi -O2 -Wall
If you are going to handle very big files (bigger than 2GB) the following compile options have been suggested in the bug tracker:
gcc yamdi.c -o yamdi -O2 -Wall -D_FILE_OFFSET_BITS=64
yamdi accepts six paramters: -i The source FLV file. If the file name is '-' the input file will be read from stdin. Use the -t option to specify a temporary file. 
-o The resulting FLV file with the metatags. If the output file is '-' the FLV file will be written to stdout. 
-x An XML file with the resulting metadata information. If the output file is ommited, only metadata will be generated. This parameter is optional. 
-t A temporary file to store the source FLV file in if the input file is read from stdin. 
-c A string that will be written into the creator tag. This parameter is optional. 
-l Adds the onLastSecond event. 
-h Displays a description of the available parameters
Examples:
yamdi -i sample.flv -o sample_with_metadata.flv
yamdi -i sample.flv -o - > sample_with_metadata.flv
yamdi -i sample.flv -o sample_with_metadata.flv -c "John Doe"
what do i get?
yamdi injects the following metadata into your FLV files:
creator
metadatacreator
hasKeyframes
hasVideo
hasAudio
hasMetaData
canSeekToEnd
duration
datasize
videosize
videocodecid
audiosize
audiocodecid
audiosamplerate
audiosamplesize
stereo
filesize
lasttimestamp
lastkeyframetimestamp
lastkeyframelocation
keyframes (filepositions, times)
width
height
framerate
videodatarate
audiodatarate
More metadata and features will be added in future versions.

yamdi injects the following event into your FLV files:
onLastSecond

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值