3.10. Audio Avancé

3.10.1. Lecture Surround/Multi-canal

3.10.1.1. DVDs

La plupart des DVDs et beaucoup d'autres fichiers incluent le son surround. MPlayer supporte la lecture surround mais ne les activent pas par défaut parce que les équipement stéréos sont de loin plus communs. Pour jouer un fichier qui ont plus de deux canaux audio utilisez -channels. Par exemple, pour jouer un DVD avec l'audio 5.1:

mplayer dvd://1 -channels 6

Notez que en dépit du nom "5.1" il y a couramment six canaux discret. Si vous avez l'équipement pour le son surround il est de précaution de mettre l'option channels dans votre fichier de configuration de MPlayer ~/.mplayer/config. Par exemple, pour faire une lecture quadriphonique par défaut, ajoutez cette ligne:

channels=4

MPlayer sortira alors l'audio en quatre canaux quand les quatres canaux sont tous disponibles.

3.10.1.2. Lire des fichiers stéréo sur quatre haut-parleurs

MPlayer ne duplique aucun canal par défaut, et la plupart des pilotes audio ne le font pas non plus. Si vous voulez le faire manuellement:

mplayer filename -af channels=2:2:0:1:0:0

Voir la section sur canal en copie pour une explication.

3.10.1.3. AC-3/DTS Passthrough

Les DVDs ont habituellement l'audio surround encodé en format AC-3 (Dolby Digital) ou DTS (Digital Theater System). Certains équipements audio moderne sont capables de décoder ces formats de façon interne. MPlayer peut être configuré pour relayer les données audio sans les décoder. Cela ne marchera que si vous avez une connectique S/PDIF (Sony/Philips Digital Interface) sur votre carte son.

Si votre équipement audio peux décoder AC-3 et DTS, vous pouvez sans risque activer le passthrough pour les deux formats. Autrement, activez le passthrough pour le seul format que votre équipement supporte.

Pour activer le passthrough en ligne de commande:

  • Pour l'AC-3 seul, utilisez -ac hwac3

  • Pour le DTS seul, utilisez -ac hwdts

  • Pour l'ensemble AC-3 et DTS, utilisez -afm hwac3

Pour activer le passthrough dans le fichier de configuration de MPlayer:

  • Pour l'AC-3 seul, utilisez ac=hwac3,

  • Pour le DTS seul, utilisez ac=hwdts,

  • Pour l'ensemble AC-3 et DTS, utilisez afm=hwac3

Notez qu'il y a une virgule (",") à la fin de ac=hwac3, et ac=hwdts,. Cela permettra à MPlayer de retomber sur les codecs qu'il utilise normalement lors de la lecture d'un fichier qui n'a pas l'audio en AC-3 ou DTS. afm=hwac3 n'a pas besoin d'une virgule; de toute façon MPlayer reviendra en arrière lorsqu'une famille d'audio est spécifiée.

3.10.1.4. PasseBande audio MPEG

Les transmissions TV numérique (comme DVB et ATSC) et certains DVD ont habituellement des flux audio MPEG (en particulier MP2). Certains décodeurs matériels MPEG comme les cartes DVB complètes et les adaptateurs DXR2 peuvent décoder nativement ce format. MPlayer peut être configuré pour relayer les données audio sans les décoder.

Pour utiliser ce codec:

 mplayer -ac hwmpa 

3.10.1.5. Audio à encodage matriciel

***TODO***

Cette section doit encore être écrite et ne peut être complétée tant que personne ne nous a fourni des fichiers d'exemple à tester. Si vous avez quelconques fichiers audio à encodage matriciel en votre possession,que savez où en trouver, ou avez quelconques informations qui pourraient être utiles, veuillez envoyer un message à la liste de diffusion MPlayer-DOCS. Mettez "[matrix-encoded audio]" en sujet du mail.

Si aucuns fichiers ou de plus amples informations ne sont reçues cette section sera enlevée.

Liens Bon:

3.10.1.6. Emulation Surround dans les écouteurs

MPlayer inclu un filtre HRTF (Head Related Transfer Function) basé sur un projet MIT où des mesures ont été prises depuis des microphones montés sur une tête humaine factice.

