성공적인 비디오 미리보기만으로는 의도한 작동 모드에서 안정적인 원본 이미지 캡처가 이루어졌다는 증거가 충분하지 않습니다. 디스플레이 소프트웨어는 낮은 해상도, 압축된 스트림, 건너뛴 프레임 또는 다른 버퍼링 정책을 사용할 수 있습니다. 장치, 전송, 드라이버 또는 애플리케이션 대기열에서 문제를 찾기 전에 작동 모드와 측정 경계를 기록하고 이를 일정하게 유지하십시오.

프레임이 손실되는 레이어 정의

위치 관찰 가능한 필드 보존의 구별
장치 및 운송 장치 프레임 식별자, 상태 및 전송 오류 생성되지 않음, 수신되지 않음, 유효하지 않음은 서로 다른 이벤트입니다.
호스트 리셉션 수신 개수, 유효한 길이, 형식 및 오류 수신된 버퍼가 반드시 유효한 이미지는 아닙니다.
어댑터 및 큐 큐에 넣기, 큐에서 빼기, 대기, 점유 및 삭제 이유 의도적인 샘플링과 의도하지 않은 손실에는 별도의 카운터가 필요합니다.
처리 및 출력 시작, 완료, 시간 초과 및 결과 식별자 누락된 결과는 실패 또는 의도적인 건너뛰기를 반영할 수 있습니다.

연속적인 장치 프레임 시퀀스 번호가 누락된 경우 재연결, 재설정 및 카운터 순환(번호 지정 범위의 시작 부분으로 돌아가기)도 확인하십시오. 호스트 생성 프레임 식별자는 호스트가 수신한 시퀀스를 설명합니다. 장치가 프레임을 잃지 않았다는 것을 독립적으로 확인할 수는 없습니다.

원시 프레임으로 최소한의 재현 설정

카메라, 펌웨어, 케이블, 호스트, 드라이버, SDK, 해상도, 형식 및 프레임 속도를 기록합니다. 원시 프레임을 수신하고 확인하는 프로그램으로 시작하십시오. 오류와 리소스를 비교하면서 변환, 추론, 저장 및 표시를 별도로 추가합니다. 다양한 모드를 직접 비교하는 대신 비즈니스 애플리케이션과 별도로 공급업체 사례를 기록하세요.

버퍼 및 소유권 확인

SDK 버퍼가 언제 읽을 수 있는지, 언제 반환해야 하는지, 콜백이 장기 소유권을 허용하는지 여부를 정의합니다. 대기열 길이와 대기 시간을 기록합니다. 오래된 프레임을 폐기할 수 있는 경우 폐기 이유와 개수를 보존하세요. 모든 프레임을 저장해야 하는 경우 처리량과 배압을 고려하여 설계하세요. 더 큰 대기열만으로는 수정 사항이 설정되지 않습니다.

타이밍과 회복

클록 소스를 정의하고 노출, 수신, 대기열 추가 및 완료 시간을 구별합니다. 재접속을 위해서는 파라미터 재적용, 버퍼 클리어, 시퀀스 재시작을 지정합니다. 장치 타이밍이나 독립적인 참조가 없으면 호스트 타임스탬프는 노출 동기화를 설정하거나 엔드투엔드 응답을 완료하지 않습니다.

합의된 조건, 동시성 및 기간에 따라 정상 작동 및 복구를 테스트합니다. 구성, 카운터 정의, 원시 로그 및 재생 단계를 제공합니다. 관련 서비스: 이미지 캡처 개발 그리고 비전 장치 SDK.