2014-10-13 5 views
1

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

ответ

1

Есть видеоролики и изображения, которые хранятся в библиотеке фотографий, во-первых, вы хотите получить все видеоролики из библиотеки, до iOS 8, this post показывает, как извлекать изображения с помощью библиотеки AssetsLibrary , Вы можете отфильтровывать видео, когда вы делаете это, тогда вы получаете ALAsset, который может представлять изображение или видео, предположим, когда вы выберете видео, вы получите ресурс с именем ALASset, используя приведенную ниже функцию, вы получите миниатюру для этого видео ,

Если вы используете ALAsset.

UIImage *thumbnail = [UIImage imageWithCGImage:[asset thumbnail]]; 

Для прошивки 8, яблоко вводит новую фотографии библиотеку, вы можете получить все видео из библиотеки, как описаны выше, видео или изображения представлены PHAsset, предположу, что у вас есть PHAsset Ивар с именем актив, вы можете использовать следующий метод получения UIImage из этого актива. Взгляните на requestImageForAsset:targetSize:contentMode:options:resultHandler:, вы можете установить размер цели на размер большого пальца, который вы хотите, в resultHandler вы получите UIImage.

+0

может у плз подробно объяснить. –

0

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

- (UIImage *)thumbnailFromVideoAtURL:(NSURL *)url 
{ 
    AVURLAsset *aImgAsset = [[AVURLAsset alloc] initWithURL:url options:nil]; 
    AVAssetImageGenerator *aImgGenerator = [[AVAssetImageGenerator alloc] aImgAsset]; 
    aImgGenerator.appliesPreferredTrackTransform = YES; 
    NSError *err = NULL; 
    CMTime time = CMTimeMake(1, 2); 
    CGImageRef aImgRef = [aImgGenerator copyCGImageAtTime:time actualTime:NULL error:&err]; 
    UIImage *aImgThumb = [[UIImage alloc] initWithCGImage:aImgRef]; 

    return aImgThumb; 
} 
Смежные вопросы