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

@ -139,6 +139,8 @@ public class SrsPublisher {
return;
}
mCameraView.enableEncoding();
startAudio();
}
@ -248,16 +250,14 @@ public class SrsPublisher {
}
public void switchCameraFace(int id) {
if (mEncoder.isEnabled()) {
mCameraView.stopCamera();
mCameraView.setCameraId(id);
if (id == 0) {
mEncoder.setCameraBackFace();
} else {
mEncoder.setCameraFrontFace();
}
mCameraView.startCamera();
mCameraView.stopCamera();
mCameraView.setCameraId(id);
if (id == 0) {
mEncoder.setCameraBackFace();
} else {
mEncoder.setCameraFrontFace();
}
mCameraView.startCamera();
}
public void setRtmpHandler(RtmpHandler handler) {

Loading…
Cancel
Save