Я пытаюсь создать систему, которая транслирует потоковое видео и аудио, захваченное на телефонах Android. Видео и auido записываются на стороне Android с помощью MediaRecorder, а затем отправляются прямо на сервер, написанный на python. Клиенты должны получать доступ к этой прямой трансляции через свой браузер, поэтому я реализовал потоковую часть системы с использованием flash. Прямо сейчас и видео, и аудио контент появляются на стороне клиента, но проблема в том, что они не синхронизированы. Я уверен, что это вызвано неправильными значениями меток времени во флэш-памяти (в настоящее время я увеличиваю ts на 60 мс для кадра видео, но ясно, что это значение должно быть переменным).
Аудио закодировано в amr на телефоне Android, поэтому я точно знаю, что каждый кадр amr равен 20 мс. Однако это не относится к видео, которое закодировано в H.264. Чтобы синхронизировать их вместе, мне нужно было бы точно знать, сколько миллисекунд длится каждый кадр H.264, чтобы я мог пометить их позже при доставке контента с использованием флэш-памяти. Мой вопрос: доступна ли такая информация в единицах NAL H.264? Я пытался найти ответ в стандарте H.264, но информация там просто подавляющая.
Может кто-нибудь указать мне правильное направление? Спасибо.