Normaliser l’audio avec ffmpegJ'en profite pour rappeler de ne pas oublier l'audio. Pour normaliser la piste audio, c'est-à-dire le fait de mettre le volume maximum de la vidéo (le pic) à 0 dB, il faut faire
1/ Récupérer le volume maximum de la vidéo
ffmpeg -i "video.mp4" -af "volumedetect" -vn -sn -dn -f null /dev/null
Si vous avez "max_volume: -9.3 dB", il est possible d'augmenter le volume de 9.3 dB sans risquer de dégradation.
2/ Compresser la vidéo en spécifiant l'augmentation de volume désirée
On rajoute alors un filtre dans la ligne ffmpeg : -filter:a "volume=9.3dB"
Exemple d'un script pour désentrelacer et normaliser l'audio de plusieurs vidéos à la suite :#!/bin/bash
ffmpeg -i "o1.mp4" -filter:v "bwdif=0" -pix_fmt yuv420p -c:v libx264 -preset slow -crf 23 -filter:a "volume=9.3dB" -c:a aac -b:a 160k -ac 1 -f mp4 "1.mp4"
ffmpeg -i "o2.mp4" -filter:v "bwdif=0" -pix_fmt yuv420p -c:v libx264 -preset slow -crf 23 -filter:a "volume=9.3dB" -c:a aac -b:a 160k -ac 1 -f mp4 "2.mp4"
ffmpeg -i "o3.mp4" -filter:v "bwdif=0" -pix_fmt yuv420p -c:v libx264 -preset slow -crf 23 -filter:a "volume=10.9dB" -c:a aac -b:a 160k -ac 1 -f mp4 "3.mp4"
ffmpeg -i "o4.mp4" -filter:v "bwdif=0" -pix_fmt yuv420p -c:v libx264 -preset slow -crf 23 -filter:a "volume=9.3dB" -c:a aac -b:a 160k -ac 1 -f mp4 "4.mp4"-crf 23 en H.264 permet d'avoir un flux vidéo de haute qualité (et de grande taille), utile si ce b'est pas la compression finale mais que le fichier se destine à avoir une autre compression ensuite (par exemple par YouTube si il est mis sur cette plateforme).
À noter que le désentrelacement permet une meilleure qualité quand cela bouge, mais aussi de diminuer la taille du fichier pour un même CRF :
Voici les vidéos d'une conférence (plusieurs heures pour chaque vidéo), filmée en 1080i à 25 images par seconde : (oui, c'est absurde en 2023 de faire du 1080i pour ce contenu à destination d'internet)
| crf23 sans désentrelacement | crf23 avec bwdif=0 | crf23 avec yadif=0 |
Vidéo N°1 | 11,4 Mb/s | 9,01 Mb/s | 8,00 Mb/s |
Vidéo N°2 | 9,49 Mb/s | 7,93 Mb/s | 7,38 Mb/s |
Vidéo N°3 | 17,0 Mb/s | 12,9 Mb/s | 11,4 Mb/s |
Vidéo N°4 | 14,6 Mb/s | 11,3 Mb/s | 10,2 Mb/s |
bwdif génère donc des fichiers plus importants que yadif pour un même CRF.