private void getCodecBuffers(MediaCodec codec) { if (Util.SDK_INT < 21) { inputBuffers = codec.getInputBuffers(); outputBuffers = codec.getOutputBuffers(); } }
ByteBuffer[] encoderInputBuffers = encoder.getInputBuffers(); MediaCodec.BufferInfo info = new MediaCodec.BufferInfo(); int generateIndex = 0;
synchronized void offerEncoder(byte[] input) { if(mMediaCodec == null) { return; } ByteBuffer[] inputBuffers = mMediaCodec.getInputBuffers(); ByteBuffer[] outputBuffers = mMediaCodec.getOutputBuffers(); int inputBufferIndex = mMediaCodec.dequeueInputBuffer(12000); if (inputBufferIndex >= 0) { ByteBuffer inputBuffer = inputBuffers[inputBufferIndex]; inputBuffer.clear(); inputBuffer.put(input); mMediaCodec.queueInputBuffer(inputBufferIndex, 0, input.length, 0, 0); } int outputBufferIndex = mMediaCodec.dequeueOutputBuffer(mBufferInfo, 12000); while (outputBufferIndex >= 0) { ByteBuffer outputBuffer = outputBuffers[outputBufferIndex]; if(mListener != null) { mListener.onAudioEncode(outputBuffer, mBufferInfo); } mMediaCodec.releaseOutputBuffer(outputBufferIndex, false); outputBufferIndex = mMediaCodec.dequeueOutputBuffer(mBufferInfo, 0); } } }
public MediaCodecBufferCompatWrapper(MediaCodec mediaCodec) { mMediaCodec = mediaCodec; if (Build.VERSION.SDK_INT < 21) { mInputBuffers = mediaCodec.getInputBuffers(); mOutputBuffers = mediaCodec.getOutputBuffers(); } else { mInputBuffers = mOutputBuffers = null; } }
mDecoder.start(); mDecoderStarted = true; mDecoderInputBuffers = mDecoder.getInputBuffers();
MediaCodecBufferCompatWrapper(MediaCodec mediaCodec) { this.mediaCodec = mediaCodec; if (Build.VERSION.SDK_INT < 21) { inputBuffers = mediaCodec.getInputBuffers(); putputBuffers = mediaCodec.getOutputBuffers(); } else { inputBuffers = putputBuffers = null; } }
private ByteBuffer getInputBuffer(MediaCodec codec, int index) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { return codec.getInputBuffer(index); } else { return codec.getInputBuffers()[index]; } }
ByteBuffer[] getInputBuffers() { ByteBuffer[] inputBuffers = mediaCodec.getInputBuffers(); Logging.d(TAG, "Input buffers: " + inputBuffers.length); return inputBuffers; }
private ByteBuffer getInputBuffer(MediaCodec codec, int index) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { return codec.getInputBuffer(index); } else { return codec.getInputBuffers()[index]; } }
MediaCodecBufferCompatWrapper(MediaCodec mediaCodec) { this.mediaCodec = mediaCodec; if (Build.VERSION.SDK_INT < 21) { inputBuffers = mediaCodec.getInputBuffers(); putputBuffers = mediaCodec.getOutputBuffers(); } else { inputBuffers = putputBuffers = null; } }
public MediaCodecBufferCompatWrapper(MediaCodec mediaCodec) { mMediaCodec = mediaCodec; if (Build.VERSION.SDK_INT < 21) { mInputBuffers = mediaCodec.getInputBuffers(); mOutputBuffers = mediaCodec.getOutputBuffers(); } else { mInputBuffers = mOutputBuffers = null; } }
public MediaCodecBufferCompatWrapper(MediaCodec mediaCodec) { mMediaCodec = mediaCodec; if (Build.VERSION.SDK_INT < 21) { mInputBuffers = mediaCodec.getInputBuffers(); mOutputBuffers = mediaCodec.getOutputBuffers(); } else { mInputBuffers = mOutputBuffers = null; } }
MediaCodecBufferCompatWrapper(MediaCodec mediaCodec) { this.mediaCodec = mediaCodec; if (Build.VERSION.SDK_INT < 21) { inputBuffers = mediaCodec.getInputBuffers(); putputBuffers = mediaCodec.getOutputBuffers(); } else { inputBuffers = putputBuffers = null; } }
public MediaCodecBufferCompatWrapper(MediaCodec mediaCodec) { mMediaCodec = mediaCodec; if (Build.VERSION.SDK_INT < 21) { mInputBuffers = mediaCodec.getInputBuffers(); mOutputBuffers = mediaCodec.getOutputBuffers(); } else { mInputBuffers = mOutputBuffers = null; } }
public MediaCodecBufferCompatWrapper(MediaCodec mediaCodec) { mMediaCodec = mediaCodec; if (Build.VERSION.SDK_INT < 21) { mInputBuffers = mediaCodec.getInputBuffers(); mOutputBuffers = mediaCodec.getOutputBuffers(); } else { mInputBuffers = mOutputBuffers = null; } }
private ByteBuffer getInputBuffer(MediaCodec codec, int index) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { return codec.getInputBuffer(index); } else { return codec.getInputBuffers()[index]; } }
private MediaCodecWrapper(MediaCodec codec) { mDecoder = codec; codec.start(); mInputBuffers = codec.getInputBuffers(); mOutputBuffers = codec.getOutputBuffers(); mOutputBufferInfo = new MediaCodec.BufferInfo[mOutputBuffers.length]; mAvailableInputBuffers = new ArrayDeque<>(mOutputBuffers.length); mAvailableOutputBuffers = new ArrayDeque<>(mInputBuffers.length); }
private MediaCodecWrapper(MediaCodec codec) { mDecoder = codec; codec.start(); mInputBuffers = codec.getInputBuffers(); mOutputBuffers = codec.getOutputBuffers(); mOutputBufferInfo = new MediaCodec.BufferInfo[mOutputBuffers.length]; mAvailableInputBuffers = new ArrayDeque<>(mOutputBuffers.length); mAvailableOutputBuffers = new ArrayDeque<>(mInputBuffers.length); }
private MediaCodecWrapper(MediaCodec codec) { mDecoder = codec; codec.start(); mInputBuffers = codec.getInputBuffers(); mOutputBuffers = codec.getOutputBuffers(); mOutputBufferInfo = new MediaCodec.BufferInfo[mOutputBuffers.length]; mAvailableInputBuffers = new ArrayDeque<>(mOutputBuffers.length); mAvailableOutputBuffers = new ArrayDeque<>(mInputBuffers.length); }
@Override public void onVideoStart(int width, int height) throws IOException { this.mWidth = width; this.mHeight = height; startMediaCodec(); inputBuffers = mMediaCodec.getInputBuffers(); outputBuffers = mMediaCodec.getOutputBuffers(); start(); mVideoStarted = true; }