Почему FFmpeg добавляет пустое черное видео в конец моих файлов MP4 при сжатии из MOV?

Почему FFmpeg добавляет пустое черное видео в конец моих файлов MP4 при сжатии из MOV?

У меня естьнесколько больших MOV-файловкоторый я хочу сжать в MP4.

К сожалению, когда я использую FFmpeg, он добавляет много черного (пустого) видео в конце.

(Файл назначения длиннее исходного файла.)

Например, у меня есть файл длительностью 02:22:01 (и выходные логи FFmpeg это подтверждают).

Но когда я запускаю следующую команду (которая занимает более 20 минут даже на «сверхбыстрой скорости»), я получаю файл MP4, который выглядит в целом хорошо, но имеет много черных кадров, добавленных в конце, так что общая продолжительность видео становится 3:59:59.

ffmpeg -i "F:\video_project\uncompressed\Tape_12.mov" -vcodec libx264 -preset ultrafast -crf 18 -n -threads 16 -f mp4 "F:\video_project\compressed\Tape_12.mp4" 2>&1

Это происходит и с другими моими конвертациями MOV в MP4. Продолжительность черного видео, добавленного в конец, может составлять от 20 до 80+ минут (она не одинакова для каждого видео).

Что я делаю не так?

Мои журналы здесь.

P.S. Я использую PowerShell 4 в Windows 7.

Обновлять:

В ответ на LordNeckBeard, когда я запускаю ffmpeg.exe -i F:\video_project\compressed\Tape_12.mp4, результат такой:

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'F:\video_project\compressed\Tape_12.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf55.22.101
  Duration: 03:59:59.94, start: 0.033333, bitrate: 5389 kb/s
    Stream #0:0(eng): Video: h264 (High 4:2:2) (avc1 / 0x31637661), yuv422p, 720x480 [SAR 10:11 DAR 15:11], 5252 kb/s, 29.97 fps, 29.97 tbr, 11988 tbn, 59.94 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : SoundHandler

В ответ Раджибу, когда я запускаю ffmpeg.exe -i F:\video_project\uncompressed\Tape_12.mov, результат такой:

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'F:\video_project\uncompressed\Tape_12.mov':
  Metadata:
    creation_time   : 2014-01-05 02:35:17
  Duration: 02:22:01.04, start: -6.064083, bitrate: 51226 kb/s
    Stream #0:0(eng): Video: dvvideo (dvc  / 0x20637664), yuv411p, 720x480 [SAR 8:9 DAR 4:3], 28771 kb/s, SAR 10:11 DAR
15:11, 29.97 fps, 29.97 tbr, 2997 tbn, 29.97 tbc (default)
    Metadata:
      creation_time   : 2014-01-05 06:35:18
      handler_name    : Apple Alias Data Handler
    Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, mono, s16, 768 kb/s (default)
    Metadata:
      creation_time   : 2014-01-05 06:35:18
      handler_name    : Apple Alias Data Handler
    Stream #0:2(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, mono, s16, 768 kb/s (default)
    Metadata:
      creation_time   : 2014-01-05 06:35:18
      handler_name    : Apple Alias Data Handler

решение1

Проблема, вероятно, в том, что вы не ускоряете звуковую дорожку, поэтому новое видео остается таким же длинным, как и исходное. Либо удалите звуковую дорожку с помощью опции -an, либо ускорьте ее соответствующим образом с помощью ​атемпоаудиофильтр.

Связанный контент