繁体   English   中英

用户动态选择的视频封面图片选择器

[英]video cover image selector from user dynamically

我正在开发视频应用程序,因为我需要视频封面图像,我应该从用户那里选择什么,

从用户那里选择封面图片,如下图所示

在此处输入图片说明 我在Google中搜索了很多次自定义控制器,但没有任何自定义控制器,如果有的话? 或任何对我有帮助的建议

实际上,您可以使用贝娄代码使用视频文件的路径获取视频缩略图封面图像,也可以获取视频文件的所有帧。 但是Apple没有为选择封面图像Thumb提供任何视图控制器。 您必须在thumbnailImageAtTime处手动创建时间,或创建您自己的那种视图并使用Bellow代码获取缩略图。 希望有用。

-(void) getAllImagesFromVideo
{
   imagesArray = [[NSMutableArray alloc] initWithCapacity:375];
   times = [[NSMutableArray alloc] initWithCapacity:375];

   for (Float64 i = 0; i < 15; i += 0.033) // For 25 fps in 15 sec of Video
   {
       [times addObject:[NSValue valueWithCMTime:CMTimeMakeWithSeconds(i, 60)]];
   } 

   [imageGenerator generateCGImagesAsynchronouslyForTimes:times completionHandler:^(CMTime requestedTime, CGImageRef image, CMTime actualTime, AVAssetImageGeneratorResult result, NSError *error) {
       if (result == AVAssetImageGeneratorSucceeded)
       {
           [imagesArray addObject:[UIImage imageWithCGImage:image]];
           CGImageRelease(image);
       }
   }];
}

上面的代码Ref来自获取视频IOS 6的所有帧在这里,您具有视频的所有帧图像。 因此,当您在问题中提到图像时,创建您自己的view-Controller像上面一样创建view-controller并将所有图像设置为水平scroll-view并为封面图像选择任意一个,否则您可以使用Bellow代码从头获得特定图像。

-(UIImage *)getThumbNail:(NSString*)stringPath
{
    NSURL *videoURL = [NSURL fileURLWithPath:stringPath];

    MPMoviePlayerController *player = [[MPMoviePlayerController alloc] initWithContentURL:videoURL];

    UIImage *thumbnail = [player thumbnailImageAtTime:1.0 timeOption:MPMovieTimeOptionNearestKeyFrame];

    //Player autoplays audio on init
    [player stop];

    return thumbnail;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM