Имам video_file.mp4 и знам, че атомът mdat съдържа H.264 кадри. Също така имам H.264 codec lib в моя проект. И така, прав ли съм, че ако поставя сурови данни mdat в метода byte * decode(byte * data, int timeMsec) на моята библиотека, ще получа декодиран кадър? Или имам нужда от допълнителни операции? Благодаря!
Изобразете рамка от ISO файл
Отговори (1)
Има два често срещани H.264 формата за пакетиране на побитов поток. 1. Приложение B 2. MP4. За MP4 режимът на пакетиране е различен и обикновено декодерите предпочитат Приложение B, но не винаги. MP4 е с префикс за дължина и Приложение B съдържа начални кодове. Някои програми за разгръщане на MP4 ще конвертират битовия поток в приложение B, но не всички. Извън различните формати за опаковане – ако вашият mp4 файл съдържа други потоци – като – аудио – целият ви подход няма да работи. Кутията mdat съдържа всички потоци, подредени.
person
Markus Schumann
schedule
19.08.2012