小编Dar*_*ryl的帖子

如何在 FFMpeg 中连接两个或多个不同维度的视频?

我有两个视频想要连接。

  1. 第一个视频尺寸 = 480x640
  2. 第二个视频尺寸 = 640x480

我尝试连接它们并收到错误消息。我在下面包含了完整的错误。

ffmpeg -i 682_segment_0.mp4 -i 682_segment_1.mp4 -filter_complex \
        "[0:v:0] [0:a:0] [1:v:0] [1:a:0] concat=n=2:v=1:a=1 [v] [a]" \
       -map "[v]" -map "[a]" -ar 44100 -vcodec libx264 \
       -strict -2 -acodec aac 682.mp4

ffmpeg version 2.8.8-0ubuntu0.16.04.1 Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.2) 20160609
  configuration: --prefix=/usr --extra-version=0ubuntu0.16.04.1 --build-suffix=-ffmpeg --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl --enable-shared --disable-stripping --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi …
Run Code Online (Sandbox Code Playgroud)

audio video ffmpeg

12
推荐指数
1
解决办法
2万
查看次数

解码流时出现 FFMpeg 错误无法分配内存

我正在尝试从两个 mp4 视频创建图片视频中的图片。

  1. 第一个输入文件有时间偏移 (0:v)。
  2. 第二个输入 (1:v) 文件正在旋转 90 度。
  3. 我正在使用 apad 来扩展第一个音频 (0:a)。
  4. 我正在使用 amerge 将两个音频输入合并为一个音频。

错误

我在两台不同的机器上使用相同的命令时遇到类似的错误。一台机器有 GPU(图形处理单元),另一台机器没有。(我正在尝试开始使用硬件加速,因此使用带有 GPU 的新机器。)它们有不同的配置,如果您需要该信息,请告诉我。

没有GPU的机器

ffmpeg version 3.0.git Copyright (c) 2000-2016 the FFmpeg developers
Error while decoding stream #1:1: Cannot allocate memory
Run Code Online (Sandbox Code Playgroud)

配备 GPU 的机器

ffmpeg version N-90913-gd176497 Copyright (c) 2000-2018 the FFmpeg developer
Error while filtering: Cannot allocate memory
Failed to inject frame into filter network: Cannot allocate memory
Error while processing the decoded data for stream #1:1
Run Code Online (Sandbox Code Playgroud)

即使出现错误,没有 GPU 的机器也能完成视频转换。带 …

audio video gpu ffmpeg video-conversion

5
推荐指数
1
解决办法
9376
查看次数

如何使用画中画合并 ffmpeg 中的两个音频/视频文件

我有两个音频/视频文件,我想使用画中画和两个视频中的音频来合并它们。

以下命令用于创建画中画。它还具有来自 local.webm 的音频。但是,它没有来自 remote.webm 的音频。

 ffmpeg -i local.webm -i remote.webm -filter_complex "[1]scale=iw/4:ih/4 [pip]; [0][pip] overlay=main_w-overlay_w-10:main_h-overlay_h-10" -ar 44100 -vcodec h264 -acodec aac -strict experimental outstream.mp4
Run Code Online (Sandbox Code Playgroud)

audio video ffmpeg

4
推荐指数
1
解决办法
2370
查看次数

如何使用画中画合并 ffmpeg 中的三个或更多音频/视频文件

我正在尝试制作一个具有多个画中画(简称 PIP)的视频文件。我能够在一张图片中获得两张图片。我现在正在尝试添加第四个输入。

我希望它看起来像:

样机图像示例

我尝试的命令:

ffmpeg -i 444_remote_0.webm -i 444_remote_1.webm -i 444_remote_2.webm \
       -i 444_local_0.webm -filter_complex \
       "[1:v]scale=iw/4:-1:flags=lanczos[rem1]; \
        [2:v]scale=iw/4:-1:flags=lanczos[rem2]; \
        [3:v]scale=iw/4:-1:flags=lanczos[loc0]; \
        [0:v][loc0]overlay=main_w-overlay_w-10:main_h-overlay_h-10[bg]; \
        [bg][rem1]overlay=main_w-overlay_w-180:main_h-overlay_h-10[v]; \
        [bg][rem2]overlay=main_w-overlay_w-360:main_h-overlay_h-10[v]; \
        [0:a][1:a][2:a][3:a]amerge=inputs=4[a]" \
       -map "[v]" -map "[a]" -ac 2 -ar 44100 -vcodec libx264 -acodec aac 444.mp4
Run Code Online (Sandbox Code Playgroud)

我收到一个新错误:Invalid stream specifier: bg.

控制台输出:

ffmpeg -i 444_remote_0.webm -i 444_remote_1.webm -i 444_remote_2.webm -i 444_local_0.webm -filter_complex "[1:v]scale=iw/4:-1:flags=lanczos[rem1]; [2:v]scale=iw/4:-1:flags=lanczos[rem2]; [3:v]scale=iw/4:-1:flags=lanczos[loc0]; [0:v][loc0]overlay=main_w-overlay_w-10:main_h-overlay_h-10[bg]; [bg][rem1]overlay=main_w-overlay_w-180:main_h-overlay_h-10[v]; [bg][rem2]overlay=main_w-overlay_w-360:main_h-overlay_h-10[v]; [0:a][1:a][2:a][3:a]amerge=inputs=4[a]" -map "[v]" -map "[a]" -ac 2 -ar 44100 -vcodec libx264 -acodec aac 444.mp4
ffmpeg …
Run Code Online (Sandbox Code Playgroud)

audio video ffmpeg

2
推荐指数
1
解决办法
1226
查看次数

标签 统计

audio ×4

ffmpeg ×4

video ×4

gpu ×1

video-conversion ×1