Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(312)

Unified Diff: media/capture/video/android/java/src/org/chromium/media/VideoCaptureCamera.java

Issue 1714913002: Reland: Move VideoCapture* files from media/base/android/... to media/capture/video/android/java/... (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: gyp-gn files and added a capture_jni_registrar Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/capture/video/android/java/src/org/chromium/media/VideoCaptureCamera.java
diff --git a/media/base/android/java/src/org/chromium/media/VideoCaptureCamera.java b/media/capture/video/android/java/src/org/chromium/media/VideoCaptureCamera.java
similarity index 85%
rename from media/base/android/java/src/org/chromium/media/VideoCaptureCamera.java
rename to media/capture/video/android/java/src/org/chromium/media/VideoCaptureCamera.java
index 9e10c689706acc746a1028c3526902024e959d06..afe58d361744bbffd5ca53f17d28b9bdf9c4646a 100644
--- a/media/base/android/java/src/org/chromium/media/VideoCaptureCamera.java
+++ b/media/capture/video/android/java/src/org/chromium/media/VideoCaptureCamera.java
@@ -24,11 +24,10 @@ import java.util.concurrent.locks.ReentrantLock;
**/
@JNINamespace("media")
@SuppressWarnings("deprecation")
-//TODO: is this class only used on ICS MR1 (or some later version) and above?
+// TODO: is this class only used on ICS MR1 (or some later version) and above?
@TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1)
-public abstract class VideoCaptureCamera extends VideoCapture
- implements android.hardware.Camera.PreviewCallback {
-
+public abstract class VideoCaptureCamera
+ extends VideoCapture implements android.hardware.Camera.PreviewCallback {
protected android.hardware.Camera mCamera;
// Lock to mutually exclude execution of OnPreviewFrame() and {start/stop}Capture().
protected ReentrantLock mPreviewBufferLock = new ReentrantLock();
@@ -42,8 +41,7 @@ public abstract class VideoCaptureCamera extends VideoCapture
private static final String TAG = "cr.media";
protected static android.hardware.Camera.CameraInfo getCameraInfo(int id) {
- android.hardware.Camera.CameraInfo cameraInfo =
- new android.hardware.Camera.CameraInfo();
+ android.hardware.Camera.CameraInfo cameraInfo = new android.hardware.Camera.CameraInfo();
try {
android.hardware.Camera.getCameraInfo(id, cameraInfo);
} catch (RuntimeException ex) {
@@ -66,9 +64,7 @@ public abstract class VideoCaptureCamera extends VideoCapture
return parameters;
}
- VideoCaptureCamera(Context context,
- int id,
- long nativeVideoCaptureDeviceAndroid) {
+ VideoCaptureCamera(Context context, int id, long nativeVideoCaptureDeviceAndroid) {
super(context, id, nativeVideoCaptureDeviceAndroid);
}
@@ -113,8 +109,9 @@ public abstract class VideoCaptureCamera extends VideoCapture
// Use the first range as the default chosen range.
int[] chosenFpsRange = listFpsRange.get(0);
int frameRateNearest = Math.abs(frameRateScaled - chosenFpsRange[0])
- < Math.abs(frameRateScaled - chosenFpsRange[1])
- ? chosenFpsRange[0] : chosenFpsRange[1];
+ < Math.abs(frameRateScaled - chosenFpsRange[1])
+ ? chosenFpsRange[0]
+ : chosenFpsRange[1];
int chosenFrameRate = (frameRateNearest + 999) / 1000;
int fpsRangeSize = Integer.MAX_VALUE;
for (int[] fpsRange : listFpsRange) {
@@ -125,18 +122,16 @@ public abstract class VideoCaptureCamera extends VideoCapture
fpsRangeSize = fpsRange[1] - fpsRange[0];
}
}
- Log.d(TAG, "allocate: fps set to %d, [%d-%d]", chosenFrameRate,
- chosenFpsRange[0], chosenFpsRange[1]);
+ Log.d(TAG, "allocate: fps set to %d, [%d-%d]", chosenFrameRate, chosenFpsRange[0],
+ chosenFpsRange[1]);
// Calculate size.
- List<android.hardware.Camera.Size> listCameraSize =
- parameters.getSupportedPreviewSizes();
+ List<android.hardware.Camera.Size> listCameraSize = parameters.getSupportedPreviewSizes();
int minDiff = Integer.MAX_VALUE;
int matchedWidth = width;
int matchedHeight = height;
for (android.hardware.Camera.Size size : listCameraSize) {
- int diff = Math.abs(size.width - width)
- + Math.abs(size.height - height);
+ int diff = Math.abs(size.width - width) + Math.abs(size.height - height);
Log.d(TAG, "allocate: supported (%d, %d), diff=%d", size.width, size.height, diff);
// TODO(wjia): Remove this hack (forcing width to be multiple
// of 32) by supporting stride in video frame buffer.
@@ -156,14 +151,14 @@ public abstract class VideoCaptureCamera extends VideoCapture
if (parameters.isVideoStabilizationSupported()) {
Log.d(TAG, "Image stabilization supported, currently: "
- + parameters.getVideoStabilization() + ", setting it.");
+ + parameters.getVideoStabilization() + ", setting it.");
parameters.setVideoStabilization(true);
} else {
Log.d(TAG, "Image stabilization not supported.");
}
if (parameters.getSupportedFocusModes().contains(
- android.hardware.Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO)) {
+ android.hardware.Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO)) {
parameters.setFocusMode(android.hardware.Camera.Parameters.FOCUS_MODE_CONTINUOUS_VIDEO);
} else {
Log.d(TAG, "Continuous focus mode not supported.");
@@ -188,15 +183,15 @@ public abstract class VideoCaptureCamera extends VideoCapture
GLES20.glGenTextures(1, mGlTextures, 0);
GLES20.glBindTexture(GL_TEXTURE_EXTERNAL_OES, mGlTextures[0]);
// No mip-mapping with camera source.
- GLES20.glTexParameterf(GL_TEXTURE_EXTERNAL_OES,
- GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_LINEAR);
- GLES20.glTexParameterf(GL_TEXTURE_EXTERNAL_OES,
- GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR);
+ GLES20.glTexParameterf(
+ GL_TEXTURE_EXTERNAL_OES, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_LINEAR);
+ GLES20.glTexParameterf(
+ GL_TEXTURE_EXTERNAL_OES, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_LINEAR);
// Clamp to edge is only option.
- GLES20.glTexParameteri(GL_TEXTURE_EXTERNAL_OES,
- GLES20.GL_TEXTURE_WRAP_S, GLES20.GL_CLAMP_TO_EDGE);
- GLES20.glTexParameteri(GL_TEXTURE_EXTERNAL_OES,
- GLES20.GL_TEXTURE_WRAP_T, GLES20.GL_CLAMP_TO_EDGE);
+ GLES20.glTexParameteri(
+ GL_TEXTURE_EXTERNAL_OES, GLES20.GL_TEXTURE_WRAP_S, GLES20.GL_CLAMP_TO_EDGE);
+ GLES20.glTexParameteri(
+ GL_TEXTURE_EXTERNAL_OES, GLES20.GL_TEXTURE_WRAP_T, GLES20.GL_CLAMP_TO_EDGE);
mSurfaceTexture = new SurfaceTexture(mGlTextures[0]);
mSurfaceTexture.setOnFrameAvailableListener(null);
@@ -282,10 +277,7 @@ public abstract class VideoCaptureCamera extends VideoCapture
// Local hook to allow derived classes to fill capture format and modify
// camera parameters as they see fit.
- abstract void setCaptureParameters(
- int width,
- int height,
- int frameRate,
+ abstract void setCaptureParameters(int width, int height, int frameRate,
android.hardware.Camera.Parameters cameraParameters);
// Local method to be overriden with the particular setPreviewCallback to be

Powered by Google App Engine
This is Rietveld 408576698