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

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

闭关修行中......

répondre à tous(2)
Peter_Zhu

Mec, tu l'as résolu ? Je rencontre aussi ce problème maintenant, la mémoire est directement explosée

小葫芦

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

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!