Bien que il ne soit pas possible de reproduire exactement un système surround, le filtre HRTF de MPlayer fourni une immersion audio plus spatiale avec les systèmes d'écoute stéréo. La plupart des techniques de mixage consistent à simplement fusionner tous les canaux en deux; En plus de cette fusion, hrtf génére de subtils échos, augmente un peu la séparation stéréo, et altère le volume de certaines fréquences. Si HRTF sonne mieux gardez à l'esprit que tout ceci est dépendant de la source audio et est une question de goût personnel, mais cela vaut vraiment le coup d'essayer.

Pour jouer un DVD avec le HRTF:

mplayer dvd://1 -channels 6 -af hrtf

hrtf ne marche bien que avec 5 ou 6 canaux. Aussi, hrtf requière de l'audio en 48 kHz. L'audio DVD est déjà en 48 kHz, mais si vous avez un fichier avec un taux d'échantillonnage différent que celui que vous voulez jouer en utilisant hrtf vous devez le ré-échantillonner:

mplayer filename -channels 6 -af resample=48000,hrtf

3.10.1.7. Dépannage

Si vous n'entendez aucun son provenant de vos canaux surround, controler vos paramètres de mixeur avec un programme de mixeur comme alsamixer; les sorties audio sont souvent muettes et le volume réglé à zéro par défaut.

3.10.2. Manipulation de Canal

3.10.2.1. Information Générale

Malheureusement, il n'y a pas de standard qui montrent comment les canaux sont ordonnés. Les ordres listés ci-dessous sont ceux de l'AC-3 et sont assez typiques; essayez-les et voyez si votre source correspond. Les canaux sont numérotés à partir de par 0.

mono

  1. centre

stéréo

  1. gauche

  2. droite

quadraphonique

  1. devant gauche

  2. devant droite

  3. arrière gauche

  4. arrière droite

surround 4.0

  1. devant gauche

  2. devant droite

  3. arrière centre

  4. devant centre

surround 5.0

  1. devant gauche

  2. devant droite

  3. arrière gauche

  4. arrière droite

  5. devant centre

surround 5.1

  1. devant gauche

  2. devant droite

  3. arrière gauche

  4. arrière droite

  5. devant centre

  6. caisson de basse

L'option -channels est utilisée pour demander le nombre de canaux depuis le décodeur audio. Certains codecs audio utilisent le nombre de canaux spécifiés pour décider si le mixage (downmixing) de la source est nécessaire. Notez que cela n'affecte pas toujours le nombre de canaux de sortie. Par exemple, utiliser -channels 4 pour jouer un fichier stéréo MP3 résultera quand même en une sortie en 2-canaux à partir du moment où le codec MP3 ne produira pas de canaux suplémentaires.

Le filtre audio channels peut être utilisé pour créer ou enléver des canaux et, est utile pour contrôler le nombre de canaux envoyés à la carte son. Voir les sections suivantes pour plus d'informations sur la manipulation de canaux.

3.10.2.2. Jouer en mono avec deux enceintes

Mono sonne beaucoup mieux quand il est joué au travers de deux enceintes - particulièrement quand des écouteurs sont utilisés. Les fichiers Audio qui ont vraiment un canal sont automatiquement joués au travers de deux enceintes; malheureusement, la plupart des filtres avec le son mono sont couramment encodés comme stéréo avec un canal silencieux. La façon la plus facile et la plus fidèle de faire sortir des enceintes le même audio est le filtre extrastereo:

mplayer filename -af extrastereo=0

Ceci fait la moyenne des deux canaux, ayant pour résultat que les deux canaux ont leur volume réduit de moitié par rapport à l'original. Les sections suivantes ont des exemples sur les autres manières de faire ceci sans une diminution du volume, mais ils sont plus compliqués et requièrent différentes options dépendemment du canal à garder. Si vous voulez réellement maintenir le volume, il est peut être plus facile de tester avec le filtre volume et trouver la bonne valeur. Par exemple:

mplayer nom_fichier -af extrastereo=0,volume=5

3.10.2.3. Copier/Déplacer le canal

