Tengo un comando FFmpeg para recortar audio:
ffmpeg -ss 01:43:46 -t 00:00:44.30 -i input.mp3 output.mp3
El problema que tengo con este comando es que esa opción -t
requiere una duración (en segundos) de 01:43:46 . Quiero recortar el audio usando las horas de inicio / parada, por ejemplo, entre 01:43:46 y 00: 01: 45.02 .
es posible?
ffmpeg
, no parece proporcionar nada más que una hora de inicio y una duración. Ymplayer
tampoco lo hace.Respuestas:
ffmpeg parece tener una nueva opción -to en la documentación :
Comando de muestra con dos formatos de hora
Esto debería crear una copia (file-2.mkv) de file.mkv desde la marca de 20 segundos a la marca de 40 segundos.
fuente
copy
parte, el audio / video no está sincronizado, así que lo elimino y agrego-async 1
y funciona de maravilla. Por supuesto, requiere una nueva codificación, por lo que una mejora sería un comando que permitiríacopy
los problemas de sincronización, pero sin ellos.ffmpeg -i file.mp3 -ss 10 -to 11 -ss 20 -to 21 -ss 30 -to 31 ....
-to
opción:ffmpeg -i mmm.mp4 -ss 00:04:04 -to 00:04:35 -c copy output1.mp4 && ffmpeg -i mmm.mp4 -ss 00:05:47 -to 00:06:05 -c copy output2.mp4 && mencoder -ovc copy -oac mp3lame -idx output1.mp4 output2.mp4 -o complete.mp4
Si tiene PHP instalado, conviértalo en un script:
Contenido de TimeDiff.php:
contenido de audiochop.sh:
Uso:
Donde [startchop] y [stopchop] son marcas de tiempo absolutas desde el comienzo de la pista.
NB: los scripts pueden necesitar ajustes según la versión de la plataforma, etc.
fuente