in your sample app of cloud reco, I add a rootview controller (StartViewController) connected to storyboard , this view has a button used to push the view ( arParentViewController )
in CloudRecoAppDelegate, i remove everything and add below only
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
CRQCARutils *qUtils = [CRQCARutils getInstance];
qUtils.deviceOrientationLock = DeviceOrientationLockAuto;
return YES;
}
in StartViewController
- (IBAction)Start:(id)sender {
arParentViewController = [[CRParentViewController alloc] initWithNibName:nil bundle:nil];
[self.navigationController pushViewController:arParentViewController animated:YES];
}
compile and run normally, but i press the button for pushing arParentViewController, it show black screen, the camera seems running and detecting well . but it fail to show the recognition result
2013-03-04 17:50:17.175 CloudReco[15265:907] ARVC: loadView
2013-03-04 17:50:17.303 CloudReco[15265:907] QCAR OpenGL flag: 2
2013-03-04 17:50:17.308 CloudReco[15265:907] ARVC: viewDidLoad
2013-03-04 17:50:17.355 CloudReco[15265:907] QCARutils onCreate()
2013-03-04 17:50:17.357 CloudReco[15265:907] APPSTATUS_INIT_APP
2013-03-04 17:50:17.359 CloudReco[15265:907] APPSTATUS_INIT_QCAR
2013-03-04 17:50:17.370 CloudReco[15265:907] ARParentVC: loading
2013-03-04 17:50:17.372 CloudReco[15265:907] ARVC: Rotating to Landscape Right
2013-03-04 17:50:17.374 CloudReco[15265:907] ARParentVC: appearing
2013-03-04 17:50:17.376 CloudReco[15265:907] ARVC: Rotating to Landscape Right
2013-03-04 17:50:17.378 CloudReco[15265:907] ARVC: viewWillAppear
2013-03-04 17:50:17.439 CloudReco[15265:1a07] INFO/AR(15265) 2013-03-04 17:50:17: QCAR SDK version 2.0.30
2013-03-04 17:50:17.649 CloudReco[15265:907] APPSTATUS_INIT_TRACKER
2013-03-04 17:50:17.682 CloudReco[15265:907] Successfully initialized ImageTracker.
2013-03-04 17:50:17.683 CloudReco[15265:907] APPSTATUS_INIT_APP_AR
2013-03-04 17:50:17.684 CloudReco[15265:907] APPSTATUS_LOAD_TRACKER
2013-03-04 17:50:17.686 CloudReco[15265:1a0b] Initialize Visual Search in background thread
2013-03-04 17:50:17.809 CloudReco[15265:907] ARParentVC: appeared
2013-03-04 17:50:17.810 CloudReco[15265:907] ARVC: viewDidAppear
2013-03-04 17:50:17.811 CloudReco[15265:907] QCARutils onResume()
2013-03-04 17:50:18.369 CloudReco[15265:907] APPSTATUS_INITED
2013-03-04 17:50:18.495 CloudReco[15265:907] *** -[AVCaptureVideoDataOutput setVideoSettings:] - videoSettings dictionary contains one or more unsupported (ignored) keys: (
Width,
AVVideoScalingModeKey,
Height
)
2013-03-04 17:50:18.502 CloudReco[15265:907] DEBUG/AR(15265) UIView has CAEAGLLayer class
2013-03-04 17:50:18.503 CloudReco[15265:907] DEBUG/AR(15265) UIView responds to selector renderFrameQCAR
2013-03-04 17:50:18.511 CloudReco[15265:907] ERROR/AR(15265) 2013-03-04 17:50:18: VideoBackgroundConfig with screen size of zero received, skipping config step
2013-03-04 17:50:18.512 CloudReco[15265:907] Video background get data 0 0
2013-03-04 17:50:18.513 CloudReco[15265:907] APPSTATUS_CAMERA_RUNNING
2013-03-04 17:50:18.522 CloudReco[15265:907] ERROR/AR(15265) 2013-03-04 17:50:18: VideoBackgroundConfig with screen size of zero received, skipping config step
2013-03-04 17:50:18.523 CloudReco[15265:907] Video background get data 0 0
2013-03-04 17:50:19.230 CloudReco[15265:907] Failed to make complete framebuffer object 8cd6
2013-03-04 17:50:19.234 CloudReco[15265:5f0b] ERROR/AR(15265) 2013-03-04 17:50:19: VideoBackgroundConfig with screen size of zero received, skipping config step
2013-03-04 17:50:19.236 CloudReco[15265:5f0b] Video background get data 0 0
2013-03-04 17:50:20.334 CloudReco[15265:752b] INFO/AR(15265) 2013-03-04 17:50:20: Completed CloudReco transaction with ID 'e898e221f313406c9a51cd4c027645de'
2013-03-04 17:50:28.398 CloudReco[15265:921f] INFO/AR(15265) 2013-03-04 17:50:28: Completed CloudReco transaction with ID '0978ed19115a4ad392bb8d5b28574bcb'
2013-03-04 17:50:30.499 CloudReco[15265:92e7] INFO/AR(15265) 2013-03-04 17:50:30: Completed CloudReco transaction with ID 'be5750e1515645c1b6c2eb87e6f7a23a'
2013-03-04 17:50:39.153 CloudReco[15265:418b] INFO/AR(15265) 2013-03-04 17:50:39: Completed CloudReco transaction with ID '56e7f8fbf06d48bb8c753ec62429d4c6'
2013-03-04 17:50:39.273 CloudReco[15265:941b] INFO/AR(15265) 2013-03-04 17:50:39: ImageTracker: Successfully created dataset
2013-03-04 17:50:39.313 CloudReco[15265:941b] INFO/AR(15265) 2013-03-04 17:50:39: Successfully created ImageTarget.
2013-03-04 17:50:39.317 CloudReco[15265:941b] ********** 27e2114a40894606ab746a12401356ab
2013-03-04 17:50:39.318 CloudReco[15265:941b] Successfully created new trackable 'polyuLibrary' with rating '1'.
2013-03-04 17:50:39.411 CloudReco[15265:5f0b] ********** 27e2114a40894606ab746a12401356ab
2013-03-04 17:50:39.412 CloudReco[15265:5f0b] polyuLibrary.json
2013-03-04 17:50:39.413 CloudReco[15265:5f0b] ########## http://myweb.polyu.edu.hk/~10519118d/ios/json/polyuLibrary.json
2013-03-04 17:50:39.451 CloudReco[15265:5f0b] *** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM objectAtIndex:]: index 0 beyond bounds for empty array'
*** First throw call stack:
(0x320872a3 0x39f2797f 0x31fd2b75 0xa785 0xae509 0xadfd5 0x3a37e311 0x3a37e1d8)
libc++abi.dylib: terminate called throwing an exception
(lldb)
You need to understand the errors:
Property 'arViewSize' cannot be found in forward class object 'CRParentViewController'
This means you have missed a step in my original instruction. Look for this:
@property (nonatomic) CGSize arViewSize;
HTH
N