Я хочу написать программу, которая может найти некоторую метаинформацию медиафайла. Меня интересуют популярные форматы видео, такие как avi, mkv, mp4, mov (могут быть и другие популярные). Я хочу в основном получить:
- Размер видео (720, 1080, 360 и т. Д.)
- Общее время выполнения видео (может быть не очень точное)
- Количество аудиопотоков
- Название видеокодека
- Название аудиокодека
Уже есть mediainfo , но в моей программе я хочу получить информацию об удаленном файле, к которой можно получить доступ через ftp, http, samba; или даже торрент (есть некоторые торрент-решения, которые позволяют читать еще не загруженный файл).
Библиотека MediaInfo не поддерживает формат samba (smb: //) и mkv (для среды выполнения).
Кроме того, я хочу знать, сколько данных нужно загрузить, чтобы получить эту информацию. Я не хочу загружать полный видеофайл, потому что у меня недостаточно места на диске.
Эта информация содержится в первых 1, 10 или 100 килобайтах файла? Это с предсказуемым смещением, если я знаю имя контейнера и общий размер файла?
PS: Платформа Linux, язык C / C ++