Articles of mediacodec

Использование MediaCodec для сохранения серии изображений в виде видео

Я пытаюсь использовать MediaCodec для сохранения серии изображений, сохраненных в виде байтовых массивов в файле, в видеофайл. Я тестировал эти изображения на SurfaceView (играя их последовательно), и я вижу их в полном порядке. Я просмотрел много примеров с помощью MediaCodec , и вот что я понимаю (пожалуйста, поправьте меня, если я ошибаюсь): Получить InputBuffers из […]

Изображения для видео с использованием MediaCodec и MediaMuxer

У меня есть куча локальных изображений, сохраненных как jpeg-файлы. Мои изображения захватываются с использованием CameraPreview, и PreviewFormat по умолчанию: NV21. Я хочу создать небольшое видео с фиксированного количества изображений. Я не собираюсь использовать FFMpeg, потому что он требует NDK и будет вводить проблемы совместимости. MediaCodec и MediaMuxer работают, но в Интернете нет ни одного рабочего […]

Как передать предварительный просмотр камеры на поверхность, созданный MediaCodec.createInputSurface ()?

В идеале я бы хотел достичь двух целей: Передайте данные предварительного просмотра Camera в кодер MediaCodec через Surface . Я могу создать Surface с помощью MediaCodec.createInputSurface() но Camera.setPreviewDisplay() принимает SurfaceHolder , а не Surface . Помимо передачи данных предварительного просмотра Camera в кодировщик, я также хотел бы отобразить предварительный просмотр на экране (чтобы пользователь мог […]

Метод onFrameAvailable () SurfaceTexture всегда называется слишком поздним

Я пытаюсь использовать следующий пример MediaExtractor: Http://bigflake.com/mediacodec/ – ExtractMpegFramesTest.java (требуется 4.1, API 16) Проблема у меня в том, что outputSurface.awaitNewImage (); Похоже, всегда бросает RuntimeException («время ожидания фрейма»), которое mFrameSyncObject.wait(TIMEOUT_MS) всякий раз, когда mFrameSyncObject.wait(TIMEOUT_MS) вызывает время ожидания. Независимо от того, что я установил TIMEOUT_MS , onFrameAvailable() всегда onFrameAvailable() сразу после истечения таймаута. Я пробовал с […]

Как создать элементарный поток AAC ADTS с Android MediaCodec

То, что я пытаюсь сделать: использовать Android MediaCodec для кодирования необработанных образцов аудио PCM в необработанный файл AAC. У меня проблема: когда я использую FFMPEG для упаковки сгенерированного файла AAC в контейнер M4A, FFMPEG жалуется на отсутствие параметров кодека в файле. Детали: Поскольку я не могу найти какой-либо образец кода MediaCodec для аудиокодера, который генерирует […]

Android MediaCodec AAC кодировщик

Я использую класс MediaCodec предоставляемый Android SDK, начиная с уровня API 16 с кодировщиком OMX.SEC.aac.enc для кодирования звука в файл. Я получаю аудио вход из класса AudioRecord . Мой экземпляр класса AudioRecord настроен следующим образом: bufferSize = AudioRecord.getMinBufferSize(44100, AudioFormat.CHANNEL_IN_STEREO, AudioFormat.ENCODING_PCM_16BIT); recorder = new AudioRecord(MediaRecorder.AudioSource.MIC, 44100, AudioFormat.CHANNEL_IN_STEREO, AudioFormat.ENCODING_DEFAULT, bufferSize); Я могу воспроизвести необработанные данные из экземпляра […]

Добавление растрового изображения водяного знака поверх видео в android: MediaMuxer 4.3 или ffmpeg

Вот мой сценарий: Загрузите avi-фильм из Интернета Открыть растровый ресурс Наложите это растровое изображение внизу фильма на все кадры в фоновом режиме Сохраните видео на extarnal storage Длина видео составляет 15 секунд Можно ли это использовать с помощью MediaMuxer? Любая информация по этому вопросу с радостью принимается Я искал http://bigflake.com/mediacodec/#DecodeEditEncodeTest (спасибо @fadden), и он говорит […]

Кодирование и мультиплексирование видео с использованием MediaCodec и MediaMuxer

Я разрабатываю приложение, где я декодирую видео и заменяю определенные кадры и перекодирую с помощью MediaMuxer и MediaCodec . Приложение работает, если я не заменяю какие-либо фреймы (за исключением 1080p видео, как я объясняю ниже), но когда я это делаю, кадры после замененных пикселов и видео нестабильны. Кроме того, когда я пытаюсь выполнить свое приложение […]

Ошибка кодера на графическом процессоре Adreno при кодировании с поверхности

Я боролся с этой проблемой больше недели, и, скорее всего, это ошибка в кодере Qualcomm GPU / аппаратном видео кодеке . Поскольку мы приступили к выпуску приложения, и их форумы разработчиков не предоставили никакой обратной связи, я также размещаю его здесь, надеясь, что кто-то сможет предоставить некоторые подсказки или, что еще лучше, обходное решение, так […]