2016-10-17 7 views
0

Я хочу получить информацию Exif для видеофайла.PHAsset video get exifInfo (метаданные)

Ниже приведен код для получения Exif для изображения, но он не работает для видео.

[[PHImageManager defaultManager] requestImageDataForAsset:photoAsset 
               options:reqOptions 
             resultHandler: 
    ^(NSData *imageData, NSString *dataUTI, UIImageOrientation orientation, NSDictionary *info) { 
     CIImage* ciImage = [CIImage imageWithData:imageData]; 
     DLog(@"Metadata : %@", ciImage.properties); 
    }]; 

Есть ли способ получить exif без записи файла на диск?

ответ

0

Чтобы получить метаданные для видеофайла , используйте ниже API, где информация находится в объекте AVAsset.

- (PHImageRequestID)requestAVAssetForVideo:(PHAsset *)asset options:(nullable PHVideoRequestOptions *)options 
       resultHandler:(void (^)(AVAsset *__nullable asset, AVAudioMix *__nullable audioMix, NSDictionary *__nullable info))resultHandler; 
0

Пожалуйста, проверьте documentation.

Вы можете получить информацию о видео:

- (PHImageRequestID)requestPlayerItemForVideo:(PHAsset *)asset 
            options:(PHVideoRequestOptions *)options 
          resultHandler:(void (^)(AVPlayerItem *playerItem, NSDictionary *info))resultHandler; 

Попробуйте использовать утилиту для метаданных: https://github.com/zakkhoyt/PHAsset-Utility

Надеется, что это помогает. :)

+0

Спасибо за ваш ответ. ExifInfo присутствует в playerItem? , Поскольку я не могу найти много информации в Info Dictionary – Ekra

+1

Есть вспомогательная утилита, вы можете использовать ее метаданные: https://github.com/zakkhoyt/PHAsset-Utility –

+0

Запрос метода вспомогательной утилитыMetadataWithCompletionBlock не работает для vidoes – Ekra