Декодирование формата потокового файла RIMM

Я хочу декодировать видеокадры (визуальные) в файле Blackberry RIMM. Пока у меня есть парсер и соответствующая документация по контейнеру от RIM.

Видеокодек H264 явно установлен на устройстве с помощью одного из свойств video.encodings. Однако FFMPEG не может декодировать кадры, и это сводит меня с ума.

Редактировать 1: Проблемы, похоже, заключаются в отсутствии SPS и PPS в кадрах, и их искусственное введение пока безуспешно (все серое изображение). Blackberry 9700 отправляет

0x00 0x00 0x ?? 0x ?? 0xType

, где Тип соответствует таблице 7-1 спецификации H264 (кадры I и P). Мы верим, что 0x ?? 0x ?? представляют размер кадра, однако размер не всегда соответствует размеру, найденному синтаксическим анализатором (синтаксический анализатор, кажется, работает правильно).

У меня есть кодек декодера Windows от Blackberry, который называется mc_demux_mp2_ds.ax, и могу воспроизводить некоторые файлы MPEG-4, захваченные таким же образом, но это двоичный файл для Windows. И файлы H264 в любом случае не будут воспроизводиться. Мне известны предыдущие попытки . URL-адрес захвата для javax.microedition.media.Manager -

encoding=video-3gpp_width=176_height=144_video_codec=H264_audio_codec=AAC

, и я пишу в выходной поток. Некоторые файлы примеров здесь .

Редактировать 2: Оказывается, около 3-4 из 12-15 доступных режимов захвата видео полностью выходят из строя и отказываются выводить данные даже в простейших тестовых приложениях. Таким образом, любое рабочее решение должно реализовывать MPEG-4, H264 и H263 как в AMR, так и в AAC, чтобы получить альтернативные варианты при выходе из строя одного звукового кодека и / или разрешения. Перезагружается, зависает и что не засоряет видео-реализацию Blackberry и различается от прошивки к прошивке; полное всасывание.

19
задан Community 23 May 2017 в 11:55
поделиться