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

想做的效果跟下图的差不多,拖动进度条的时候不卡帧那种效果
到底要怎么样实现啊...我自己尝试用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
阿神
阿神

闭关修行中......

Antworte allen(2)
Peter_Zhu

哥们 解决了吗?我现在也遇到这个问题,,内存直接爆了

小葫芦

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

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!