Le filtre channels peut déplacer n'importe lequel ou tous les canaux. Parametrer toutes les sous-options pour le filtre channels peut être compliqué et prend peu d'attention.

  1. Décidez combien de canaux de sortie vous avez besoin. Ceci est la première sous-option.

  2. Comptez combien de canaux vous devrez déplacer. Ceci est la seconde sous-option. Chaque canal peut être déplacé en plusieurs différents canaux en même temps, mais gardez en tête que quand un canal est déplacé (même si vers une seule destination) le canal source sera vidé à moins qu'un autre canal ne soit déplacé dans ce même canal. Pour copier un canal, en gardant la source intacte, simplement déplacer le canal dans les deux destination et source. Par exemple:

    canal 2 --> canal 3
    canal 2 --> canal 2
    

  3. Écrivez les copies de canal comme paires de sous-options. Notez que le premier canal est 0, le second est 1, etc. L'ordre de ces sous-options n'importe pas aussi longtemps qu'ils sont correctement groupés en source:destination paires.

Exemple: un canal en deux enceintes

Ici un exemple d'une autre manière de jouer un canal sur les deux enceintes. On suppose pour cette exemple que le canal de gauche devra être joué et le canal de droite annulé. En suivant les étapes ci-dessus:

  1. Afin de fournir un canal de sortie pour chacune des deux enceintes, la première sous-option doit être "2".

  2. Le canal de gauche a besoin d'être déplacé vers le canal de droite, et doit aussi être déplacé vers lui-même pour que le canal ne se vide pas. Cela fait un total de deux déplacements, mettant la deuxième sous-option aussi à "2".

  3. Pour déplacer le canal de gauche (canal 0) vers le canal de droite (canal 1), la paire sous-option est "0:1", "0:0" déplace le canal de gauche vers lui-même.

En mettant tout ça ensemble cela donne:

mplayer filename -af channels=2:2:0:1:0:0

L'avantage de cette exemple par rapport à extrastereo est que le volume de chaque canal de sortie est le même que le canal d'entrée. Le désavantage étant que les sous-options doivent être changées à "2:2:1:0:1:1" quand l'audio désirée est dans le canal de droite. Il est aussi plus difficile de s'en souvenir et de le taper.

Exemple: canal gauche vers deux enceintes raccourci

Il y a couramment une façon plus simple d'utiliser le filtre channels pour jouer le canal de gauche vers les deux enceintes:

mplayer nom_fichier -af channels=1

Le second canal est enlevé et, sans plus de sous-options, le seul canal qui reste est celui de gauche. Les pilotes de carte son jouent automatiquement l'audio d'un seul canal vers les deux enceintes. cela ne fonctionne que quand le canal voulu est sur la gauche.

Exemple: dupliquer les canaux frontaux sur l'arrière

Une autre opération commune est de dupliquer les canaux frontaux et de leur faire rejouer sur les enceintes arrière d'un paramètrage quadraphonique.

  1. Il devrait y avoir quatre canaux de sortie. La première sous-option est "4".

  2. Chacun des deux canaux avant a besoin d'être déplacé vers le canal arrière correspondant et aussi vers lui-même. Cela fait quatre déplacements, donc la seconde sous-option est "4".

  3. L'avant gauche (canal 0) a besoin d'être déplacé vers l'arrière gauche (canl 2): "0:2". L'avant gauche a aussi besoin d'être déplacé vers lui-même: "0:0". L'avant droit (canal 1) est déplacé vers l'arrière droite (canl 3): "1:3", et aussi vers lui- même: "1:1".

Combinez toutes les sous-options pour obtenir:

mplayer nom_fichier -af channels=4:4:0:2:0:0:1:3:1:1

3.10.2.4. Mixage de canal

