MFCreateADTSMediaSink 함수(mfidl.h)
ADTS(오디오 데이터 전송 스트림) 미디어 싱크의 instance 만듭니다.
구문
HRESULT MFCreateADTSMediaSink(
[in] IMFByteStream *pTargetByteStream,
[in] IMFMediaType *pAudioMediaType,
[out] IMFMediaSink **ppMediaSink
);
매개 변수
[in] pTargetByteStream
바이트 스트림의 IMFByteStream 인터페이스에 대한 포인터입니다. 미디어 싱크는 이 바이트 스트림에 ADTS 스트림을 씁니다. 바이트 스트림은 쓸 수 있어야 합니다.
[in] pAudioMediaType
IMFMediaType 인터페이스에 대한 포인터입니다. 이 매개 변수는 ADTS 스트림의 미디어 형식을 지정합니다. 미디어 형식에는 다음 특성이 포함되어야 합니다.
attribute | 값 |
---|---|
MF_MT_MAJOR_TYPE | MFMediaType_Audio |
MF_MT_SUBTYPE | MFAudioFormat_AAC |
MF_MT_AAC_PAYLOAD_TYPE | 0(원시 AAC) 또는 1(ADTS) |
[out] ppMediaSink
IMFMediaSink 인터페이스에 대한 포인터를 받습니다. 호출자는 인터페이스를 해제해야 합니다.
반환 값
이 함수가 성공하면 S_OK 반환합니다. 그러지 않으면 HRESULT 오류 코드를 반환합니다.
설명
ADTS 미디어 싱크는 AAC(고급 오디오 코딩) 오디오 패킷을 ADTS 스트림으로 변환합니다. 이 미디어 싱크의 기본 용도는 네트워크를 통해 ADTS를 스트리밍하는 것입니다. 출력은 오디오 파일이 아니라 ADTS 헤더가 있는 오디오 프레임 스트림입니다.
미디어 싱크는 원시 AAC 프레임(MF_MT_AAC_PAYLOAD_TYPE = 0) 또는 ADTS 패킷(MF_MT_AAC_PAYLOAD_TYPE = 1)을 허용할 수 있습니다. 입력이 원시 AAC인 경우 미디어 싱크는 각 오디오 프레임의 시작 부분에 ADTS 헤더를 삽입합니다. 입력이 ADTS 패킷인 경우 미디어 싱크는 수정 없이 패킷을 바이트 스트림으로 전달합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | mfidl.h |
DLL | Mf.dll |