@Override @MainThread public void attachViews(OnNewVideoLayoutListener onNewVideoLayoutListener) { if (mSurfacesState.get() != SURFACE_STATE_INIT || mSurfaceHelpers[ID_VIDEO] == null) throw new IllegalStateException("already attached or video view not configured"); mSurfacesState.set(SURFACE_STATE_ATTACHED); synchronized (mNativeLock) { mOnNewVideoLayoutListener = onNewVideoLayoutListener; mNativeLock.buffersGeometryConfigured = false; mNativeLock.buffersGeometryAbort = false; } for (int id = 0; id < ID_MAX; ++id) { final SurfaceHelper surfaceHelper = mSurfaceHelpers[id]; if (surfaceHelper != null) surfaceHelper.attach(); } }
@Override @MainThread public void attachViews() { if (mSurfacesState.get() != SURFACE_STATE_INIT || mSurfaceHelpers[ID_VIDEO] == null) throw new IllegalStateException("already attached or video view not configured"); mSurfacesState.set(SURFACE_STATE_ATTACHED); synchronized (mBuffersGeometryCond) { mBuffersGeometryCond.configured = false; mBuffersGeometryCond.abort = false; } for (int id = 0; id < ID_MAX; ++id) { final SurfaceHelper surfaceHelper = mSurfaceHelpers[id]; if (surfaceHelper != null) surfaceHelper.attach(); } }
@Override @MainThread public void attachViews(OnNewVideoLayoutListener onNewVideoLayoutListener) { if (mSurfacesState.get() != SURFACE_STATE_INIT || mSurfaceHelpers[ID_VIDEO] == null) throw new IllegalStateException("already attached or video view not configured"); mSurfacesState.set(SURFACE_STATE_ATTACHED); synchronized (mNativeLock) { mOnNewVideoLayoutListener = onNewVideoLayoutListener; mNativeLock.buffersGeometryConfigured = false; mNativeLock.buffersGeometryAbort = false; } for (int id = 0; id < ID_MAX; ++id) { final SurfaceHelper surfaceHelper = mSurfaceHelpers[id]; if (surfaceHelper != null) surfaceHelper.attach(); } }
@Override @MainThread public void attachViews(OnNewVideoLayoutListener onNewVideoLayoutListener) { if (mSurfacesState.get() != SURFACE_STATE_INIT || mSurfaceHelpers[ID_VIDEO] == null) throw new IllegalStateException("already attached or video view not configured"); mSurfacesState.set(SURFACE_STATE_ATTACHED); synchronized (mNativeLock) { mOnNewVideoLayoutListener = onNewVideoLayoutListener; mNativeLock.buffersGeometryConfigured = false; mNativeLock.buffersGeometryAbort = false; } for (int id = 0; id < ID_MAX; ++id) { final SurfaceHelper surfaceHelper = mSurfaceHelpers[id]; if (surfaceHelper != null) surfaceHelper.attach(); } }
@Override @MainThread public void attachViews() { if (mSurfacesState.get() != SURFACE_STATE_INIT || mSurfaceHelpers[ID_VIDEO] == null) throw new IllegalStateException("already attached or video view not configured"); mSurfacesState.set(SURFACE_STATE_ATTACHED); synchronized (mBuffersGeometryCond) { mBuffersGeometryCond.configured = false; mBuffersGeometryCond.abort = false; } for (int id = 0; id < ID_MAX; ++id) { final SurfaceHelper surfaceHelper = mSurfaceHelpers[id]; if (surfaceHelper != null) surfaceHelper.attach(); } }