Le son 5.1 ( son 6 canaux )
par Dirk Pitt.
B.2. AC3 5.1 vers HE-AAC 5.1 ( avec boost )
Là je vais devoir faire face ä deux problèmes. CBoost a besoin de fichiers WAVs 16 bits et BeSweet ne veut pas en entrée des fichiers WAVs 16 bits de plus de 2 Go. Je crois que cette limitation provient du fait que le "FileSize" de l'entête d'un fichier WAV est un entier 16 bits signé soit -2147483648..2147483647 ! Un peu de calcul :
1 seconde d'échantillons 16 bits mono à 48kHz = 96000 octets
1 seconde d'échantillons 16 bits stéréo à 48kHz = 2 * 96000 = 192000 octets
1 seconde d'échantillons 16 bits 5.1 à 48kHz = 6 * 96000 = 576000 octets
2147483647 / 576000 = 3728 secondes = 1h02m08s maximum pour le son 5.1
2147483647 / 192000 = 3 * 1h02m08s = 3h06m24s maximum pour le son stéréo
2147483647 / 96000 = 2 * 3h06m24s = 6h12m48s maximum pour le son mono
Tout ceci pour dire que je ne peux pas donner à BeSweet un fichier 5.1 WAV 16 bits de plus de 1h02m08s ! Cette limitation n'existe par pour les WAVs 32 bits float mais CBoost n'en veut pas. Au passage, vous pouvez noter que les fichiers stéréo WAV 16 bits de plus de 3h06m24s peuvent également poser problème. La solution est que tous les traitements intermédiaires se feront sur des fichiers mono WAVs 16 bits. Ce qui me laisse 6h12m48s de marge, cela doit suffire.
Il y a tout de même deux inconvénients à tout cela : les traitements seront plus longs et la place disque nécessaire va augmenter considérablement.
a) conversion AC3 5.1 vers 6 fichiers WAVs 16 bits mono
BeSweet.exe -core( -input "F:\Work\Audio.ac3" -output "F:\Work\16B-" -6ch ) -azid( -c normal ) -ota( -d 0 )
Il faut noter ici que le nom du fichier de sortie n'est qu'un préfixe, j’obtiens : 16B-C.wav, 16B-FL.wav, 16B-FR.wav, 16B-LFE.wav, 16B-SL.wav et 16B-SR.wav soit les 6 fichiers pour les 6 canaux.
b) boost des 6 fichiers WAVs 16 bits mono
SEB-CBoost.exe -in "F:\Work16B-C.wav" -out "D:\Work\B-16B-C.wav" -coef "1.5"
SEB-CBoost.exe -in "F:\Work16B-FL.wav" -out "D:\Work\B-16B-FL.wav" -coef "1.5"
SEB-CBoost.exe -in "F:\Work16B-FR.wav" -out "D:\Work\B-16B-FR.wav" -coef "1.5"
SEB-CBoost.exe -in "F:\Work16B-LFE.wav" -out "D:\Work\B-16B-LFE.wav" -coef "1.5"
SEB-CBoost.exe -in "F:\Work16B-SL.wav" -out "D:\Work\B-16B-SL.wav" -coef "1.5"
SEB-CBoost.exe -in "F:\Work16B-SR.wav" -out "D:\Work\B-16B-SR.wav" -coef "1.5"
ou en une seule commande
for %a in (16B*.wav) do Start /WAIT /LOW SEB-CBoost.exe -in "%~dpnxa" -out "%~dpaB-%~nxa" -coef "1.5"
c) conversion 6 fichiers WAVs 16 bits mono vers HE-AAC 5.1
Je vais pour cela fournir un fichier MUX à BeSweet en entrée. Un fichier MUX est un fichiers texte contenant 6 noms de fichiers maximum. Il sera considéré par BeSweet comme un fichier WAV multi canal. L'ordre des noms de fichiers défini l'ordre des canaux du fichier de sortie. Ceci est très important ! Car comme je l'ai dit en préambule, l'ordre des canaux n'est pas toujours le même. Le fichier MUX est :
BeSweet.exe -core( -input "F:\Work\16TOAAC.MUX" -output "F:\Work\B-Audio.mp4" ) -bsn( -6chnew -vbr_streaming -codecquality_high -aacprofile_he )
J'obtiens cette fois un fichier B-Audio.mp4 boosté. Reportez vous à la procédure A.1. pour voir et entendre se que cela donne. Je peux également voir les différences de niveaux à l'aide de GraphEdit du filtre AC3Filter. Pour cela, je charge Audio.mp4 dans GraphEdit en faisant un glisser-déposer puis je fais "File" / *Render Media File" pour charger B-Audio.mp4 et j'obtiens :
Si je fais un clic droit successivement sur les deux "AC3Filter" et que je sélectionne "Filter Properties", je peux visuellement contrôler les niveaux du fichier boosté et non boosté.
Pages de l'article
- Introduction
- A. Lire du 5.1
- A.1. Lire du HE-AAC 5.1
- A.2. Lire du Vorbis ( OGG ) 5.1
- B. Ré-Encoder du 5.1
- B.1. AC3 5.1 vers HE-AAC 5.1 ( sans boost )
- B.2. AC3 5.1 vers HE-AAC 5.1 ( avec boost )
- B.3. AC3 5.1 vers OGG Vorbis 5.1
- B.4. DTS 5.1 vers HE-AAC 5.1
- B.5. DTS 5.1 vers OGG Vorbis 5.1
- B.6. HE-AAC 5.1 vers OGG Vorbis 5.1
- B.7. OGG Vorbis 5.1 vers HE-AAC 5.1
- B.8. AC3 5.1 vers AACPlus V2 ( avec l'encodeur enc_aacplus.dll de WimAMP )
- B.9. Synthèse
- B.10. Ré-encodage à travers DirectShow
- Conclusion