![]() |
Что такое TCMessage?
Разбираюсь с форматом вещания видео f4f. Там есть такое понятие как mdat атом. На англоязычном форуме один из разработчиков Adobe написал, что "every mdat box is a TCMessage (if you already knew the FMS video/audio message format)", т.е. mdat атом представляет собой сообщение адобовского сервера FMS. Но что представляет собой TCMessage?
Перерыл весь интернет на эту тему, ничего не нашел. Я пытаюсь разобрать, что означает каждый из байт mdat атома, т.е. бинарное представление этого TCMessage. Подскажите, может есть какая-нибудь документация? |
Подождите, mdat-это просто набор сэмплов (кадров) видео/аудио, который описан в moov атоме.
Ничего они не значат(для вас, это в декодер уходит), все что что-то значат для вас-в moov атоме, а mdat сам по себе совершенно бессмысленный без описания смещений и размеров кадров итп в moov атоме. Там, грубо говоря, AAC/mp3 AVC/vp6 потоки данных, interleaving и все. |
Да, это набор чередующихся сэмплов видео и аудио, но к ним добавлена еще такая информация, как временные метки, размеры самих этих сэмплов, смещения разные. А вот как именно добавлена, нигде не задокументировано. Т.е. встречаются, скажем, между этими сэмплами некие дополнительные байты, а вот что они означают, абсолютно непонятно. Т.е. сами сэмплы я там вижу, а вот что между ними расположено, приходится догадываться. Иногда еще можно догадаться (например, что это смещение одного сэмпла от другого), но иногда абсолютно непонятно.
Это мне нужно не для клиентской стороны, а для серверной, чтобы такой же битовый поток сформировать. |
Оф документацию смотрели?
http://download.macromedia.com/f4v/v...spec_v10_1.pdf Там есть про f4f, и все боксы описаны. |
Krusty,
Да, документацию смотрел. Там они про mdat вообще ничего не пишут, кроме того, что есть такой атом и дальше предлагают - "For more information, see section 8.2.2 of ISO/IEC 14496-12:2008". Открываю п.8.2.2 в указанной спецификации, там описан вообще другой атом, mvhd и его спецификация вообще никак не соответствует тому, что есть в mdat. Правда там же в п.8.1.1 описан mdat, но снова в том же виде - мол mdat представляет собой чередующиеся сэмплы аудио и видео. И всё. Как именно чередуются, что и куда добавляется - ни слова. |
Тааак. насчет этого ISO/IEC 14496-12, он мне в свое время много головной боли доставил. Почему-то есть несколько вариаций этого документа, ищите нужную вам, где в 8.2.2 будет нужный вам атом.
А временные метки все же в moov атоме лежат, точнее в вложенном атоме 'stts' закодировано количество последовательных кадров, имеющих длительность в timescale, но никак не в mdat http://code.google.com/p/mp4parser/ ваш файл, на котором вы тестите-открывается в нем? Добавлено через 1 минуту И что-то я сомневаюсь, что в mdat что-то, кроме потоков лежит, все описание должно быть в других боксах. |
Действительно, вариаций 14496-12 хватает. Посмотрел другие, там кое-где вообще такого пункта нет) Но глядишь всё-таки найду нужную.
За ссылку спасибо, попробовал, файл нормально открывается, правда тоже весь атом как одно целое показывает, в нем никакой парсинг не производит. Похоже, это именно Adobe что-то в mdat добавила, т.к. по ходу возникла мысль посмотреть mp4 с теми же аудио и видео данными, сформировал, проверил, в mdat действительно только чистые сэмплы без всяких примесей. И сделали, наверное, специально, чтобы формат остался проприетарным. Ну ладно, буду догадываться, а что не догадаюсь, скопипастим, да и наплевать на них. Спасибо! |
| Часовой пояс GMT +4, время: 13:58. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.