Le filtre pan peut mixer les canaux selon des proportions spécifiées par l'utilisateur. Ceci tient compte de tout que le filtre de channels peut faire et plus. Malheureusement, les sous-options sont beaucoup plus complexes.

  1. Décidez avec combien de canaux vous voulez travailler. Vous aurez peut-être besoin de spécifier cela avec -channels et/ou -af channels. Des exemples plus loin montreront quand et laquelle il faut utiliser.

  2. Décidez combien de canaux à introduire dans pan (les canaux suplémentaires décodés sont rejetés). Ceci est la première sous-option, et elle contrôle aussi combien de canaux à employer pour la sortie.

  3. Les sous-options restantes spécifient quelle quantité de chaque canal sont mixés l'un dans l'autre. Ceci est la partie compliquée. Pour décomposer la tâche, découpez les sous-options en plusieurs ensembles, un ensemlbe pour chaque canal de sortie. Chaque sous-option d'un ensemble correspond à un canal d'entrée. Le nombre que vous spécifiez sera le pourcentage de canal d'entrée qui sont mixés dans le canal de sortie.

    pan accepte des valeurs de 0 à 512, rendement de 0% à 51200% du volume original. Faites attention quand en utilisant des valeurs plus grande que 1. Non seulement cela peut vous donner un volume tres haut, mais si vous dépassez la marge d'échantillon de votre carte son vous pourriez entendre des pops et clics désagréables. Si vous le voulez vous pouvez faire suivre pan avec ,volume pour activer la coupure, mais c'est mieux de garder les valeurs de pan suffisamment basses pour que la coupure ne soit pas nécessaire.

Exemple: un canal dans deux enceintes

Voici encore un autre exemple pour jouer le canal gauche dans deux enceintes. Suivez les étapes ci-dessus:

  1. pan devrait sortir deux canaux, donc la première sous-option est "2".

  2. Puisque nous avons deux canaux d'entrée, il y aura deux ensembles de sous-options. Puisqu'il y a également deux canaux de sortie, il y aura deux sous-options par ensemble. Le canal gauche à partir du fichier devrait aller au volume maxi aux les nouveaux canaux gauche et droite. Ainsi le premier ensemble de sous-options est "1:1". Le canal de droite devrait être rejeté, donc le second serait "0:0". N'importe quelles valeurs à 0 à la fin peuvent être omises, mais pour une facilité de compréhension nous les garderons.

Mettre ces options ensemble donne:

mplayer nom_fichier -af pan=2:1:1:0:0

Si le canal de droite est préféré à la place du gauche, les sous-options pour pan seront "2:0:0:1:1".

Exemple: canal de gauche dans deux enceintes raccourci

Comme avec channels, il y a un raccourci qui ne fonctionne que avec le canal de gauche:

mplayer nom_fichier -af pan=1:1

Puisque pan a seulement un canal d'entrée (l'autre canal étant rejeté), il n'y a seulement qu'un ensemble avec une sous-option, qui indique que le seul canal obtient 100% de lui-même.

Exemple: Mixage (downmixing) PCM 6-canaux

Le décodeur de MPlayer pour le PCM 6-canaux n'est pas capable de le mixer (downmixing). Voici une façon de mixager (downmixing) PCM en utilisant pan:

  1. Le nombre de canaux de sortie est 2, donc la première sous-option est "2".

  2. Avec six canaux d'entrée il y aura six ensembles d'options. Heureusement, puisque nous nous inquiétons seulement de la sortir des deux premiers canaux, nous devons seulement faire deux ensembles; les quatres ensembles restants peuvent être omis. Prenez garde que tous les fichiers audio multi-canaux n'aient le même ordre de canaux! Cette exemple démontre le mixage (downmixing) d'un fichier avec les même canaux que l'AC-3 5.1:

    0 - avant gauche
    1 - avant droit
    2 - arrière gauche
    3 - arrière droit
    4 - avant centre
    5 - caisson de basse (subwoofer)
    

    Le premier ensemble de sous-options liste les pourcentages du volume original, dans l'ordre, de ce que chaque canal de sortie devrait recevoir du canal gauche avant: "1:0". Le canal avant droit devrait aller vers la bonne sortie: "0:1". De même pour les canaux arrières: "1:0" et "0:1". Le canal centre va vers les deux canaux de sortie avec moitié de volume: "0.5:0.5", et le caisson de basse (subwoofer) va vers les deux avec le volume maxi: "1:1".

Mettez tout ça ensemble, pour:

mplayer 6-canaux.wav -af pan=2:1:0:0:1:1:0:0:1:0.5:0.5:1:1

