FFMPEG - 你能用几张图片覆盖视频的一部分吗?

标签 ffmpeg

我需要添加一个视频叠加层,我想知道是否有一种简单的方法可以使用 FFMPEG 来做到这一点。

我有一组图像(横幅和肖像),我想在视频的部分持续时间内覆盖在视频底部。例如,大约 5 秒后,我希望覆盖出现,然后在视频结束前大约 5 秒,我希望覆盖消失。

这可以使用 FFMPEG 命令行选项吗?

最佳答案

FFMpeg 使用命令行覆盖图像,迄今为止最强大和最优雅的方法是使用名为 的工具。 AVISynth .

以下是一些简单的示例,其中一个将一个视频叠加在另一个视频之上(叠加图像是其中的一个子集):
http://avisynth.org/mediawiki/Script_examples

你可能想知道,这到底是什么工具?这就是它在概念上的工作方式:

首先,您使用称为脚本的特殊命令创建一个简单的文本文档。这些命令引用一个或多个视频以及您希望在其上运行的过滤器。然后,您运行一个视频应用程序,例如 FFMPeg,并在命令行中传入脚本文件。这是 AviSynth 采取行动的时候。它会打开您在脚本中引用的视频,运行指定的过滤器,并将输出提供给视频应用程序。但是,该应用程序并不知道 AviSynth 正在后台运行。相反,该应用程序认为它直接打开了驻留在硬盘驱动器上的已过滤 AVI 文件。

使用 AVISynth,您想要的非常简单,但它可以扩展以制作像这个网站这样的视频,在视频中放置了许多照片、文本和效果。此电子贺卡网站上的所有视频均使用 FFMpeg 和 AVISynth 创建:http://www.hdgreetings.com

它可能看起来有点不同,但是一旦你得到一个简单的脚本,你就会立即意识到这是有史以来最好的视频工具之一。它当然是免费的。

关于FFMPEG - 你能用几张图片覆盖视频的一部分吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7042349/

相关文章:

c#-4.0 - 从视频c#中提取音频作为MP3文件

ffmpeg 添加屁股字幕 : error initializing filter 'subtitles' with args ''

android - flutter_ffmpeg - 如何访问输出路径?

android - 在 Android 上解码 hevc

ffmpeg : audio + image to video : reduce time and space it takes

bash - ffmpeg - 超线程导致 "Conversion failed"具有多个并行实例

ios - Remote I/O 音频单元是否设置缓冲区中的 channel 数?

linux - 在 raspbian linux 上使用 ffmpeg 连接多个(自生成的)视频

video - 使用具有最少重新编码的 FFMPEG 添加叠加层

ffmpeg - 将一张 PNG 图像转换为具有透明度和淡入淡出效果的 webm 视频