public void stopRecording() { mGLSurfaceView.queueEvent(new Runnable() { @Override public void run() { if (mVideoEncoder.isRecording()) { mVideoEncoder.stopRecording(); } } }); }
public void setGlFilter(final GlFilter filter) { glView.queueEvent(new Runnable() { @Override public void run() { if (glFilter != null) { glFilter.release(); } glFilter = filter; isNewShader = true; glView.requestRender(); } }); }
public void startRecording() { mGLSurfaceView.queueEvent(new Runnable() { @Override public void run() { if (!mVideoEncoder.isRecording()) { File output = CameraHelper.getOutputMediaFile(CameraHelper.MEDIA_TYPE_VIDEO, ""); LogUtils.v(String.format("startRecording: %s", output)); mVideoEncoder.startRecording(new BaseMovieEncoder.EncoderConfig(output, EGL14.eglGetCurrentContext())); } } }); }
public void destroy() { if (!IS_SUPPORTED) { return; } if (USE_TEXTURE_VIEW) { mTextureView.destroy(); } else { mGLSurfaceView.queueEvent(mFreeTextures); } }
public void release() { glView.queueEvent(new Runnable() { @Override public void run() { if (glFilter != null) { glFilter.release(); } } }); }
public void release() { glView.queueEvent(new Runnable() { @Override public void run() { if (glFilter != null) { glFilter.release(); } } }); }
public void setVideoEncoder(final MediaVideoEncoder encoder) { glView.queueEvent(new Runnable() { @Override public void run() { synchronized (GlPreviewRenderer.this) { if (encoder != null) { encoder.setEglContext(EGL14.eglGetCurrentContext(), texName); } videoEncoder = encoder; } } }); }
private void setVideoEncoder(final MediaVideoEncoder encoder) { mSurfaceView.queueEvent(new Runnable() { @Override public void run() { synchronized (mSurfaceView) { if (encoder != null) { encoder.setEglContext(EGL14.eglGetCurrentContext(), mTextureId); mMediaVideoEncode=encoder; } } } }); }
public void setGlFilter(final GlFilter filter) { glView.queueEvent(new Runnable() { @Override public void run() { if (glFilter != null) { glFilter.release(); } glFilter = filter; isNewShader = true; glView.requestRender(); } }); }
public void setVideoEncoder(final MediaVideoEncoder encoder) { glView.queueEvent(new Runnable() { @Override public void run() { synchronized (GlPreviewRenderer.this) { if (encoder != null) { encoder.setEglContext(EGL14.eglGetCurrentContext(), texName); } videoEncoder = encoder; } } }); }
public void destroy() { mGLSurfaceView.queueEvent(mFreeTextures); }
/** * Queues a runnable to be executed on this WorldWindow's OpenGL thread. Must not be used to affect changes to this * WorldWindow's state, including the Navigator, Globe and Layers. See the Android developers guide on <a * href="http://developer.android.com/training/multiple-threads/communicate-ui.html">Communicating with the UI * Thread</a> instead. * * @param r the runnable to execute * * @deprecated See <a href="http://developer.android.com/training/multiple-threads/communicate-ui.html">Communicating * with the UI Thread</a> instead. */ @Deprecated @Override public void queueEvent(Runnable r) { super.queueEvent(r); }
public void setFilter(final GLFilter filter) { GLFilter oldFilter = mFilter != null ? mFilter : null; mFilter = filter; if (oldFilter != null) oldFilter.destroy(); if(isSurfaceCreate) { mAttachGlSurfaceView.queueEvent(new Runnable() { @Override public void run() { onFilterChanged(false); if (isSurfaceCreate && mFilter!=null &&!mFilter.isInitialized()) { if (mProgramCacheMap != null) mFilter.create(mProgramCacheMap); } if (mAttachGlSurfaceView != null && mFilter!=null && isSurfaceCreate) mAttachGlSurfaceView.requestRender(); } }); } }
private boolean onKey(View v, int keyCode, KeyEvent event) { surfaceView.queueEvent(() -> postKeyEvent(translateKeyCode(keyCode), event.getAction() == ACTION_DOWN)); return true; }
public int stopPreview() { if (!isStarting) return -1; isStarting = false; mGLSurfaceView.queueEvent(new Runnable() { @Override public void run() { if (mNodeCameraViewCallback != null) { mNodeCameraViewCallback.OnDestroy(); } } }); removeView(mGLSurfaceView); mGLSurfaceView = null; try { if (mCamera != null) { mCamera.stopPreview(); mCamera.release(); mCamera = null; } } catch (Exception e) { e.printStackTrace(); } return 0; }
@Override protected void onResume() { super.onResume(); surfaceView.onResume(); surfaceView.queueEvent(() -> { SilenceEngine.gameLoop.onFocusGain(); if (SilenceEngine.audio != null) ((AndroidAudioDevice) SilenceEngine.audio).onFocusGain(); }); }
@Override protected void onPause() { surfaceView.queueEvent(() -> { SilenceEngine.gameLoop.onFocusLost(); if (SilenceEngine.audio != null) ((AndroidAudioDevice) SilenceEngine.audio).onFocusLost(); }); super.onPause(); surfaceView.onPause(); }
final float y = e.getY(); surfaceView.queueEvent(() -> postTouchEvent(FINGER_0, down, x, y)); break; surfaceView.queueEvent(() -> postTouchEvent(finger, isDown, x, y)); break; final float y = e.getY(i); surfaceView.queueEvent(() -> postTouchEvent(finger, true, x, y)); surfaceView.queueEvent(() -> postTouchEvent(finger, false, 0, 0));
mCameraWidth = getPreviewSize().width; mCameraHeight = getPreviewSize().height; mGLSurfaceView.queueEvent(new Runnable() { @Override public void run() {
protected void recycleTexture(GL10 gl) { if(gl != null && mTextureId != null && mTextureId[0] != 0) { if(PLUtils.getAndroidVersion() < 3f) { gl.glDeleteTextures(1, mTextureId, 0); mTextureId[0] = 0; mGLWrapper = null; mIsValid = false; } else if(mGLWrapper != null) { GLSurfaceView glSurfaceView = mGLWrapper.getGLSurfaceView(); if(glSurfaceView != null) glSurfaceView.queueEvent(new PLRecycleTextureRunnable(this)); } } }