web-dev-qa-db-fra.com

Normalisation du volume vidéo avec avconv

J'ai une collection de vidéos aux formats .mkv et .mp4 (AAC + H.264). Les fichiers .mkv fonctionnent, mais tous les fichiers .mp4 ont un volume si faible que je ne peux pas l’entendre sur mon téléphone, même lorsque le volume est au maximum.

Je les convertis à l'aide de avconv afin qu'ils soient plus petits pour mon téléphone. Cela fonctionne bien, mais je n’ai pas encore trouvé comment normaliser le volume de tous les fichiers .mp4 afin qu’ils correspondent aux fichiers .mkv.

Augmenter le volume seul serait un grand succès.

5
Lanbo

Je viens de chercher un problème similaire et d’utiliser cette solution de SuperUser

Fondamentalement, il suffit d'extraire l'audio du fichier en tant que wav, d'exécuter normaliser-audio sur celui-ci, puis de le coder à nouveau comme aac et remux.

Je viens d'écrire ce script rapide pour le faire:

VIDEO_FILE=$1
VIDEO_FILE_FIXED=${VIDEO_FILE%.*}-fixed.${VIDEO_FILE##*.}
avconv -i $VIDEO_FILE -c:a pcm_s16le -vn audio.wav
normalize-audio audio.wav
avconv -i $VIDEO_FILE -i audio.wav -map 0:0 -map 1:0 -c:v copy -c:a libvo_aacenc \
   $VIDEO_FILE_FIXED

Placez-le dans un fichier tel que normalize.sh, puis exécutez bash normalize.sh file_to_convert.mp4. Vous obtiendrez un fichier file_to_convert-fixed.mp4.

Vous voudrez peut-être modifier la commande normalize-audio pour simplement augmenter le volume de quelques dB avec le -g siwtch, ou utiliser une autre commande entièrement. J'ai vu aacgain et wavegain mentionné ailleurs. normalize-audio est dans le paquet normalize-audio , assez curieusement.

J'espère que cela vous aide.

14
JamesLloyd