> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Outil d'encodage XMA2

> Outil d'encodage XMA2

L'outil d'encodage XMA2 en ligne de commande (XMA2Encode) convertit un ensemble de fichiers PCM (Pulse Code Modulation) au format XMA2, ou un fichier XMA2 au format PCM.

Cet outil peut être utilisé à la fois pour la XBOX 360 et la XBOX One. Pour la XBOX 360, vous pouvez utiliser la sortie de l'outil sans aucune modification. Pour la XBOX One, la table `seek` peut nécessiter une permutation d'octets. Le code permettant de le faire se trouve dans la section [Format XBOX One](#ID4E2DAC) de cette rubrique.

* [Utilisation de XMA2Encode](#ID4E1)
* [Format XBOX One](#ID4E2DAC)
* [Écriture de votre propre outil d'encodage XMA](#ID4EPEAC)

<a id="ID4E1" />

## Utilisation de XMA2Encode

Le code et le tableau suivants décrivent comment utiliser XMA2Encode.

| Colonne 1 |
| - |
| `XMA2Encode file [/TargetFile xmafile][/PCMOutputFile pcmfile][/DecodeToPCM pcmfile][/BlockSize][/Quality value][/FilterHighFrequencies][/LoopWholeFile][/UseLoopPoints][/Speaker pos][/MeasureTime][/Verbose][/Help]` |

| Option | Description |
| - | - |
| `file` | Spécifie le nom du fichier à convertir. Vous pouvez spécifier plusieurs paires fichier/position de haut-parleur : `XMA2ENCODE pcmfile [/Speaker pos ...] [pcmfile [/Speaker pos ...] ...] [options]`. Lorsque vous encodez plusieurs fichiers, XMA2Encode exige que les fichiers d'entrée soient soit tous monocanal, soit tous stéréo, le dernier flux étant mono ou stéréo selon le nombre de canaux encodés.<br /><br />**Remarque :** XMA2Encode prend uniquement en charge les fichiers audio au format PCM ou au format XMA2 (avec `/DecodeToPCM`). |
| `/TargetFile xmafile` | Encode vers `xmafile` (un seul fichier cible est autorisé). |
| `/PCMOutputFile pcmfile` | Décode le fichier XMA2 généré vers `pcmfile`. Lorsque vous utilisez cette option, l'outil génère deux fichiers de sortie : un fichier audio encodé en XMA2 et un fichier PCM, qui résulte du décodage du fichier XMA2 qui vient d'être créé. Le fichier PCM obtenu a la même qualité audio que le nouveau fichier XMA2. Vous pouvez ainsi prévisualiser la qualité du fichier XMA2 sur Windows. |
| `/DecodeToPCM pcmfile` | Décode un fichier XMA2 existant vers `pcmfile`. |
| `/BlockSize` | Spécifie la taille de bloc de compression XMA2 à utiliser (2 Ko à 8 190 Ko). La taille de bloc par défaut est de 64 Ko. |
| `/Quality value` | Spécifie le niveau de qualité de compression XMA2 à utiliser (1 à 100). La valeur de qualité par défaut est 60. |
| `/FilterHighFrequencies` | Filtre les hautes fréquences du fichier source. |
| `/LoopWholeFile` | Met en boucle l'intégralité du fichier, même si des points de boucle sont déjà présents. `LoopWholeFile` et `UseLoopPoints` s'excluent mutuellement. Si ni l'argument `LoopWholeFile` ni l'argument `UseLoopPoints` n'est spécifié, le fichier n'est pas mis en boucle, même si des points de boucle sont présents. |
| `/UseLoopPoints` | Utilise les points de boucle existants, s'ils sont présents ; sinon, le fichier n'est pas mis en boucle. `LoopWholeFile` et `UseLoopPoints` s'excluent mutuellement. Si ni l'argument `LoopWholeFile` ni l'argument `UseLoopPoints` n'est spécifié, le fichier n'est pas mis en boucle, même si des points de boucle sont présents. |
| `/Speaker pos` | Spécifie l'affectation de haut-parleur pour un canal du fichier source. Cette option doit suivre immédiatement le nom du fichier. `pos` peut être `L`, `R`, `C`, `LFE`, `LS`, `RS`, `LB` ou `RB`, où `L` = avant gauche, `R` = avant droit, `C` = avant centre, `LFE` = basses fréquences, `LS` = surround gauche, `RS` = surround droit, `LB` = arrière gauche et `RB` = arrière droit.<br /><br />**Remarque :** si un fichier d'entrée n'a pas de masque de canal, ou s'il a un masque de canal dont le nombre de bits définis ne correspond pas au nombre de canaux du fichier et qu'aucune affectation de haut-parleur n'est spécifiée avec l'option `Speaker`, le fichier XMA obtenu a un masque de canal de 0. |
| `/MeasureTime` | Affiche le temps consacré à l'encodage. |
| `/Verbose` | Active la sortie détaillée. |
| `/Help` | Affiche ces informations d'utilisation. |

<a id="remarks" />

### Remarques

Toutes les options peuvent être abrégées à leurs premières lettres.

Le tableau suivant répertorie les codes d'erreur que XMA2Encode peut afficher pour signaler des problèmes d'encodage.

| Code d'erreur | Description |
| - | - |
| 0x88890001 | Les points de boucle spécifiés ne sont pas valides. |
| 0x88890002 | Le format spécifié n'est pas valide. |
| 0x88890003 | Un paramètre est hors limites. |
| 0x88890004 | Une opération de lecture a échoué. |
| 0x88890005 | Une trame XMA n'était pas valide. |
| 0x88890006 | Une trame XMA était incomplète. |
| 0x88890007 | Le bit de bourrage était nul. |
| 0x88890008 | Une récupération de données a échoué. |

<a id="ID4E2DAC" />

## Format XBOX One

La sortie de XMA2Encode doit faire l'objet d'une permutation d'octets `ULONG` pour la XBOX One. Si l'entrée est un fichier .wav, la sortie peut être utilisée sans modification.

Pour permuter les octets de la table `seek`, utilisez les lignes de code suivantes.

```cpp theme={null}
for(UINT32 i = 0;(i < xmaformat->BlockCount);i++)
    {
       rgpXMASeekTable[i] = _byteswap_ulong(rgpXMASeekTable[i]);
    }  
```

Envisagez d'ajouter ces lignes de code à votre application pour tester la fonctionnalité, puis éventuellement d'écrire un outil distinct pour effectuer la permutation afin qu'aucun prétraitement ne soit requis de la part de votre application.

<a id="ID4EPEAC" />

## Écriture de votre propre outil d'encodage XMA

Il est possible d'écrire votre propre outil d'encodage à l'aide des méthodes définies dans *xmaencoder.h* et implémentées dans *xmaencoder.lib*. Par défaut, le fichier *xmaencoder.h* se trouve dans le dossier *C:\Program Files (x86)\Microsoft GDK\191100\GXDK\toolKit\include*. Par défaut, le fichier *xmaencoder.lib* se trouve dans le dossier *C:\Program Files (x86)\Microsoft GDK\191100\GXDK\toolKit\lib\amd64*.

La seule méthode disponible dans l'en-tête et la bibliothèque est [XAudio2XMAEncoder](/fr/build/console-features/audio/tools/xma2encoder/methods/xaudio2xmaencoder-xmaencoder-xbox-microsoft-m).

N'utilisez pas les méthodes `XMA2InMemoryEncoder` et `XMAInMemoryEncoder` (héritées) définies dans l'en-tête.

<a id="ID4EDFAC" />

## Dans cette section

[Référence de l'encodeur XMA2](/fr/build/console-features/audio/tools/xma2encoder/atoc-xmaencoder)
Décrit les fonctions disponibles dans *xmaencoder.lib*.

<a id="ID4EJFAC" />

## Voir aussi

[Vue d'ensemble de XMA2](/fr/build/console-features/audio/overviews/xma2-overview)


## Related topics

- [Vue d'ensemble de XMA2](/fr/build/console-features/audio/overviews/xma2-overview.md)
- [XAudio2XMAEncoder](/fr/build/console-features/audio/tools/xma2encoder/methods/xaudio2xmaencoder-xmaencoder-xbox-microsoft-m.md)
- [Bibliothèque et outil en ligne de commande d'encodage XMA2](/fr/build/console-features/audio/tools/xma2encoder/index.md)
- [Bibliothèque et outil en ligne de commande d'encodage xWMA](/fr/build/console-features/audio/tools/xwmaencoder/index.md)
- [Outils](/fr/build/console-features/audio/tools/index.md)
