> ## 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.

# PIXBeginCapture

> PIXBeginCapture

# PIXBeginCapture

Démarre une capture de minutage PIX contrôlée par programmation.

## Syntaxe

```cpp theme={null}
HRESULT PIXBeginCapture(  
         DWORD captureFlags,  
         const PPIXCaptureParameters captureParameters  
)  
```

### Paramètres

*captureFlags*   \
Type : DWORD

Indicateur précisant le type de capture à effectuer. Un seul indicateur de capture peut être transmis à la fois à `PIXBeginCapture`.

*captureParameters*   \_In\_opt\_\
Type : PPIXCaptureParameters

Pour les captures de minutage, transmettez un pointeur vers la structure `TimingCaptureParameters`, ou un pointeur vers l'union [PIXCaptureParameters](/fr/reference/tools/pix3/structs/pixcaptureparameters), qui contient la structure `TimingCaptureParameters`.

### Valeur de retour

Type : HRESULT

Indique si la capture a été lancée avec succès. S\_FALSE est retourné en cas de réussite. Une seule capture peut être en cours d'exécution à la fois. Si `PIXBeginCapture` est appelée alors qu'une autre capture est en cours d'exécution, E\_PENDING est retourné et l'appel n'a aucun effet.

#### Indicateurs

| Indicateur | Valeur | Description |
| - | - | - |
| PIX\_CAPTURE\_TIMING | (1 \<\< 0) | Minutage système. |
| PIX\_CAPTURE\_GPU | (1 \<\< 1) | Capture toutes les commandes envoyées au GPU ainsi que leurs entrées afin de pouvoir les relire et les analyser. |
| PIX\_CAPTURE\_FUNCTION\_SUMMARY | (1 \<\< 2) | Une capture de résumé des fonctions a été lancée à partir de l'onglet **Home**. |
| PIX\_CAPTURE\_FUNCTION\_DETAILS | (1 \<\< 3) | Une demande de détails supplémentaires sur les fonctions a été lancée à l'aide du bouton **Capture Additional Calls** à partir d'une capture de résumé des fonctions ou d'une capture de graphe des appels. |
| PIX\_CAPTURE\_CALLGRAPH | (1 \<\< 4) | Une capture de graphe des appels a été lancée à partir de PIX ou par programmation en appelant `PIXBeginCapture`. |
| PIX\_CAPTURE\_INSTRUCTION\_TRACE | (1 \<\< 5) | Une capture de trace des instructions du processeur est en cours. |
| PIX\_CAPTURE\_SYSTEM\_MONITOR\_COUNTERS | (1 \<\< 6) | Compteurs du moniteur système. |
| PIX\_CAPTURE\_VIDEO | (1 \<\< 7) | Lecture vidéo. |
| PIX\_CAPTURE\_AUDIO | (1 \<\< 8) | Lecture audio. |
| PIX\_CAPTURE\_GPU\_TRACE | (1 \<\< 9) | Capture les compteurs SPM (Streaming Performance Monitor) du GPU et les données SQTT (Shader Queue Thread Tracing) de presque tous les blocs du GPU. |
| PIX\_CAPTURE\_RESERVED | (1 \<\< 15) | Indicateur d'espace réservé utilisé en interne par PIX pour des scénarios de capture futurs ou spécialisés. |

<a id="remarksSection" />

## Remarques

Cette fonction lance une capture PIX à partir du code du titre. `PIXBeginCapture` ne peut actuellement être utilisée que pour effectuer une [capture de minutage (rubrique sous NDA)](/fr/tools/tools-console/pix/new-timing-captures).

`PIXBeginCapture` stocke les données de capture dans la mémoire des outils sur la console.  La quantité de mémoire des outils mise à la disposition de la capture est spécifiée en définissant le champ `MaximumToolingMemorySizeMb` de la structure [PIXCaptureParameters](/fr/reference/tools/pix3/structs/pixcaptureparameters).

Les captures de minutage par programmation peuvent être effectuées dans l'un de deux modes, définis par la valeur de l'énumération `PIXCaptureStorage` dans la structure [PIXCaptureParameters](/fr/reference/tools/pix3/structs/pixcaptureparameters).  Lorsque `PIXCaptureStorage` a la valeur *Memory*, `PIXBeginCapture` remplit la mémoire des outils disponible, puis ignore toutes les nouvelles données reçues.  Lorsque `PIXCaptureStorage` a la valeur *MemoryCircular*, `PIXBeginCapture` utilise la mémoire des outils comme une mémoire tampon circulaire.  La capture s'exécute jusqu'à ce que la mémoire des outils soit pleine, mais au lieu d'arrêter la capture, les données les plus anciennes sont supprimées pour faire de la place aux nouvelles données.  La capture continue de s'exécuter.  Les captures *MemoryCircular* sont conçues pour s'exécuter sur de longues périodes sans épuiser la mémoire des outils disponible sur la console.

Les captures de minutage effectuées à l'aide de `PIXBeginCapture` doivent être copiées sur le PC et converties en fichier .xpix avant de pouvoir être affichées dans PIX.  Consultez [Ouverture des captures de minutage par programmation (rubrique sous NDA)](/fr/tools/tools-console/pix/open-offline-timing-captures) pour obtenir une description des étapes nécessaires à l'affichage d'une capture par programmation dans PIX.

Utilisez [PIXEndCapture](/fr/reference/tools/pix3/functions/pixendcapture) pour arrêter une capture PIX à partir du code du titre.

```cpp theme={null}
//
//  timing capture
//
PIXCaptureParameters captureParams = {};

captureParams.TimingCaptureParameters.CaptureGpuTiming = TRUE;
captureParams.TimingCaptureParameters.CaptureCallstacks = TRUE;
captureParams.TimingCaptureParameters.CaptureCpuSamples = TRUE;
captureParams.TimingCaptureParameters.CpuSamplesPerSecond = 4000;

captureParams.TimingCaptureParameters.CaptureStorage = PIXCaptureParameters::Memory;
captureParams.TimingCaptureParameters.FileName = wstrFilename;
captureParams.TimingCaptureParameters.MaximumToolingMemorySizeMb = 4096;

XSF_ERROR_IF_FAILED(PIXBeginCapture(PIX_CAPTURE_TIMING, &captureParams));

```

## Configuration requise

**En-tête :** pix3.h

**Bibliothèque :** pixevt.lib

**Plateformes prises en charge :** consoles de la famille XBOX One et consoles XBOX Series

## Documentation conceptuelle

* [Analyse des performances du processeur (sommaire)](/fr/tools/tools-console/pix/cpu-performance)

## Voir aussi

[PIXEndCapture](/fr/reference/tools/pix3/functions/pixendcapture)\
[PIXCaptureParameters](/fr/reference/tools/pix3/structs/pixcaptureparameters)\
[PIX3](/fr/reference/tools/pix3/pix3_members)\
[PIX (rubrique sous NDA)](/fr/tools/tools-console/pix/pix)


## Related topics

- [PIXBeginCapture](/reference/tools/pix3/functions/pixbegincapture.md)
- [PIXEndCapture](/reference/tools/pix3/functions/pixendcapture.md)
- [PIXCaptureParameters](/reference/tools/pix3/structs/pixcaptureparameters.md)
- [PIXGetCaptureState](/reference/tools/pix3/functions/pixgetcapturestate.md)
