@Override public void onPause() { stopChoreographerThread(); final CountDownLatch cdl; if (null != mSurfaceView) { mSurfaceView.onPause(); cdl = new CountDownLatch(1); mSurfaceView.queueEvent( new Runnable() { @Override public void run() { // these two must happen on the gl thread nativeLeaveVrMode(mPtr); destroySurfaceForTimeWarp(); cdl.countDown(); } }); } else { cdl = null; } if (mVrApiInitialized) { if (null != cdl) { try { cdl.await(); } catch (final InterruptedException ignored) { } } nativeUninitializeVrApi(mPtr); mVrApiInitialized = false; } }
/** onClick handler for "record" button. */ public void clickToggleRecording(@SuppressWarnings("unused") View unused) { mRecordingEnabled = !mRecordingEnabled; mGLView.queueEvent( new Runnable() { @Override public void run() { // notify the renderer that we want to change the encoder's state mRenderer.changeRecordingState(mRecordingEnabled); } }); updateControls(); }
/*----------------------queueEvent-------------------------------------------------------------------------------*/ @Override public void queueEvent(Runnable r) { Log.d(TAG, "queueEvent()"); if (mRenderer.MidasisInitialized) { Log.d(TAG, "mRenderer.isInitialized == true"); super.queueEvent(r); } else { Log.d(TAG, "mRenderer.isInitialized == false"); mRenderer.queuePostInitEvent(r); } }
// spinner selected @Override public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) { Spinner spinner = (Spinner) parent; final int filterNum = spinner.getSelectedItemPosition(); Log.d(TAG, "onItemSelected: " + filterNum); mGLView.queueEvent( new Runnable() { @Override public void run() { // notify the renderer that we want to change the encoder's state mRenderer.changeFilterMode(filterNum); } }); }
@Override protected void onPause() { Log.d(TAG, "onPause -- releasing camera"); super.onPause(); releaseCamera(); mGLView.queueEvent( new Runnable() { @Override public void run() { // Tell the renderer that it's about to be paused so it can clean up. mRenderer.notifyPausing(); } }); mGLView.onPause(); Log.d(TAG, "onPause complete"); }
@Override protected void onResume() { Log.d(TAG, "onResume -- acquiring camera"); super.onResume(); updateControls(); // openCamera(640, 480); // updates mCameraPreviewWidth/Height openCamera(1280, 720); // updates mCameraPreviewWidth/Height mGLView.onResume(); mGLView.queueEvent( new Runnable() { @Override public void run() { mRenderer.setCameraPreviewSize(mCameraPreviewWidth, mCameraPreviewHeight); } }); Log.d(TAG, "onResume complete: " + this); }
@Override protected void onResume() { Log.d(TAG, "onResume -- acquiring camera"); super.onResume(); updateControls(); openCamera(1080, 1080); // updates mCameraPreviewWidth/Height // Set the preview aspect ratio. AspectFrameLayout layout = (AspectFrameLayout) findViewById(R.id.cameraPreview_afl); layout.setAspectRatio((double) mCameraPreviewWidth / mCameraPreviewHeight); mGLView.onResume(); mGLView.queueEvent( new Runnable() { @Override public void run() { mRenderer.setCameraPreviewSize(mCameraPreviewWidth, mCameraPreviewHeight); } }); Log.d(TAG, "onResume complete: " + this); }