MPEGLAYER3WAVEFORMAT 구조체(mmreg.h)

[이 페이지와 연결된 기능인 DirectShow는 레거시 기능입니다. MediaPlayer, IMFMediaEngine 및 Media Foundation의 오디오/비디오 캡처로 대체되었습니다. 이러한 기능은 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드가 DirectShow 대신 Media Foundation에서 MediaPlayer, IMFMediaEngine오디오/비디오 캡처를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

MPEGLAYER3WAVEFORMAT 구조체는 MP3(MPEG Audio Layer-3) 오디오 형식을 설명합니다.

구문

typedef struct mpeglayer3waveformat_tag {
  WAVEFORMATEX wfx;
  WORD         wID;
  DWORD        fdwFlags;
  WORD         nBlockSize;
  WORD         nFramesPerBlock;
  WORD         nCodecDelay;
} MPEGLAYER3WAVEFORMAT;

멤버

wfx

기본 오디오 형식을 지정하는 WAVEFORMATEX 구조체입니다. wFormatTag 멤버는 WAVE_FORMAT_MPEGLAYER3 합니다. cbSize 멤버는 12 이상이어야 합니다. cbSize의 경우 Mmreg.h에 정의된 상수 MPEGLAYER3_WFX_EXTRA_BYTES 사용할 수 있습니다.

wID

이 구조체 멤버를 MPEGLAYER3_ID_MPEG 설정합니다.

fdwFlags

패딩을 사용하여 평균 비트 전송률을 샘플링 속도로 조정하는지 여부를 나타냅니다. 다음 값 중 하나를 사용합니다.

의미
MPEGLAYER3_FLAG_PADDING_ISO
0x00000000
지정된 평균 비트 전송률을 달성하기 위해 필요에 따라 안쪽 여백을 삽입합니다.
MPEGLAYER3_FLAG_PADDING_ON
0x00000001
항상 안쪽 여백을 삽입합니다. 평균 비트 전송률은 명시된 것보다 높을 수 있습니다.
MPEGLAYER3_FLAG_PADDING_OFF
0x00000002
패딩을 삽입하지 마세요. 평균 비트 전송률은 명시된 것보다 낮을 수 있습니다.

nBlockSize

블록 크기(바이트)입니다. 이 값은 프레임 길이(바이트 x nFramesPerBlock)와 같습니다. MP3 오디오의 경우 프레임 길이는 다음과 같이 계산됩니다. 144 x(비트 전송률/샘플 속도) + 패딩.

nFramesPerBlock

블록당 오디오 프레임 수입니다.

nCodecDelay

샘플의 인코더 지연. 이 값을 모르는 경우 이 구조체 멤버를 0으로 설정합니다.

요구 사항

   
머리글 mmreg.h

추가 정보

DirectShow 구조체