영어로 읽기

다음을 통해 공유


파일 싱크 기능 사용

[Windows Media Format 11 SDK 이 페이지와 연결된 기능은 레거시 기능입니다. 소스 리더싱크 라이터으로 대체되었습니다. 원본 판독기싱크 기록기 Windows 10 및 Windows 11에 최적화되었습니다. 가능한 경우 새 코드에서 Windows Media Format 11 SDK 대신 원본 판독기싱크 기록기 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

정상적인 상황에서는 IWMWriter::SetOutputFilename 메서드를 사용하여 기록기에 출력 파일 이름을 전달하기만 하면 기록기 개체가 파일을 디스크에 자동으로 씁니다. 이 경우 작성기는 실제로 디스크에 파일 쓰기를 처리하는 기록기 파일 싱크 개체를 만들고 제어합니다. 기록기 파일 싱크 개체는 기록기 개체에서 단일 파일로의 데이터 흐름을 제어합니다.

사용자 고유의 파일 싱크를 만들어 싱크에서 파일을 쓰는 방법을 더 자세히 제어할 수 있습니다. SetOutputFilename 호출에 대한 응답으로 작성자가 만든 기본 파일 싱크에도 액세스할 수 있습니다.

파일 싱크 만들기

파일 싱크를 만들어 작성기에 추가하려면 다음 단계를 수행합니다.

  1. WMCreateWriterFileSink 함수를 호출하여 새 싱크를 만듭니다.
  2. IWMWriterFileSink::Open호출하여 싱크의 파일 이름을 제공합니다.
  3. IWMWriterAdvanced::AddSink호출하여 파일 싱크를 작성기에 추가합니다.
  4. 일반적인 방식으로 쓰기를 수행합니다.
  5. 쓰기가 완료되면 싱크가 파일을 자동으로 닫습니다.

파일 싱크를 중지하고 다시 시작하기

쓰기 작업을 시작한 후 IWMWriterFileSink2::Stop호출하여 파일 싱크에 대한 쓰기를 중지할 수 있습니다.

싱크에 쓰기를 중지하려는 여러 가지 잠재적인 이유가 있습니다. 예를 들어 라이브 원본에서 기록하는 경우 일부 콘텐츠에만 관심이 있을 수 있습니다.

IWMWriterFileSink2::Start호출하여 파일 싱크에 쓰기를 다시 시작할 수 있습니다. 중지 및 시작 모두 프레젠테이션 시간을 사용하여 명령이 실행되는 시기를 대략적으로 제어합니다. IWMWriterFileSink3 메서드를 사용하여 시작 및 중지 시간을 보다 세밀하게 제어할 수 있습니다.

파일 싱크 닫기

일반적으로 파일 싱크는 자동으로 닫힙니다. 싱크에 쓰기를 마쳤지만 다른 싱크에 대한 쓰기 작업이 계속되는 경우 리소스를 절약하기 위해 싱크를 명시적으로 닫아야 합니다. 파일 싱크를 닫려면 IWMWriterFileSink2::Close호출합니다.

싱크 통계 가져오기

IWMWriterFileSink2::GetFileSizeIWMWriterFileSink2::GetFileDuration 각각 호출하여 열린 싱크의 파일 크기와 기간을 가져올 수 있습니다.

IWMWriterFileSink 인터페이스

IWMWriterFileSink2 인터페이스

IWMWriterFileSink3 인터페이스

기록기 파일 싱크 개체

ASF 파일 작성