FFmpeg remove quadros negativos

1

Estou usando o FFmpeg para trabalhar com vídeos que têm um horário de início negativo:

$ ffmpeg -i test.mp4 -ss 0 out.mp4
...
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 1
    compatible_brands: mp41mp42isom
    creation_time   : 2018-01-03 11:35:13
  Duration: 00:00:06.16, start: -1.238906, bitrate: 1425 kb/s
...
Output #0, mp4, to 'out.mp4':
...
frame=  222 fps=0.0 q=-1.0 Lsize=     166kB time=00:00:07.44 bitrate= 182.9kbits/s

Existe alguma maneira de cortar o vídeo no tempo 0? ou seja, a saída deve ter duração 6,16 e não 7,74. Eu tentei definir -avoid_negative_ts para todos os valores diferentes. Obviamente, eu poderia ler manualmente o valor negativo e executá-lo novamente com o deslocamento correto usando -ss , mas estou procurando uma solução automática.

    
por Cassidy Laidlaw 03.01.2018 / 15:31

1 resposta

1

Normalmente, -ss como uma opção de entrada funciona como um deslocamento relativo do início do arquivo. Como seu tempo de início é negativo e será desconhecido com antecedência, você pode ativar seek_timestamp para buscar um valor de carimbo de data / hora absoluto.

ffmpeg -seek_timestamp 1 -ss 0 -i test.mp4 out.mp4
    
por 03.01.2018 / 18:15

Tags