跳转到主要内容

时间流逝电影组装

项目描述

时间流逝组装

PyPI License Build

此存储库包含用于使用ffmpeg编译时间流逝电影的工具。ffmpeg实用程序通过ffmpeg-python包装器进行控制。

此包的示例用法可以在时间流逝脚本存储库中找到。

安装

此包需要安装ffmpeg工具。

brew install ffmpeg

然后安装此包

pip install time-lapse

此外,当使用详细输出选项时,将使用graphviz渲染图形,这需要Graphviz库和相关Python包

brew install graphviz
pip install time-lapse[graph]

编解码器

为了实现近通用兼容性,使用了H.264编解码器。以下部分描述了某些特定配置选项的选择。

有关更多信息,请参阅ffmpeg维基百科:https://trac.ffmpeg.org/wiki/Encode/H.264

恒定速率因子

此使用-crf 20来设置恒定速率因子,这意味着电影的整体质量应该是恒定的。因此,比特率会变化以确保这一点。较高的值意味着较低的质量。此值的质量和比特率似乎合理。

预设

-preset slower用于在不花费太多时间的情况下提高所选质量(crf)的压缩比。

快速启动

-movflags +faststart用于允许电影在加载或缓冲的同时快速开始播放。

Quicktime支持

编解码器默认为YUV 444,这不支持Quicktime。因此,添加pix_fmt yuv420p以修复Quicktime支持。

输入

选择输入帧

通过提供匹配所需图像的全局模式来使用框架作为输入。通常这些将是tif图像,因此使用-pattern_type glob -i "*.tiff"

帧率

当使用图像序列作为输入时,应使用-framerate 30指定所需输出的帧率。

过滤器

常用过滤器

步骤

  • 首先去抖动视频,以确保所有输出都均匀去抖动。
  • 然后缩放和裁剪视频以适应所需的最终分辨率。
  • 然后添加水印(不应该去抖动)。

缩放视频

添加缩放以确保它适合给定的维度。宽度或高度的负值使编码器自行确定大小,保持源的比例。负值的整数,例如-4中的4,表示大小应该是该值的倍数。待办事项:它只是缩放/挤压视频还是裁剪?

-vf scale=1920:-2
-vf scale=960:540:aspect..

转换电影

使用时间流逝查找tif文件,并创建一个名为'test_movie'的电影,帧率为24fps,并去抖动。

from time_lapse import output, source

source_input = source.get_input(['*.tif'], fps=24, deflicker=10, filters=None)
output.create_outputs(source_input, 'test_movie', verbose=False)

检查

通过将verbose=True传递给创建输出,将执行以下ffmpeg-python检查方法。

显示ffmpeg-python将使用的ffmpeg命令选项

.get_args()

通过使用graphviz,可以使用以下方式显示从输入到输出的图形:

.view()

项目详情


下载文件

下载适合您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分发

time_lapse-7.0.tar.gz (2.4 MB 查看哈希值)

上传

构建分发

time_lapse-7.0-py3-none-any.whl (53.4 kB 查看哈希值)

上传 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面