Использование Android MediaCodec для адаптивной потоковой передачи
Я использовал MediaCodec для воспроизведения видео файлов AVC. сейчас я пытаюсь воспроизвести видео из потока, я не смог найти ни одного примера или хорошей документации, касающейся использования MediaCodec для адаптивной потоковой передачи. Мне было интересно, если кто-нибудь может привести меня к хорошему примеру или просто опубликовать то, что мне нужно сделать?
некоторый код:
...
codec = MediaCodec.createDecoderByType(type);
format = new MediaFormat();
format.setString(MediaFormat.KEY_MIME, type);
format.setInteger(MediaFormat.KEY_MAX_INPUT_SIZE, track.getInt("maxsize"));
format.setInteger(MediaFormat.KEY_WIDTH, videoWidth);
format.setInteger(MediaFormat.KEY_HEIGHT, videoHeight);
format.setInteger(MediaFormat.KEY_MAX_WIDTH, videoWidth);
format.setInteger(MediaFormat.KEY_MAX_HEIGHT, videoHeight);
...
mSurface = new Surface(mSurfaceTexture);
codec.configure(format, mSurface, null, 0);
codec.start();
...
Обратите внимание, что у меня нет csd-0 и csd1 во время инициализации, я хотел бы представить их после запуска кодека. Как я могу это сделать?
теперь, когда я звоню
int index = codec.dequeueInputBuffer(timeout * 1000);
Индекс всегда -1.
Любая помощь будет оценена.