비디오 스트림 중단의 원인 확인

비디오 스트림 중단에 대한 두 가지 기본 원인은 다음과 같습니다.

  • 중단. 드라이버에서 사용자 모드 스레드 또는 커널 모드 스레드를 해제하지 않습니다.

  • 실속. 이는 스트리밍 경로의 구성 요소에 문제가 발생한 결과입니다. 다음과 같은 몇 가지 가능한 원인이 있습니다.

    • 캡처 드라이버가 패킷을 완료하지 않습니다. 이 경우 드라이버 구성 요소 또는 하드웨어가 중단의 원인일 수 있습니다.
    • 캡처 드라이버에 완료할 패킷이 없습니다. 이 경우 버퍼가 코덱 또는 다른 다운스트림 구성 요소에서 중단될 수 있습니다.

문제를 재현할 수 있는 경우 이 시점에서 디버거를 연결하여 실제 원인을 확인합니다.

문제가 중단인지 확인하려면

  1. 애플리케이션에 사용자 모드 디버거를 연결하고 차단된 사용자 모드 스레드를 찾습니다.

  2. 애플리케이션이 응답하는지 여부를 확인합니다. 그래프를 일시 중지할 수 있나요? 그래프를 중지할 수 있나요? 그래프가 중지되고 다시 시작되는 경우 스트리밍이 다시 시작됩니까?

  3. 애플리케이션이 응답하지 않는 경우 작업 관리자를 사용하여 작업을 종료합니다. 이 오류가 발생하면 커널 모드가 중단됩니다.

문제가 중단인지 확인하려면

  1. 그래프에 샘플이 있는 위치를 결정합니다. 로컬로 또는 커널 모드 디버깅 세션에서 수행할 수 있습니다.

  2. 샘플이 다운스트림으로 흐르는지 여부를 확인합니다. GraphEdit에서 버그를 재현할 수 있는 경우 그래프에 중간 필터를 배치하여 샘플을 표시합니다.

  3. 처리 루틴이 호출되는지 확인합니다. 이 작업은 커널 모드 디버거를 연결하고 이 루틴에서 중단점을 설정하여 수행할 수 있습니다.