2014-04-22 18 views
8

Ho qualche problema ad aggiungere diversi effetti di dissolvenza a un file audio. Quando cerco di utilizzare un comando come questo:Più effetti fadeIn/fadeOut in un file audio con ffmpeg

ffmpeg -y -i /home/user/video/test/sound.mp3 -af "afade=t=in:ss=0:d=3,afade=t=out:st=7:d=3,afade=t=in:st=10:d=3,afade=t=out:st=17:d=3,afade=t=in:st=20:d=3,afade=t=out:st=27:d=3" /tmp/test.mp3 

poi il mio file di output audio ha un fadein e fadeout applicato solo una volta. Tutti i successivi effetti non vengono applicati. Esiste un modo per applicare diversi effetti di dissolvenza allo stesso file audio? Inoltre, qual è la differenza tra ss e st parametro in questo comando?

+0

Per quanto riguarda i parametri: con 'st' ("tempo di inizio"), si specifica l'inizio della vostra effetto in pochi secondi, con' ss' ("start campione") lo stesso nei campioni audio (in genere 44100 al secondo, controllare con 'ffprobe'). Fonte: [documentazione sui filtri ffmpeg] (http://ffmpeg.org/ffmpeg-filters.html#afade). – tanius

risposta

5

un'occhiata qui: ffmpeg volume filters

volume='if(lt(t,10),1,max(1-(t-10)/5,0))':eval=frame 

comando completo:

ffmpeg -i movie.wav -filter volume='if(lt(t,10),1,max(1-(t-10)/5,0))':eval=frame modified-movie.wav 
7

funziona per me con ffmpeg 2.5.2.

Sto usando fade in and fade out audio filter, entrambi per la durata di 3 secondi.

ffmpeg -i audio.mp3 -af 'afade=t=in:ss=0:d=3,afade=t=out:st=27:d=3' out.mp3 

Si consiglia di aggiornare il file ffmpeg, in quanto potrebbe essere un bug. Maggiori informazioni in the docs.

+0

Se ho capito bene, @farw non ha problemi con un comando come questo: un effetto di dissolvenza e uno di dissolvenza vengono applicati. Ma se aggiungeresti più di loro in seguito, non verranno più applicati. – tanius

+0

puoi spiegare i parametri o il link dove sono documentati? – chovy

4

Il problema è che dopo lo sbiadimento dell'audio si sta cercando di svanire nel silenzio.

La soluzione è quella di disabilitare il fade out filtro quando si desidera avviare la dissolvenza in.

È possibile ottenere che con Timeline Editing per abilitare i filtri per un particolare periodo di tempo.

L'esempio seguente funziona bene:

ffmpeg -i input.mp3 -af "afade=enable='between(t,0,3)':t=in:ss=0:d=3,afade=enable='between(t,7,10)':t=out:st=7:d=3,afade=enable='between(t,10,13)':t=in:st=10:d=3,afade=enable='between(t,13,16)':t=out:st=13:d=3" -t 16 output.mp3 
+0

facile ed efficiente ... fantastico! Grazie. –

Problemi correlati