public void push(int n, Frame frame, int pixelFormat) throws Exception {
inframe = frame;
if (frame != null && frame.image != null && buffersrc_ctx != null) {
pushImage(n, frame.imageWidth, frame.imageHeight, frame.imageDepth,
frame.imageChannels, frame.imageStride, pixelFormat, frame.image);
}
if (frame != null && frame.samples != null && abuffersrc_ctx != null) {
pushSamples(n, frame.audioChannels, sampleRate, sampleFormat, frame.samples);
}
if (frame == null || (frame.image == null && frame.samples == null)) {
av_buffersrc_add_frame_flags(buffersrc_ctx[n], null, 0);
}
}