Apple" QA:1702:How to capture video frames from the camera as images using AV Foundation"在没有额外的ivar代码的情况下被打破了#34;
我找到了一个修复 - 但是什么是伊娃,在这种情况下它做了什么?
以下是必须添加到Apple的TestAVViewController.h文件中的代码:
@interface TestAVViewController : UIViewController <AVCaptureVideoDataOutputSampleBufferDelegate>
@property AVCaptureSession *session;
@end
以下是必须添加到Apple的TestAVViewController.m文件中的代码:
@implementation TestAVViewController
@synthesize session=ivarSession; // this creates an ivar
通过添加这两个部分(Apple未提供),以下行将停止抛出编译错误:
[self setSession:session];
什么是&#34; session = ivarSession&#34;这样做是为了防止编译错误?为什么它会使Apple的代码有效?
答案 0 :(得分:0)
您添加的代码会创建并初始化成员变量。
您确定正确复制了代码吗?我在您链接到的页面上查看的版本session
已定义并初始化在- (void)setupCaptureSession
消息的顶部,这是它用于的唯一消息。这应该是本地的变量,而不是成员变量。