Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Releases the object - used for late session cleanup
- static void capture_cleanup(void* p)
- {
- NewPostPreviewViewController* csc = (NewPostPreviewViewController*)p;
- [csc release]; // releases capture session if dealloc is called
- }
- // Stops the capture - this stops the capture, and upon stopping completion releases self.
- - (void)stopCapture {
- // Retain self, it will be released in capture_cleanup. This is to ensure cleanup is done properly,
- // without the object being released in the middle of it.
- [self retain];
- // Stop the session
- [session stopRunning];
- // Add cleanup code when dispatch queue end
- dispatch_queue_t queue = dispatch_queue_create("VideoDataOutputQueue", NULL);
- dispatch_set_context(queue, self);
- dispatch_set_finalizer_f(queue, capture_cleanup);
- [dataOutput setSampleBufferDelegate: self queue: queue];
- dispatch_release(queue);
- }
- let p: UnsafeMutablePointer<NewPostPreviewViewController> = UnsafeMutablePointer.alloc(sizeof(NewPostPreviewViewController))
- p.initialize(self)
- var videoDataOutputQueue = dispatch_queue_create("VideoDataOutputQueue", nil)
- dispatch_set_context(videoDataOutputQueue, p)
- dispatch_set_finalizer_f(videoDataOutputQueue, ????);
- self.videoDataOutput!.setSampleBufferDelegate(self, queue: videoDataOutputQueue)
- dispatch_release(videoDataOutputQueue)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement