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

# game_chat_stream_state_change

> game_chat_stream_state_change

# game\_chat\_stream\_state\_change

Uma representação de estrutura base genérica de um evento para fluxos de manipulação de áudio.

<a id="syntaxSection" />

## Sintaxe

```cpp theme={null}
typedef struct game_chat_stream_state_change {  
    game_chat_stream_state_change_type state_change_type;  
    union  
    {  
        pre_encode_audio_stream* pre_encode_audio_stream;  
        post_decode_audio_source_stream* post_decode_audio_source_stream;  
        post_decode_audio_sink_stream* post_decode_audio_sink_stream;  
    };  
} game_chat_stream_state_change  
```

<a id="membersSection" />

### Membros

*state\_change\_type*\
Tipo: [game\_chat\_stream\_state\_change\_type](/pt-BR/reference/chat/gamechat2/enums/game_chat_stream_state_change_type)

O tipo específico da alteração de estado de fluxo representada. Use esse campo para determinar qual tipo de campo de fluxo deve ser lido da união de fluxos.

*pre\_encode\_audio\_stream*\
Tipo: [pre\_encode\_audio\_stream](/pt-BR/reference/chat/gamechat2/classes/pre_encode_audio_stream/pre_encode_audio_stream)\*

Um ponteiro para o fluxo de áudio de pré-codificação ao qual a alteração de estado de fluxo se aplica.

*post\_decode\_audio\_source\_stream*\
Tipo: [post\_decode\_audio\_source\_stream](/pt-BR/reference/chat/gamechat2/classes/post_decode_audio_source_stream/post_decode_audio_source_stream)\*

Um ponteiro para o fluxo de áudio de pós-decodificação ao qual a alteração de estado de fluxo se aplica.

*post\_decode\_audio\_sink\_stream*\
Tipo: [post\_decode\_audio\_sink\_stream](/pt-BR/reference/chat/gamechat2/classes/post_decode_audio_sink_stream/post_decode_audio_sink_stream)\*

Um ponteiro para o fluxo de coletor de áudio de pós-decodificação ao qual a alteração de estado de fluxo se aplica.

<a id="remarksSection" />

## Comentários

Essa estrutura representa uma alteração de estado de fluxo, como a criação de um fluxo de áudio de pré-codificação. As estruturas `game_chat_stream_state_change` são relatadas pelo método [chat\_manager::start\_processing\_stream\_state\_changes](/pt-BR/reference/chat/gamechat2/classes/chat_manager/methods/chat_manager_start_processing_stream_state_changes). O aplicativo trata as alterações de estado de fluxo representadas e, em seguida, as devolve prontamente chamando o método [chat\_manager::finish\_processing\_stream\_state\_changes](/pt-BR/reference/chat/gamechat2/classes/chat_manager/methods/chat_manager_finish_processing_stream_state_changes).

O campo *state\_change\_type* indica o tipo de alteração de estado que ocorreu. Seu aplicativo deve usar o valor desse campo para determinar o tipo de fluxo ao qual a alteração de estado de fluxo se aplica e, em seguida, recuperar o ponteiro correspondente desse fluxo na união desta estrutura.

<Note>As alterações de estado de fluxo só ocorrem se a manipulação de áudio local ou remota estiver habilitada quando [chat\_manager::initialize](/pt-BR/reference/chat/gamechat2/classes/chat_manager/methods/chat_manager_initialize) for chamado. Para obter mais informações sobre como habilitar a manipulação de áudio, confira [Manipulação de áudio em tempo real](/pt-BR/services/xbox-services/multiplayer/chat/game-chat2/real-time-audio-manipulation).</Note>

<a id="array" />

### game\_chat\_stream\_state\_change\_array

O tipo `game_chat_stream_state_change_array` é uma matriz constante de ponteiros `game_chat_stream_state_change`. Esse tipo é fornecido por conveniência e é usado com os métodos `chat_manager::start_processing_stream_state_changes` e `chat_manager::finish_processing_stream_state_changes`.

```cpp theme={null}
typedef class game_chat_stream_state_change * const * game_chat_stream_state_change_array;
```

<a id="requirementsSection" />

## Requisitos

**Cabeçalho:** GameChat2.h

**Plataformas com suporte:** Windows, consoles da família XBOX One e consoles XBOX Series

<a id="seealsoSection" />

## Documentação conceitual

* [Usando a API C++ do Game Chat 2](/pt-BR/services/xbox-services/multiplayer/chat/game-chat2/using-game-chat-2)
* [Manipulação de áudio em tempo real](/pt-BR/services/xbox-services/multiplayer/chat/game-chat2/real-time-audio-manipulation)

## Confira também

[Introdução ao Game Chat 2](/pt-BR/services/xbox-services/multiplayer/chat/game-chat2/game-chat-2-intro)\
[chat\_manager](/pt-BR/reference/chat/gamechat2/classes/chat_manager/chat_manager)\
[Membros do GameChat2](/pt-BR/reference/chat/gamechat2/gamechat2_members)


## Related topics

- [game_chat_stream_state_change_type](/pt-BR/reference/chat/gamechat2/enums/game_chat_stream_state_change_type.md)
- [chat_manager::finish_processing_stream_state_changes](/pt-BR/reference/chat/gamechat2/classes/chat_manager/methods/chat_manager_finish_processing_stream_state_changes.md)
- [game_chat_state_change_type](/pt-BR/reference/chat/gamechat2/enums/game_chat_state_change_type.md)
- [chat_manager::start_processing_stream_state_changes](/pt-BR/reference/chat/gamechat2/classes/chat_manager/methods/chat_manager_start_processing_stream_state_changes.md)
- [Manipulação de áudio em tempo real](/pt-BR/services/xbox-services/multiplayer/chat/game-chat2/real-time-audio-manipulation.md)
