#c# #h.264 #video-encoding
#c# #h.264 #кодирование видео
Вопрос:
Мне нужно проверить, закодирован ли файл в H.264 / Avc, H.262 / MPEG-2 или другом формате. Я искал в Интернете последовательности магических байтов, чтобы определить это.
То, что я нашел до сих пор 00 00 00 nn 66 74 79 70
, предположительно говорит мне, что файл содержится в контейнере MPEG-4. К сожалению, этот формат контейнера ничего не говорит о том, какую кодировку использует видео в контейнере.
Есть ли простой способ отличить кодировку H.264 / Avc и H.262 / MPEG-2? Я бы предпочел использовать magic bytes или «бесплатную» лицензионную библиотеку для c #.
Комментарии:
1. «Есть ли простой способ» — нет . Попробуйте taglib # .
2. Привет из того, что я могу видеть, taglib # находится под лицензией типа GPL. Знаете ли вы, есть ли какие-либо библиотеки, которые находятся под менее строгой лицензией, которые я мог бы использовать?
3. Проверка mediaarea.net/en/MediaInfo он будет делать именно то, что вы хотите
4. Являются ли ваши файлы элементарными потоками? Можете ли вы поделиться несколькими примерами файлов? Если у вас есть файлы mp4 с видео AVC или mpeg-2, вам нужно выполнить небольшой синтаксический анализ контейнера.
5. Где я могу узнать больше о синтаксическом анализе контейнеров?