package invalid.lena.scrcpy;

// Optional tap on VideoStream. Receives the same frames the decoder
// gets - same bytes, same order - plus the keyframe bit so a downstream
// muxer can mark random-access samples. Android-free so VideoStream
// stays unit-testable; MuxRecorder is the concrete Android impl.
//
// Wire order:
//   onMeta(fourcc, w, h)        - once per session, again on resize
//   onFrame(data, pts, cfg, key) - for every frame
//   close()                      - when the stream tears down
public interface VideoRecorder {

    void onMeta(int codecFourcc, int width, int height);

    void onFrame(byte[] data, long ptsUs, boolean isConfig, boolean isKeyframe);

    void close();
}
