在python中进行quicktime原子定位以实现快速流媒体。

qtfaststart的Python项目详细描述


QuickTime/MP4快速启动

通过以下方式启用QuickTime和MP4文件的流和伪流 将元数据和偏移量信息移动到文件的前面。

这个程序基于ffmpeg项目中的qt faststart.c,它是 发布到公共领域,以及ISO 14496-12:2005(官方 MP4规范),可从ISO获得或在线找到。

这个项目的目标是在没有编译的情况下运行(在 特别是,许多windows和mac os x用户在获取 qt faststart.c compiled),运行速度与c版本一样快 用户友好,并使用较少的实际代码行这样做。

功能

  • Works everywhere Python (2.6+) can be installed
  • Handles both 32-bit (stco) and 64-bit (co64) atoms
  • Handles any file where the mdat atom is before the moov atom
  • Preserves the order of other atoms
  • Can replace the original file (if given no output file)

从pypi安装

要从pypi安装,可以使用easy_installpip

easy_install qtfaststart

从源安装

将源cd的副本下载到顶层 qtfaststart目录,并运行:

python setup.py install

如果要安装到系统python(而不是virtualenv),则 可能需要根访问(通过sudosu)。

用法

有关详细信息,请参见qtfaststart --help!如果文件不存在,则 填充被覆盖:

$ qtfaststart infile [outfile]

要在不安装的情况下运行,您可以使用:

$ bin/qtfaststart infile [outfile]

要查看文件中顶级原子及其顺序的列表:

$ bin/qtfaststart --list infile

如果在Windows上,则不会执行qtfaststart脚本,因此请使用:

> python -m qtfaststart ...

历史记录

  • 2013-08-07: Copy input file permissions to output file.
  • 2013-08-06: Fix a bug producing 8kb mdat output.
  • 2013-07-05: Introduced Python 3 support.
  • 2013-07-05: Added launcher via ‘python -m qtfaststart’.
  • 2013-07-05: Internal refactoring for clarity and robustness. Functions now work with named tuples. Backward compatability is maintained. Expect a future, backward-incompatible release to replace other functions.
  • 2013-07-05: Created an ^{tt8}$ namedtuple to represent a fourcc atom (name, stream position, and size).
  • 2013-01-28: Support strange zero-name, zero-length atoms, re-license under the MIT license, version bump to 1.7
  • 2011-11-01: Fix long-standing os.SEEK_CUR bug, version bump to 1.6
  • 2011-10-11: Packaged and published to PyPi by Greg Taylor <gtaylor AT duointeractive DOT com>, version bump to 1.5.
  • 2010-02-21: Add support for final mdat atom with zero size, patch by Dmitry Simakov <basilio AT j-vista DOT ru>, version bump to 1.4.
  • 2009-11-05: Added –sample option. Version bump to 1.3
  • 2009-03-13: Update to be more library-friendly by using logging module, rename fast_start => process, version bump to 1.2
  • 2008-10-04: Bug fixes, support multiple atoms of the same type, version bump to 1.1
  • 2008-09-02: Initial release

许可证

版权所有(C)2008-2013丹尼尔G.泰勒(Daniel G.Taylor)dan@programmer-art.org>;

兹免费准许任何人取得副本 本软件和相关文档文件(“软件”)的 在软件中不受限制,包括但不限于 使用、复制、修改、合并、发布、分发、再授权和/或出售 软件的副本,并允许软件的用户 在满足以下条件的情况下,可以这样做:

上述版权公告及本许可公告须包括在 软件的拷贝或大部分。

本软件按“原样”提供,无任何形式的保证,明示或 默示的,包括但不限于适销性保证, 适合特定目的和不侵权。在任何情况下 作者或版权所有者应对任何索赔、损害或其他 责任,无论是在合同诉讼、侵权诉讼或其他诉讼中, 不属于或与软件、使用或其他交易有关 软件。

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

推荐PyPI第三方库


热门话题
交换数组中重复值的位置(Java)   java搜索使用百分比匹配Elasticsearch SpringBoot中的文本   java Spring JPA和按输入字段排序   java我在输入CSV时出错了   java如何在RecyclerView中精确显示5项   使用java安全吗。util。servlet中的计时器?   使用Cp1252编码的java比较字符串   javafx打包java桌面应用程序,并引用开源许可证   java Spring和Camel CXF在战争中表现出色   java当EJB客户端失去与应用服务器的连接时,是否存在可以捕获的异常?   更改字符串值的java注释   java如何在sharedperfernce中保存自定义数组列表   RequestResponseLink:当使用java客户端读取队列时,Azure服务总线上RequestResponseLink到“$cbs”的内部发送链接因错误而关闭