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

# XWMAEncoder

> XWMAEncoder

입력 버퍼를 xWMA 데이터로 인코딩합니다.

<a id="syntaxSection" />

## 구문

```cpp theme={null}
HRESULT XWMAEncoder(
         const BYTE *pInputBuffer,
         DWORD inputBufferSize,
         const WAVEFORMATEX *pInputFormat,
         DWORD outputBitrate,
         BYTE **ppEncodedBuffer,
         DWORD *pEncodedBufferSize,
         WAVEFORMATEX **ppEncodedBufferFormat,
         DWORD *pEncodedBufferFormatSize,
         DWORD **ppDecodedPacketCumulativeBytes,
         DWORD *pDecodedPacketCumulativeBytesSize)  
```

<a id="ID4EG" />

### 매개변수

*pInputBuffer*
유형: BYTE \*

PCM 데이터를 포함하는 입력 버퍼에 대한 포인터. 최소한 하나의 프레임을 포함해야 합니다.

*inputBufferSize*
유형: DWORD

입력 버퍼 크기(바이트 단위).

*pInputFormat*
유형: WAVEFORMATEX \*

입력 버퍼 형식.

*outputBitrate*
유형: DWORD

요청되는 비트 레이트를 지정합니다. 20000, 32000, 48000, 64000, 96000, 160000, 192000 중 하나여야 합니다.

*ppEncodedBuffer*
유형: BYTE \*\*

인코딩된 데이터에 대한 포인터에 대한 포인터.

*pEncodedBufferSize*
유형: DWORD \*

인코딩된 데이터 크기(바이트 단위)를 포함하는 DWORD에 대한 포인터.

*ppEncodedBufferFormat*
유형: WAVEFORMATEX \*\*

출력 형식 구조에 대한 포인터에 대한 포인터.

*pEncodedBufferFormatSize*
유형: DWORD \*

출력 형식 구조 크기를 포함하는 DWORD에 대한 포인터.

*ppDecodedPacketCumulativeBytes*
유형: DWORD \*\*

디코드된 패킷 누적 데이터 크기 배열(해제하려면 free \[] 사용). 각 요소는 해당 WMA 패킷이 순서대로 디코드될 때 누적된 바이트 수이며 PacketCount 요소를 가져야 합니다. PacketCount는 XAUDIO2\_BUFFER\_WMA 구조에 설정됩니다.

*pDecodedPacketCumulativeBytesSize*
유형: DWORD \*

디코드된 패킷 누적 데이터의 크기(바이트 단위). 패킷 수 = \*pDecodedPacketCumulativeBytesSize / sizeof(DWORD);

<a id="ID4EO" />

### 반환 값

유형: HRESULT

성공 시 S\_OK를 반환하고, 그렇지 않으면 다음 표의 오류 코드를 반환합니다.

| 오류 코드                               | 설명                                                                         |
| ----------------------------------- | -------------------------------------------------------------------------- |
| XWMA\_E\_UNSUPPORTED\_FORMATTAG     | 형식 태그는 WAVE\_FORMAT\_PCM 또는 WAVE\_FORMAT\_IEEE\_FLOAT여야 합니다.               |
| XWMA\_E\_UNSUPPORTED\_FRAMERATE     | nSamplesPerSec는 1kHz에서 200kHz 사이여야 합니다.                                    |
| XWMA\_E\_UNSUPPORTED\_CHANNELS      | nChannels는 1, 2, 또는 6이어야 합니다.                                              |
| XWMA\_E\_UNSUPPORTED\_BITSPERSAMPLE | wBitsPerSample은 정수 입력 데이터의 경우 8, 16, 또는 24, 부동 소수점 데이터의 경우 32여야 합니다.       |
| XWMA\_E\_UNSUPPORTED\_BITRATE       | 비트 레이트는 20Kbps, 32Kbps, 48Kbps, 64Kbps, 96Kbps, 160Kbps, 또는 192Kbps여야 합니다. |

<a id="remarks" />

## 비고

다음 표는 샘플 레이트와 채널 수당 네이티브로 지원되는 비트 레이트를 보여줍니다.

\| 입력| 출력 옵션|
\| --- | --- | --- | --- |
\| 22050Hz 모노| 20000|
\| 22050Hz 스테레오| 32000|
\| 32000Hz 모노| 20000|
\| 32000Hz 스테레오| 32000, 48000|
\| 44100Hz 모노| 32000, 48000|
\| 44100Hz 스테레오| 32000, 48000, 96000, 192000|
\| 44100Hz 5.1| 96000, 192000|
\| 48000Hz 스테레오| 48000, 64000, 96000, 160000, 192000|
\| 48000Hz 5.1| 48000, 192000|

<a id="requirements" />

## 요구사항

**Header:** xwmaencoder.h

**Library:** xwmaencoder.lib

## 함께 보기

[xWMA 명령줄 인코더](/build/console-features/audio/tools/xwmaencode-tools)


## Related topics

- [Xwmaencoder 함수](/ko/build/console-features/audio/tools/xwmaencoder/tech-xwmaencoder-nativereference-funcs.md)
- [xWMA 개요](/ko/build/console-features/audio/overviews/xwma-overview.md)
- [xWMA 인코더 참조 정보](/ko/build/console-features/audio/tools/xwmaencoder/atoc-xwmaencoder.md)
- [xWMA 인코더 라이브러리 및 명령줄 도구](/ko/build/console-features/audio/tools/xwmaencoder/index.md)
- [XMA2 인코더 라이브러리 및 명령줄 도구](/ko/build/console-features/audio/tools/xma2encoder/index.md)
