스트림에서 읽기

[AVIFile 함수 및 매크로 이 페이지와 연결된 기능은 레거시 기능입니다. 원본 판독기는에 의해 대체되었습니다. 원본 판독기 Windows 10 및 Windows 11에 최적화되었습니다. 가능한 경우 새 코드에서 AVIFile 함수 및 매크로 대신 원본 판독기 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

AVIStreamInfo 함수를 사용하여 열린 스트림에 대한 정보를 검색할 수 있습니다. 이 함수는 AVISTREAMINFO 구조체를 스트림의 데이터 형식, 스트림 데이터를 작성할 때 사용되는 압축 방법, 제안된 버퍼 크기, 재생 속도 및 스트림의 텍스트 설명과 같은 정보로 채웁니다.

AVISTREAMINFO 구조체의 일부 멤버도 AVIFILEINFO 구조체에 있습니다. AVIFILEINFO 구조체의 정보는 전체 파일에 적용됩니다. AVISTREAMINFO 구조의 정보는 액세스된 스트림과 관련이 있으며 AVIFILEINFO 구조의 정보보다 우선합니다.

스트림에 연결된 추가 정보가 있는 경우 AVIStreamReadData 함수를 사용하여 이 정보를 검색할 수 있습니다. 이 함수는 애플리케이션 제공 버퍼의 정보를 반환합니다. 추가 스트림 정보에는 스트림에 사용되는 압축 및 압축 해제 메서드에 대한 구성 설정이 포함될 수 있습니다. AVIStreamDataSize 매크로를 사용하여 필요한 버퍼 크기를 가져올 수 있습니다.

AVIStreamReadFormat 함수를 사용하여 스트림에 대한 서식 정보를 검색할 수 있습니다. 이 함수는 애플리케이션 제공 버퍼에서 스트림별 구조를 반환합니다. 비디오 스트림의 경우 버퍼는 BITMAPINFO 구조에 서식 정보를 포함합니다. 오디오 스트림의 경우 버퍼는 WAVEFORMATEX 또는 PCMWAVEFORMAT 구조에 서식 정보를 포함합니다. 다른 스트림 형식의 경우 스트림 처리기는 스트림과 관련된 정보를 반환합니다. AVIStreamReadFormat 사용하고 NULL 버퍼 주소를 지정하거나 AVIStreamFormatSize 매크로를 사용하여 필요한 버퍼 크기를 확인할 수 있습니다.

AVIStreamRead 함수를 사용하여 스트림에서 멀티미디어 콘텐츠를 검색할 수 있습니다. 이 함수는 스트림에서 애플리케이션 제공 버퍼로 원시 데이터를 복사합니다. 비디오 스트림의 경우 이 함수는 프레임 콘텐츠를 구성하는 비트맵 이미지를 검색합니다. 오디오 스트림의 경우 이 함수는 사운드 콘텐츠를 구성하는 파형 오디오 샘플을 검색합니다. AVIStreamRead 사용하고 NULL 버퍼 주소를 지정하거나 AVIStreamSampleSize 매크로를 사용하여 필요한 버퍼 크기를 확인할 수 있습니다.

일부 AVI 스트림 처리기는 소프트웨어 및 하드웨어 초기화 또는 조정과 관련된 지연을 발생합니다. AVIStreamBeginStreaming 함수를 사용하여 데이터 스트리밍을 준비하도록 이러한 처리기를 알릴 수 있습니다. 이 함수를 사용하면 스트림 처리기가 필요한 리소스를 할당하고 초기화할 수 있습니다. 스트리밍이 종료될 때 이러한 처리기를 알리려면 AVIStreamEndStreaming 함수를 사용합니다. 이 함수를 사용하면 스트림 처리기에서 AVIStreamBeginStreaming할당한 리소스의 할당을 취소할 수 있습니다.

AVIStreamRead 함수는 압축 해제 서비스를 제공하지 않습니다. 오디오 스트림 압축 및 압축 해제에 대한 자세한 내용은 오디오 압축 관리자 참조하세요. 비디오 스트림 압축 및 압축 해제에 대한 자세한 내용은 Video Compression Manager참조하세요. 비디오 스트림에서 개별 프레임을 압축 및 압축 해제하는 방법에 대한 자세한 내용은 스트림 압축된 비디오 데이터 작업참조하세요.

스트림 작업