src/main/java/org/jcodec/codecs/h264/H264Encoder.java
public EncodedFrame encodeFrame(Picture pic, ByteBuffer _out) {
        if (pic.getColor() != ColorSpace.YUV420J)
            throw new IllegalArgumentException("Input picture color is not supported: " + pic.getColor());
        
        if (frameNumber >= keyInterval) {
            frameNumber = 0;
        }

        SliceType sliceType = frameNumber == 0 ? SliceType.I : SliceType.P;
        boolean idr = frameNumber == 0;

        ByteBuffer data = doEncodeFrame(pic, _out, idr, frameNumber++, sliceType);
        return new EncodedFrame(data, idr);
    }
public EncodedFrame encodeFrame(Picture pic, ByteBuffer _out) {
        if (pic.getColor() != ColorSpace.YUV420J)
            throw new IllegalArgumentException("Input picture color is not supported: " + pic.getColor());
        
        if (frameNumber >= keyInterval) {
            frameNumber = 0;
        }

        SliceType sliceType = frameNumber == 0 ? SliceType.I : SliceType.P;
        boolean idr = frameNumber == 0;

        ByteBuffer data = doEncodeFrame(pic, _out, idr, frameNumber++, sliceType);
        return new EncodedFrame(data, idr);
    }
public EncodedFrame encodeFrame ( Picture pic , ByteBuffer _out ) { if ( pic . getColor ( ) != ColorSpace . YUV420J ) throw new IllegalArgumentException ( "Input picture color is not supported: " + pic . getColor ( ) ) ; if ( frameNumber >= keyInterval ) { frameNumber = 0 ; } SliceType sliceType = frameNumber == 0 ? SliceType . I : SliceType . P ; boolean idr = frameNumber == 0 ; ByteBuffer data = doEncodeFrame ( pic , _out , idr , frameNumber ++ , sliceType ) ; return new EncodedFrame ( data , idr ) ; }
Encode this picture into h.264 frame. Frame type will be selected by
encoder.
Encode this picture into h . 264 frame . Frame type will be selected by encoder .