ffmpeg jogando “DTS não monótono no fluxo de saída”

1

Estou tentando concatenar 3 arquivos de vídeo. Estou executando o Linux e a linha de comando é assim:

ffmpeg -f concat -safe 0 -i blist.txt -c copy output.mp4

blist.txt contém isto:

file 'btest/00 - Test Pattern.mp4'
file 'btest/01 - In Memoriam.mp4'
file 'btest/EndLoop.mp4'

Logo que ele começa a processar o segundo arquivo, ele gera erros como esse, mas continua em execução:

Non-monotonous DTS in output stream 0:0;

O arquivo resultante deve ter 4:13 de comprimento, mas termina com 9:57 de comprimento. O primeiro clipe toca perfeitamente, mas depois disso, é toda a tela preta com o áudio certo para os 4:13 restantes, depois silêncio.

Eu sei que preciso recodificar todos os arquivos, mas não tenho ideia de quais parâmetros usar.

Detalhes sobre cada entrada e ffmpeg :

ffmpeg version N-92086-gd702769 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.10) 20160609
  configuration: --disable-x86asm
  libavutil      56. 19.101 / 56. 19.101
  libavcodec     58. 31.102 / 58. 31.102
  libavformat    58. 18.103 / 58. 18.103
  libavdevice    58.  4.105 / 58.  4.105
  libavfilter     7. 33.100 /  7. 33.100
  libswscale      5.  2.100 /  5.  2.100
  libswresample   3.  2.100 /  3.  2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'upload/00 - Test Pattern.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf56.40.101
  Duration: 00:02:26.87, start: 0.000000, bitrate: 243 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 106 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Input #1, mov,mp4,m4a,3gp,3g2,mj2, from 'upload/01 - In Memoriam.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf56.40.101
  Duration: 00:01:32.07, start: 0.000000, bitrate: 219 kb/s
    Stream #1:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 82 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #1:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Input #2, mov,mp4,m4a,3gp,3g2,mj2, from 'upload/99 - End Loop.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf56.40.101
  Duration: 00:00:15.05, start: 0.000000, bitrate: 236 kb/s
    Stream #2:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 99 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #2:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
At least one output file must be specified

Alguém por favor pode me ajudar com isso?

    
por cwinthrop 30.09.2018 / 15:44

1 resposta

0

Longa história curta, depois de muito julgamento e fracasso, alguém teve a gentileza de me acompanhar mudando o formato de .mp4 para .mkv, que funciona lindamente.

O comando exato usado foi:

    ffmpeg -i "input/$t.mp4" -c:a copy -c:v copy "output/$o.mkv"
    
por 01.10.2018 / 22:28