Как получить метаданные из файла видео-фильма, используя Objective-c? - PullRequest
2 голосов
/ 11 июня 2010

Любая помощь? Теперь можно получить NSSize, продолжительность и все.

Ответы [ 2 ]

5 голосов
/ 21 июня 2010

Вы можете сделать это почти полностью, используя метаданные Spotlight.

Например, я делаю следующее в одном из моих приложений

MDItemRef fileMetadata=MDItemCreate(NULL,(CFStringRef)eachPath);
NSDictionary *metadataDictionary = (NSDictionary*)MDItemCopyAttributes (fileMetadata,
                                                                                           (CFArrayRef)[NSArray arrayWithObjects:(id)kMDItemPixelHeight,(id)kMDItemPixelWidth,nil]);

Этот код запрашивает ширину и высоту пикселя.для файла фильма (чтобы определить, является ли его размер фильмом HD или нет).

В справочнике атрибутов метаданных Spotlight перечислены все доступные ключи для различных типов файлов по категориям.Вероятно, вы можете получить необходимые данные таким образом, не делая ничего существенного, при условии, что тип исследуемого вами носителя имеет подключаемый модуль Spotlight.

4 голосов
/ 12 июня 2010

Эта функция может быть не встроена (честно говоря, я не уверен), но я знаю две сторонние библиотеки, которые могут сообщить вам необходимую информацию.

  • VLCKit , платформа, используемая в новейших бета-версиях VLC для Mac.
  • libmediainfo , многоцелевая библиотека, которая может считывать практически любую нужную информацию практически из любого медиа-файла.

Я могу более подробно рассказать о том, как использовать любой из них, но я бы предпочел сделать это только в том случае, если вам это понадобится. Дайте мне знать!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...