Você pode usar silencedetect
com filter_complex
. Assim, você pode selecionar os canais necessários a partir do vídeo de entrada e obtê-los através de filtros. A seguir está o comando FFmpeg que estou sugerindo.
ffmpeg -i input_video -filter_complex "[0:a]silencedetect=n=-50dB:d=1[outa]" -map [outa] test1.mp3
Isso fornecerá os períodos de tempo silencioso correspondentes e você poderá usá-los novamente para dividir o vídeo. [0:a]
refere-se ao primeiro arquivo de entrada e map
obterá a saída de áudio filtrada para o arquivo de saída. Aqui você pode encontrar um bom exemplo para a divisão de áudio. Mesma forma aqui a divisão de vídeos é descrita.
Espero que isso ajude você!