다음을 통해 공유


사용자 지정 싱크 사용

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

특별한 작문 요구가 있는 경우, 자체적으로 작성 도구를 만들 수 있습니다. 작성자는 IWMWriterSink메서드를 호출하여 싱크와 단방향 통신을 유지합니다. 고유한 싱크를 만들려면 애플리케이션의 클래스에서 IWMWriterSink 인터페이스를 구현합니다. 이 프로세스는 Windows Media Format SDK의 개체에서 사용하는 다른 콜백 인터페이스를 구현하는 것과 매우 유사합니다. 콜백에 대한 자세한 내용은 콜백 메서드 사용하기을 참조하세요.

IWMWriterSink::OnHeader 수신된 버퍼는 파일의 시작 부분에 기록되어야 하며, OnDataUnit 수신된 모든 버퍼는 순차적으로 작성되어야 합니다. OnHeader 처음에 호출되지만 다른 시간에도 호출될 수 있으며, 가능한 경우 원래 헤더를 덮어써야 합니다. 애플리케이션이 어떤 이유로든 이 작업을 수행할 수 없는 경우 후속 OnHeader 호출을 무시하기만 하면 됩니다.

사용자 지정 싱크는 IWMStatusCallback::OnStatus 콜백 메서드를 호출하여 쓰기 애플리케이션에 상태를 전달해야 합니다. 싱크를 COM 개체로 구현하는 경우 IWMRegisterCallback 인터페이스를 노출할 수 있습니다. 그러나 OnStatus 콜백의 주소를 싱크에 전달하고 원하는 방식으로 컨텍스트를 설정할 수 있습니다.

Writer Sink과 작업하기