Devido a como o ffmpeg analisa os arquivos de legenda, há duas opções disponíveis para você:
Envie para MP4, mas possivelmente pule uma legenda :
ffmpeg -i input_video.m4v -i input_subtitle.srt -ss 1800 -c:a aac -c:v libx264 -c:s mov_text -crf 35 -preset slow -t 60 output_video.mp4
Isso deve produzir um arquivo de 60 segundos, mas ele vai pular todas as legendas que começam antes do século XIX, mas passam por ele.
Saída para MKV :
ffmpeg -i input_video.m4v -i input_subtitle.srt -ss 1800 -c:a aac -c:v libx264 -c:s ass -crf 35 -preset slow -t 60 output_video.mkv
Aqui, qualquer legenda começando antes de 1800 e estendendo-se além dela estará presente e do comprimento proporcional, ou seja, se um submarino começa em 1795 e termina em 1802, então ele terá a duração de 2 segundos na saída.
método de 2 passos
ffmpeg -i subfile -ss 1800 -t 60 sub.ass
e
ffmpeg -ss 1800 -i video.mp4 -i sub.ass -c:s mov_text out.mp4
Isso extrai os subs correspondentes ao segmento de vídeo desejado e, em seguida, é multiplicado pelo vídeo.