分析、操作和索引flv文件

flvlib的Python项目详细描述


用于操作、分析和验证flv文件的库。

它包括三个示例脚本,debug flv、index flv和retimestamp flv 展示了图书馆可能的应用。

提供了一种简单且可扩展的方法来编写解析 以及转换flv文件。基于 Adobe发布的官方规范。

可以用作flvtool2的替换,它来自 通常要快得多。与flvtool2不同,它只在音频文件和 不会覆盖该文件以前可能包含的任何元数据。

示例用法

打印flv文件信息

$ debug-flv file.flv | head -5
=== `file.flv' ===
#00001 <AudioTag at offset 0x0000000D, time 0, size 162, MP3>
#00002 <AudioTag at offset 0x000000BE, time 0, size 105, MP3>
#00003 <VideoTag at offset 0x00000136, time 0, size 33903, VP6 (keyframe)>
#00004 <AudioTag at offset 0x000085B4, time 26, size 105, MP3>

^ {STR 1 } $索引和FLV文件>/P>

$ index-flv -U file.flv
$ debug-flv --metadata file.flv
=== `file.flv' ===
#00001 <ScriptTag onMetaData at offset 0x0000000D, time 0, size 259>
{'duration': 9.979000000000001,
 'keyframes': {'filepositions': [407.0], 'times': [0.0]},
 'metadatacreator': 'flvlib 0.x.x'}

retimestamping一个flv文件

$ debug-flv file.flv | head -5
=== `file.flv' ===
#00001 <AudioTag at offset 0x0000000D, time 100, size 162, MP3>
#00002 <AudioTag at offset 0x000000BE, time 100, size 105, MP3>
#00003 <VideoTag at offset 0x00000136, time 100, size 33903, VP6 (keyframe)>
#00004 <AudioTag at offset 0x000085B4, time 126, size 105, MP3>

$ retimestamp-flv -U file.flv
$ debug-flv file.flv | head -5
=== `file.flv' ===
#00001 <AudioTag at offset 0x0000000D, time 0, size 162, MP3>
#00002 <AudioTag at offset 0x000000BE, time 0, size 105, MP3>
#00003 <VideoTag at offset 0x00000136, time 0, size 33903, VP6 (keyframe)>
#00004 <AudioTag at offset 0x000085B4, time 26, size 105, MP3>

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Jetty中的java Set AccessControlAllowOrigin   java我已将我的apk上传到google play,但没有显示任何设备兼容   在内存中创建mdb副本时发生java错误   是否有类似jQuery的选择器用于JavaXML解析?   C++不能使用JNI使用外部java类   java如何创建jpql查询以获取没有关联父级的实体   maven如何重新部署java web app cargo   java如何使用Gson将嵌套的json对象添加到文件中?   用于inputfield的java Sencha GXT自定义货币格式   java在容器上设置游标,而不更改子组件的游标   java JDBI使用fluent接口选择(非对象查询)   安卓 Firebase runTransaction不工作MutableData为空   java如何修复快速排序代码   java正则表达式验证密码,密码只接受固定长度之间的值   javascript拆分值并以格式化方式显示   java Asynctask:doInBackground中Asynctask和process的两个值