objective-c - 类似iOS系统相册的视频播放器要怎么实现?就是能手动快进后退的那种不卡帧效果
阿神
阿神 2017-04-18 09:21:39
0
2
864

想做的效果跟下图的差不多,拖动进度条的时候不卡帧那种效果
到底要怎么样实现啊...我自己尝试用AVAssetImageGenerator这个把帧图片取出来,可是太耗内存了。。超过10秒的视频程序就崩

我把视频帧率都取出来了,可视频超过10秒的话就程序就崩了

//取出帧图片
[imgGenerator generateCGImagesAsynchronouslyForTimes:times completionHandler:^(CMTime requestedTime, CGImageRef  _Nullable image, CMTime actualTime, AVAssetImageGeneratorResult result, NSError * _Nullable error) {
    printf("current-----: %lld\n", requestedTime.value);
    switch (result) {
        case AVAssetImageGeneratorCancelled://取消
            NSLog(@"Cancelled");
            break;
        case AVAssetImageGeneratorFailed://失败
            NSLog(@"Failed");
            break;
        case AVAssetImageGeneratorSucceeded: {//成功
           
            NSString *filePath = [path stringByAppendingPathComponent:[NSString stringWithFormat:@"/%lld.png",requestedTime.value]];
            UIImage *uImage = [UIImage imageWithCGImage:image];
            NSData *imgData = UIImagePNGRepresentation(uImage);
            [imgData writeToFile:filePath atomically:YES];
            uImage = nil;
            
            if (requestedTime.value == timesCount) {
                NSLog(@"completed");
                if (completedBlock) {
                    //回调
                    completedBlock(path,timesCount);
                }
            }
        }
            break;
    }
}];

求求大家能帮帮忙解决解决T.T
阿神
阿神

闭关修行中......

全部回覆(2)
Peter_Zhu

哥們 解決了嗎?我現在也遇到這個問題,,記憶體直接爆了

小葫芦

https://github.com/foxling/AV...

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!