Decouple camera and encoding

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
camera2
Leo Ma 8 years ago
parent a36039093a
commit 9f5673a0d8

@ -218,7 +218,7 @@ public class SrsCameraView extends GLSurfaceView implements GLSurfaceView.Render
return mCamId; return mCamId;
} }
private void enableEncoding() { public void enableEncoding() {
worker = new Thread(new Runnable() { worker = new Thread(new Runnable() {
@Override @Override
public void run() { public void run() {
@ -244,7 +244,7 @@ public class SrsCameraView extends GLSurfaceView implements GLSurfaceView.Render
mIsEncoding = true; mIsEncoding = true;
} }
private void disableEncoding() { public void disableEncoding() {
mIsEncoding = false; mIsEncoding = false;
mGLIntBufferCache.clear(); mGLIntBufferCache.clear();
@ -268,8 +268,6 @@ public class SrsCameraView extends GLSurfaceView implements GLSurfaceView.Render
} }
} }
enableEncoding();
Camera.Parameters params = mCamera.getParameters(); Camera.Parameters params = mCamera.getParameters();
List<String> supportedFocusModes = params.getSupportedFocusModes(); List<String> supportedFocusModes = params.getSupportedFocusModes();

@ -139,6 +139,8 @@ public class SrsPublisher {
return; return;
} }
mCameraView.enableEncoding();
startAudio(); startAudio();
} }
@ -248,7 +250,6 @@ public class SrsPublisher {
} }
public void switchCameraFace(int id) { public void switchCameraFace(int id) {
if (mEncoder.isEnabled()) {
mCameraView.stopCamera(); mCameraView.stopCamera();
mCameraView.setCameraId(id); mCameraView.setCameraId(id);
if (id == 0) { if (id == 0) {
@ -258,7 +259,6 @@ public class SrsPublisher {
} }
mCameraView.startCamera(); mCameraView.startCamera();
} }
}
public void setRtmpHandler(RtmpHandler handler) { public void setRtmpHandler(RtmpHandler handler) {
mFlvMuxer = new SrsFlvMuxer(handler); mFlvMuxer = new SrsFlvMuxer(handler);

Loading…
Cancel
Save