MacDev 板


LINE

我最近想写一个即时修改isight所抓取的影像 并套用CIFilter套用特效的小程式 由於在iMac 3.0G Core 2Duo(OSX 10.6.8, 4G ram)上面有效能问题 用起来会顿顿的 所以打算把它改成多线程版 不过使用NSThread detachNewThread方法後 发现有稳定性问题 不定时会出现QTCALayerRendererPendingQWorkLoop的 exex_bad_access错误 想请问的是 1. 使用multi thread执行CIFilter是否可行? 可行的话,有什麽特殊设定或问题要注意嘛? 2. 若只是想抓QTCapterInput并套用滤镜 (我不会影像处理演算法,所以只能使用现有的滤镜功能) 然後显示到萤幕上(不储存) 有没有比较节省资源的作法或best practice可以参考? 3. 我的电脑是2010 MBP, 2.6G i7, 8G ram, lion 朋友电脑是imac, 3.06G, 4G ram, 10.8.6 同样的程式在他电脑上会有明显的反应迟缓问题 但我的电脑上完全没有问题 以下是大致作法 MainClass: /* 使用QTCaptureDevice抓取装置 设定到QTCaputureDeviceInput 并连接到QTSession中 最後显示到QTCaptureview 其中在viewwilldisplayimage使用外部影像处理物件 */ @property (nonatomic, retain) CIprocessor* CIpr; - (CIImage *)view:(QTCaptureView *)view willDisplayImage:(CIImage *)image { CIImage* ret= [CIpr returnCIImage:image]; if (!ret) { ret=image; } return ret; } 影像处理物件 /* 由於detachNewThread不能接受回传 所以我建立了另一个类别 ImgProc 使用属性方式回传CIImage */ @interface CIprocessor : NSObject{ CIImage* tmpImage; } @property (nonatomic, readwrite, retain) CIImage* tmpInput; @implement CIprocessor { -(CIImage*)returnCIImage:(CIImage*)imgInput{ //将工作丢到thread,会造成以下错误 //QTCALayerRendererPendingQWorkLoop EXEC_BAD_ACCESS [NSThread detachNewThreadSelector:@selector(threadImage) toTarget:self withObject:imgInput]; //不使用thread, 没错误问题,不过在其他电脑上会有键盘反应迟缓 //视窗lag等问题,虽然cpu loading不高.. //[self threadImage:imgInput]; return self.tmpImage; } -(void)threadImage:(CIImage*)inputImage{ CIImage* imgThread; imgThread=[self mainProcess:inputImage]; self.tmpImage=imgThread; } -(CIImage*)mainProcess:(CIImage*)inputImage{ //套用Filter处理影像并回传 } } --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.24.52.233







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP