Eva c 2015-11-03 01:09 采纳率: 0%
浏览 1776
已结题

IOS 每0.2秒获得一个UIImage对象 怎么把这些对象转换为视频显示

这个数据是从摄像头过来的 uuimage都是不同的对象 怎么能把这些uiimage变成视频展示出来呢 如果不断地更新UIImageVIew的image的话 会内存不足导致程序闪退

  • 写回答

1条回答 默认 最新

  • meichen8050753 2015-11-03 02:48
    关注

    dispatch_sync(dispatch_get_main_queue(), ^{
    CGSize imageSize = [UIScreen mainScreen].bounds.size;
    UIGraphicsBeginImageContext(imageSize);
    [targetView.layer renderInContext:UIGraphicsGetCurrentContext()];
    image = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    if (buffer == NULL){
    buffer = [self pixelBufferFromCGImage:[image CGImage] size:size];
    }

        if (buffer)
        {
                CFAbsoluteTime interval = (CFAbsoluteTimeGetCurrent() - startTime) * 1000;
                CMTime currentSampleTime = CMTimeMake((int)interval, 1000);
    
                if(![adaptor appendPixelBuffer:buffer withPresentationTime:currentSampleTime]){
                        printf("FAIL");
                }
    
                ++frame;
                printf("removing buffer……");
                image = nil;
                CFRelease(buffer);
                //                        [videoWriterInput markCurrentPassAsFinished];
                //                        [videoWriter finishWritingWithCompletionHandler:^{
                //                            CGImageRelease(image.CGImage);
                //                        }];
                //
                buffer = NULL;
        }
    

    });
    要在一个同步队列里面做uiimage创建和压帧操作,不然uiimage对象是不会被释放掉的。

    评论

报告相同问题?

悬赏问题

  • ¥20 西南科技大学数字信号处理
  • ¥15 有两个非常“自以为是”烦人的问题急期待大家解决!
  • ¥30 STM32 INMP441无法读取数据
  • ¥15 R语言绘制密度图,一个密度曲线内fill不同颜色如何实现
  • ¥100 求汇川机器人IRCB300控制器和示教器同版本升级固件文件升级包
  • ¥15 用visualstudio2022创建vue项目后无法启动
  • ¥15 x趋于0时tanx-sinx极限可以拆开算吗
  • ¥15 pyqt信号槽连接写法
  • ¥500 把面具戴到人脸上,请大家贡献智慧,别用大模型回答,大模型的答案没啥用
  • ¥15 任意一个散点图自己下载其js脚本文件并做成独立的案例页面,不要作在线的,要离线状态。