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

# ACP_MESSAGE_COMMAND_COMPLETED

> ACP_MESSAGE_COMMAND_COMPLETED

# ACP\_MESSAGE\_COMMAND\_COMPLETED

An ACP command has completed.

## Syntax

```cpp theme={null}
typedef struct ACP_MESSAGE_COMMAND_COMPLETED {  
    UINT32 commandType;  
    UINT64 commandId;  
    UINT32 audioFrame;  
} ACP_MESSAGE_COMMAND_COMPLETED  
```

### Members

*commandType*\
Type: UINT32

Type of the completed command.

*commandId*\
Type: UINT64

ID of the completed command. It is a UINT64 to support passing a pointer as the command ID.

*audioFrame*\
Type: UINT32

The audio frame at the moment the command was completed.

## Remarks

This structure is used in the [ACP\_MESSAGE\_TYPE](/reference/audio/acphal/enums/acp_message_type) enumeration. It is also used in the `ACP_MESSAGE_TYPE_AUDIO_FRAME_START` message. The message indicates that an ACP command is completed. Notification occurs only if the command has a non-zero `commandId`.

## Requirements

**Header:** acphal.h

**Supported platforms:** XBOX One family consoles and XBOX Series consoles

## See also

[ACP\_MESSAGE\_TYPE](/reference/audio/acphal/enums/acp_message_type)\
[AcpHal](/reference/audio/acphal/acphal_members)


## Related topics

- [ACP_MESSAGE](/reference/audio/acphal/structs/acp_message.md)
- [AcpHal](/reference/audio/acphal/acphal_members.md)
- [ACP_COMMAND_MESSAGE](/reference/audio/acphal/structs/acp_command_message.md)
- [ACP_MESSAGE_FLOWGRAPH_COMPLETED](/reference/audio/acphal/structs/acp_message_flowgraph_completed.md)
- [ACP_MESSAGE_SHAPE_COMMAND_BLOCKED](/reference/audio/acphal/structs/acp_message_shape_command_blocked.md)
