Articles of mediacodec

Усечение видео с помощью MediaCodec

Я использовал библиотеку Android MediaCodec для перекодировки видеофайлов (в основном, сменил здесь пример кода примера ) Еще одна вещь, которую я хочу достичь, – усечь видео – только начинать 15 секунд. Логика состоит в том, чтобы проверить videoExtractor.getSampleTime() если она больше 15 секунд, я просто напишу EOS в буфер декодера. Но я получаю исключение, Caused […]

Транскодированное видео для снижения битрейта и потока

У меня есть рабочее приложение, которое транслирует видео на Chromecast (используя nannoHttpd), и все работает нормально. Теперь моя проблема: видео, записанные с использованием новых устройств, слишком велики по размеру для потока, поэтому я хочу перекодировать видео на несколько более низких битрейтов. Я попробовал ffmpeg, но результаты не являются удовлетворительными, и это увеличит размер apk на […]

Буферизация Поверхностный вход в MediaCodec

Было продемонстрировано, как подавать MediaCodec с помощью поверхностного ввода, например CameraPreview, но существуют ли способы буферизации этого ввода перед отправкой в MediaCodec ? В моих экспериментах Galaxy Nexus испытывает неприемлемые икоты при создании аудио / видеопотоков, используя прямой, синхронный метод кодирования в CameraToMpegTest.java При использовании MediaCodec с byte[] или входом ByteBuffer мы можем отправлять некодированные […]

Декодирование h264 ByteStream на Android

Я хочу декодировать и отображать необработанный поток байтов видео h264 в Android, и поэтому в настоящее время я использую классы MediaCodec/Format . Я получаю данные кадра через Udp с сервера. Но, к сожалению, на данный момент ничего не отображается. Вот что я до сих пор. Инициализация класса MediaCodec: codec = MediaCodec.createDecoderByType("video/avc"); MediaFormat format = new […]

Android MediaCodec кодирует и декодирует в асинхронном режиме

Я пытаюсь декодировать видео из файла и кодировать его в другом формате с помощью MediaCodec в новом асинхронном режиме, поддерживаемом на уровне API 21 и выше (Android OS 5.0 Lollipop). Существует много примеров для этого в синхронном режиме на таких сайтах, как Big Flake , Google Grafika и десятки ответов на StackOverflow, но ни один […]

Декодирование аудиофайлов и повторное кодирование в желаемый формат PCM: 44,100 кГц, 2 канала, 16 бит

Я хочу декодировать аудиофайлы для сырых данных PCM, чтобы передать их на устройство воспроизведения в локальной сети. Для этого я использую новые классы MediaExtractor и MediaCodec , представленные с уровнем API 16. Устройство требует, чтобы данные PCM находились в 44 100 кГц, имеют 2 канала и 16-разрядный размер выборки . Это работает нормально, пока входной […]

Частота кадров камеры OnPreviewFrame для Android

Я пытаюсь кодировать видео с частотой 30 кадров в секунду с помощью MediaCodec через PreviewCall назад камеры (onPreviewFrame). Видео, которое я кодировал, всегда играет очень быстро (это нежелательно). Итак, я попытался проверить количество кадров, которые входят в предварительный просмотр камеры, настроив переменную int frameCount, чтобы запомнить ее счет. То, что я ожидаю, составляет 30 кадров […]

Изменение размера поверхности для изменения соотношения сторон в видеоизображении в андроиде

Я работаю над проектом видеоконференций. Мой видеодисплей использует вид поверхности. Теперь во время видеовызова есть вероятность изменения соотношения сторон для входящих кадров. Поэтому я пробовал для него следующий код public void surfaceResize() { // WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); Point size = new Point(); int screenWidth = 0; //Get the SurfaceView layout parameters float aspectRatio […]

Круглый буфер со звуковым сопровождением для Android

Я использую Google Open Source Example: Grafika . Я использую ContinuousCaptureActivity.java. Реализация CircularBuffer реализована в этом упражнении, но в результирующий видеофайл отсутствует звук. Я хочу добавить функцию Audio Recording в этом упражнении и добавить записанное аудио в видео в том же CircularBuffered Fashion. Для этого я изучил библиотеку MediaCodec, которая была представлена ​​в версиях 4.3+. […]

Как получить доступ к изображению EGL непосредственно с Android-поверхности для использования в видеодекодере MediaCodec?

В настоящее время я пишу приложение для Android, где мне нужно кэшировать видео-кадры, чтобы я мог легко вернуться туда и обратно с минимальной задержкой. Сейчас я разрешаю android декодировать видеокадр, предоставляя вызов Surface to Configure объекта MediaCodec и вызывающий releaseOutputBuffer с флагом рендеринга, установленным в true . Единственный способ, которым я нашел доступ к декодированным […]

Intereting Posts
Ormlite объемные вставки в Android Может ли Powermockito использоваться с Android Studio 1.2 Моя служба всегда получает Waited достаточно долго для: Ошибка ServiceRecord в Kitkat Возможно ли иметь несколько шрифтов в одном TextView? Управление музыкальным плеером по умолчанию для Android или любого другого музыкального проигрывателя Приложение HTML5 офлайн на устройствах Android Android Studio не может импортировать мои проекты Eclipse напрямую или как проект Gradle «Почему Apache Harmony» или «Как использовать Java 8 на Android» Android: Как подключить свой Android-телефон к проектору через USB / HDMI? Преобразование InputStream в JSONObject Получение информации о продуктах, таких как имя, цена и т. Д. С использованием номера штрих-кода «Невозможно найти базу данных API; Проверка API не выполнялась "в Android App SDK с Eclipse Что такое Gradle в Android Studio? Android Espresso – Как проверить подсказку EditText? Android.app Fragments vs. android.support.v4.app с помощью ViewPager?