Les pourcentages listés ci-dessus sont seulement un exemple approximatif. Vous êtes libres de les ajuster.

Exemple: Jouer de l'audio 5.1 sur de grosses enceintes sans un caisson de basse (subwoofer)

Si vous avez une paire d'enceintes frontales énormes, vous ne voudriez pas gaspiller de l'argent sur l'achat d'un caisson de basse (subwoofer) pour un système son 5.1 complet. Si vous utilisez -channels 5 pour demander que liba52 décode l'audio 5.1 en 5.0, le canal du caisson de basse (subwoofer) est simplement rejeté. Si vous voulez distribuer le canal du caisson de basse (subwoofer) vous-même vous avez besoin de mixer (downmix) manuellement avec pan:

  1. Puisque pan a besoin d'examiner chacun des six canaux, spécifiez -channels 6 ainsi liba52 les décode tous.

  2. pan sort vers seulement cinq canaux, la première sous-option est 5.

  3. Six canaux d'entrées et cinq de sortie signifient six ensembles de cinq sous-options.

    • Le canal avant gauche ne se réplique que vers lui-même: "1:0:0:0:0"

    • Pareil pour le canal avant droit: "0:1:0:0:0"

    • Pareil pour le canal arrière gauche: "0:0:1:0:0"

    • et aussi de même pour le canal arrière droit: "0:0:0:1:0"

    • Avant centre, aussi: "0:0:0:0:1"

    • Et maintenant que nous avons décidé quoi faire avec le caisson de basse, e.g. moitié vers l'avant droit et l autre vers l'avant gauche: "0.5:0.5:0:0:0"

Combinez toutes ces options pour obtenir:

mplayer dvd://1 -channels 6 -af pan=5:1:0:0:0:0:0:1:0:0:0:0:0:1:0:0:0:0:0:1:0:0:0:0:0:1:0.5:0.5:0:0:0

3.10.3. Ajustement Logiciel du Volume

Certaines pistes audio sont trop silencieuses pour être entendues confortablement sans amplification. Cela devient un problème quand votre équipement audio ne peut amplifier le signal à votre place. L'option -softvol oblige MPlayer à utiliser un mixeur interne. Vous pouvez alors utiliser les touches d'ajustement du volume (par défaut 9 et 0) pour atteindre des niveaux de volume plus important. Notez que cela ne dévie pas votre mixeur de carte son; MPlayer amplifie seulement le signal avant de l'envoyer vers votre carte son. L'exemple suivant est un bien pour débuter:

mplayer quiet-file -softvol -softvol-max 300

L'option -softvol-max spécifie le volume maximum de sortie permis en tant que pourcentage du volume original. Par exemple, -softvol-max 200 devra permettre l'ajustement du volume jusqu'à deux fois son niveau d'origine. Il est sûr d'indiquer une valeur importante avec -softvol-max; un volume plus important ne sera utilisé qu'à partir du moment où les touches d'ajustement du volume sont utilisées. Le seul désavantage d'une valeur large est que, puisque MPlayer ajuste le volume par un pourcentage du maximum, vous n'aurez pas un contrôle aussi précis en utilisant les touches d'ajustement du volume. Utilisez une valeur plus basse avec -softvol-max et/ou indiquez -volstep 1 si vous désirez une précision plus importante.

L'option -softvol fonmctionne en contrôlant le filtre audio volume. Si vous voulez jouer un fichier à un certain volume depuis le début vous pouvez spécifier volume manuellement:

mplayer fichier-tranquil -af volume=10

Cela jouera le fichier avec un gain de 10 décibel. Soyez prudent lors de l'utilisation du filtre volume - vous pourriez facilement abimer votre appareil auditif si vous utilisez un valeur trop grande. Commencez bas et travaillez de façon graduelle vers le haut jusqu'à être à même d'apprécier de combien il est nécessaire d'ajuster le volume. Aussi, si vous indiquez des valeurs excessivement haute, volume pourra avoir besoin de couper le signal pour éviter d'envoyer vos données de carte son qui sont en dehors de la bande permise; cela résultera en une distorsion de l'audio.