pub fn check_video_encoder_contract<E, F>(
make: F,
frames: &[Frame],
) -> Conformancewhere
E: VideoEncoder,
F: FnMut() -> E,Expand description
Verify a VideoEncoder against the session contract.
make builds a fresh encoder; frames are valid input for it, with
timestamps on its clock. Checked:
output_configis available before the first frame.- Receiving lazily and eagerly yields the same packets (bytes, timestamps, random-access flags); every packet has a timestamp and the timestamps are exactly the frames’.
ReceivePendingis followed by aReady;end_inputis idempotent,EndOfStreamstable,sendafter it refused.- A frame on another clock is
ProtocolViolation::ClockMismatch.