parser-java/kvs-archived-media-rekognition-label-detection-sample/src/main/java/com/amazonaws/kinesisvideo/utilities/H264FrameLabelDetector.java [44:63]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    public void process(Frame frame, MkvTrackMetadata trackMetadata, Optional<FragmentMetadata> fragmentMetadata,
                        Optional<FragmentMetadataVisitor.MkvTagProcessor> tagProcessor) throws FrameProcessException {

        boolean isKeyFrame = frame.isKeyFrame();
        BufferedImage bufferedImage = decodeH264Frame(frame, trackMetadata);

        /* Only send key frames to Rekognition */
        if (sampleRate == 0) {
            if (frame.isKeyFrame()) {
                sendFrameToRekognition(bufferedImage);
            }
        } else {
            /* Only send to Rekognition every N frames */
            if ((frameNumber % sampleRate) == 0) {
                sendFrameToRekognition(bufferedImage);
            }
            frameNumber++;
        }

    }
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



parser-java/kvs-archived-media-parallel-processing-image-rekognition-sample/src/main/java/com/amazonaws/kinesisvideo/utilities/H264FrameLabelDetector.java [45:64]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    public void process(Frame frame, MkvTrackMetadata trackMetadata, Optional<FragmentMetadata> fragmentMetadata,
                        Optional<FragmentMetadataVisitor.MkvTagProcessor> tagProcessor) throws FrameProcessException {

        boolean isKeyFrame = frame.isKeyFrame();
        BufferedImage bufferedImage = decodeH264Frame(frame, trackMetadata);

        /* Only send key frames to Rekognition */
        if (sampleRate == 0) {
            if (frame.isKeyFrame()) {
                sendFrameToRekognition(bufferedImage);
            }
        } else {
            /* Only send to Rekognition every N frames */
            if ((frameNumber % sampleRate) == 0) {
                sendFrameToRekognition(bufferedImage);
            }
            frameNumber++;
        }

    }
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



