Existe, de fato, uma pletora de técnicas disponíveis on-line para conseguir isso. Uma técnica básica é o one liner que funciona bem no meu sistema com um clipe do YouTube:
ffmpeg -i $(youtube-dl -f 22 --get-url https://www.youtube.com/watch?v=ZbZSe6N_BXs) \
-ss 00:00:10 -t 00:00:30 -c:v copy -c:a copy \
happy.mp4
As duas seções que governam o início e o término do clipe neste exemplo são:
- -ss 00:00:10 : Colocado após o arquivo de entrada que este codifica e descarta amostras até a marca de 10 segundos. Isto é mais lento e menos eficiente do que colocar as opções de busca antes do arquivo de entrada ( busca de entrada ) mas funciona melhor neste exemplo (em particular quando copia fluxos de áudio e vídeo )
- -t 00:00:30 : especifica a duração da codificação, neste caso apenas 30 segundos
Eu testei isso extensivamente com o YouTube e tudo funciona bem no meu próprio sistema ...
Referências:
- Download do youtube-dl : Grande discussão sobre as possibilidades, algumas um pouco equivocadas:)
- FFmpeg: Seeking Um esboço sólido de busca, corte e a sintaxe correta da unidade de tempo