首页 > 解决方案 > ffmpeg concat 垂直视频,不同尺寸

问题描述

上下文:3 个输入视频:

foo.mov:1080x1920(垂直,非水平)带音频。

bar.mp4fiz.mp4:480x360,带音频。(注:.mp4,不同于.mov

目标:连接所有 3 个视频。输出out.mp4应为 480x360。挤压foo.mov但保持其纵横比,占据 100% 的高度,但纤细的视频应仅位于中间,左右两侧为黑色(或其他颜色)空白。foo.mov不应裁剪。

我目前在下面有这个命令(为更好的可视化添加了换行符)用于连接,但需要在PLACEHOLDER1generate 处填充缺失的代码,以便v0v0其大小调整为 480x360,如上所述。如果到目前为止我的尝试是正确的,请帮助完成PLACEHOLDER1;否则,请提供更好的解决方案和解释

ffmpeg 
-r 24 -i foo.mov 
-r 24 -i bar.mp4 
-r 24 -i fiz.mp4
-filter_complex 
"[0:v] PLACEHOLDER1 [v0];
[v0][1][2] concat=n=3:v=1:a=1 [v][a]" 
-map "[v]" -map "[a]" out.mp4

跑步

ffmpeg -n -i foo.MOV -i bar.mp4 -i fiz.mp4

给出这个信息:

ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers
  built with Apple clang version 11.0.3 (clang-1103.0.32.62)
  [...configuration omitted...]
  libavutil      56. 51.100 / 56. 51.100
  libavcodec     58. 91.100 / 58. 91.100
  libavformat    58. 45.100 / 58. 45.100
  libavdevice    58. 10.100 / 58. 10.100
  libavfilter     7. 85.100 /  7. 85.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
  libpostproc    55.  7.100 / 55.  7.100

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'foo.MOV':
  Metadata:
    major_brand     : qt  
    minor_version   : 0
    compatible_brands: qt  
    creation_time   : [omitted]
    com.apple.quicktime.make: [omitted]
    com.apple.quicktime.model: [omitted]
    com.apple.quicktime.software: [omitted]
    com.apple.quicktime.creationdate: [omitted]
  Duration: 00:00:04.71, start: 0.000000, bitrate: 17579 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080, 17492 kb/s, 24 fps, 24 tbr, 600 tbn, 1200 tbc (default)
    Metadata:
      rotate          : 90
      creation_time   : [omitted]
      handler_name    : Core Media Video
      encoder         : H.264
    Side data:
      displaymatrix: rotation of -90.00 degrees
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 63 kb/s (default)
    Metadata:
      creation_time   : [omitted]
      handler_name    : Core Media Audio
    Stream #0:2(und): Data: none (mebx / 0x7862656D), 9 kb/s (default)
    Metadata:
      creation_time   : [omitted]
      handler_name    : Core Media Metadata
    Stream #0:3(und): Data: none (mebx / 0x7862656D), 0 kb/s (default)
    Metadata:
      creation_time   : [omitted]
      handler_name    : Core Media Metadata

Input #1, mov,mp4,m4a,3gp,3g2,mj2, from 'bar.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.29.100
  Duration: 00:00:01.94, start: 0.000000, bitrate: 641 kb/s
    Stream #1:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, smpte170m/unknown/smpte170m), 480x360 [SAR 1:1 DAR 4:3], 354 kb/s, 24.58 fps, 24.58 tbr, 113734695.00 tbn, 49.16 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #1:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 280 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
      
Input #2, mov,mp4,m4a,3gp,3g2,mj2, from 'fiz.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.29.100
  Duration: 00:00:01.98, start: 0.000000, bitrate: 725 kb/s
    Stream #2:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, smpte170m/unknown/smpte170m), 480x360 [SAR 1:1 DAR 4:3], 442 kb/s, 24.58 fps, 24.58 tbr, 113734695.00 tbn, 49.16 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #2:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 278 kb/s (default)
    Metadata:
      handler_name    : SoundHandler

标签: videoffmpeg

解决方案


推荐阅读