yamdi flv metadata

yamdi是一款用于向FLV文件中添加元数据的工具,支持大型文件处理,具备内存占用低及运行速度快的特点。适用于*BSD、Linux及Win32平台,以C语言编写。该工具可在不将整个文件加载到内存的情况下添加元数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

源文地址: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

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值