IMFASFSplitter::P arseData 메서드(wmcontainer.h)
처리를 위해 ASF(패킷화된 고급 시스템 형식) 데이터를 ASF 분할기로 보냅니다.
구문
HRESULT ParseData(
[in] IMFMediaBuffer *pIBuffer,
[in] DWORD cbBufferOffset,
[in] DWORD cbLength
);
매개 변수
[in] pIBuffer
구문 분석할 데이터를 포함하는 버퍼 개체의 IMFMediaBuffer 인터페이스에 대한 포인터입니다.
[in] cbBufferOffset
분할자 구문 분석을 시작해야 하는 데이터 버퍼의 오프셋입니다. 이 값은 일반적으로 0으로 설정됩니다.
[in] cbLength
구문 분석할 데이터의 길이(바이트)입니다. 이 값은 cbBufferOffset에 지정된 오프셋에서 측정됩니다. 버퍼의 끝까지 처리하려면 0으로 설정합니다.
반환 값
이 메서드는 HRESULT를 반환합니다. 가능한 값에는 다음 표에 있는 값이 포함되지만, 이에 국한되는 것은 아닙니다.
반환 코드 | Description |
---|---|
|
메서드가 성공했습니다. |
|
pIBuffer 매개 변수는 NULL입니다.
cbBufferOffset의 지정된 오프셋 값이 버퍼의 길이보다 큽니다. cbBufferOffset 및 cbLength의 총 값이 버퍼의 길이보다 큽니다. |
|
IMFASFSplitter::Initialize 메서드가 호출되지 않았거나 호출에 실패했습니다. |
|
현재 분할자에서 더 많은 입력을 처리할 수 없습니다. |
설명
이 메서드를 사용하여 데이터를 구문 분석한 후에 는 IMFASFSplitter::GetNextSample 을 호출하여 구문 분석된 미디어 샘플을 검색해야 합니다.
ASF 데이터에 가변 크기의 패킷이 포함된 경우 버퍼의 MFASFSPLITTER_PACKET_BOUNDARY 특성을 설정하여 샘플 경계를 나타내야 하며 버퍼는 여러 패킷에 걸쳐 있지 않습니다.
메서드가 ME_E_NOTACCEPTING 반환하는 경우 GetNextSample 을 호출하여 출력 샘플을 얻거나 IMFASFSplitter::Flush 를 호출하여 분할기를 지웁니다.
분할은 입력 버퍼에 대한 참조 수를 보유할 수 있습니다. 따라서 이 메서드를 호출한 후 버퍼의 유효한 데이터를 기록하지 마세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | wmcontainer.h |
라이브러리 | Mfuuid.lib |