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

Issue 11860002: Add video capture on Android. (Closed)

Created:
7 years, 11 months ago by wjia(left Chromium)
Modified:
7 years, 10 months ago
CC:
chromium-reviews, joi+watch-content_chromium.org, feature-media-reviews_chromium.org, jam, jochen+watch_chromium.org, darin-cc_chromium.org
Visibility:
Public.

Description

Add video capture on Android. The capture video frames are obtained by using camera's PreviewCallbackWithBuffer. Most of VideoCaptureDevice unit tests are disabled on Android due to different data flow and threading. BUG=161417 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=181839

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : fix threading #

Patch Set 4 : support generic rotation #

Patch Set 5 : final #

Patch Set 6 : ready for review #

Total comments: 28

Patch Set 7 : code review #

Total comments: 8

Patch Set 8 : #

Total comments: 4

Patch Set 9 : fix unit tests #

Total comments: 23

Patch Set 10 : code review and rebase #

Patch Set 11 : #

Total comments: 2

Patch Set 12 : code review #

Total comments: 88

Patch Set 13 : code review and rebase #

Total comments: 24

Patch Set 14 : rebase #

Patch Set 15 : code review #

Total comments: 8

Patch Set 16 : more code review #

Total comments: 4

Patch Set 17 : restore some missing lines #

Patch Set 18 : rebase #

Patch Set 19 : add back CHECK against width #

Total comments: 26

Patch Set 20 : code review #

Total comments: 13

Patch Set 21 : code review #

Total comments: 4

Patch Set 22 : catch only IOException #

Unified diffs Side-by-side diffs Delta from patch set Stats (+898 lines, -3 lines) Patch
A media/base/android/java/src/org/chromium/media/VideoCapture.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 1 chunk +338 lines, -0 lines 0 comments Download
M media/base/android/media_jni_registrar.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 2 chunks +3 lines, -0 lines 0 comments Download
M media/media.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 4 chunks +32 lines, -3 lines 0 comments Download
A media/video/capture/android/video_capture_device_android.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +80 lines, -0 lines 0 comments Download
A media/video/capture/android/video_capture_device_android.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +424 lines, -0 lines 0 comments Download
M media/video/capture/video_capture_device_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 3 chunks +21 lines, -0 lines 0 comments Download

Messages

Total messages: 33 (0 generated)
wjia(left Chromium)
The video capture device for android is ready. Please start with patch set 6. Thanks!
7 years, 11 months ago (2013-01-22 20:07:07 UTC) #1
qinmin
https://codereview.chromium.org/11860002/diff/34001/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/34001/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode175 media/base/android/java/src/org/chromium/media/VideoCapture.java:175: byte[] buffer = new byte[bufSize]; indent by 4 https://codereview.chromium.org/11860002/diff/34001/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode282 ...
7 years, 11 months ago (2013-01-22 21:31:42 UTC) #2
wjia(left Chromium)
PTAL. https://codereview.chromium.org/11860002/diff/34001/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/34001/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode175 media/base/android/java/src/org/chromium/media/VideoCapture.java:175: byte[] buffer = new byte[bufSize]; On 2013/01/22 21:31:42, ...
7 years, 11 months ago (2013-01-22 22:40:00 UTC) #3
zhongping.wang
https://codereview.chromium.org/11860002/diff/34001/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/34001/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode211 media/base/android/java/src/org/chromium/media/VideoCapture.java:211: if (mIsRunning) { not unlock mPreviewBufferLock https://codereview.chromium.org/11860002/diff/34001/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode236 media/base/android/java/src/org/chromium/media/VideoCapture.java:236: if ...
7 years, 11 months ago (2013-01-23 05:09:24 UTC) #4
leozwang
https://codereview.chromium.org/11860002/diff/43001/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/43001/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode63 media/base/android/java/src/org/chromium/media/VideoCapture.java:63: Log.d("JAVA VideoCapture", "createVideoCapture: " + id); can you define ...
7 years, 11 months ago (2013-01-23 23:36:24 UTC) #5
wjia(left Chromium)
Thanks! PTAL. Now all try bots are green. https://codereview.chromium.org/11860002/diff/34001/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/34001/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode211 media/base/android/java/src/org/chromium/media/VideoCapture.java:211: if ...
7 years, 11 months ago (2013-01-24 05:39:16 UTC) #6
qinmin
https://codereview.chromium.org/11860002/diff/38012/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/38012/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode30 media/base/android/java/src/org/chromium/media/VideoCapture.java:30: public class VideoCapture implements PreviewCallback, OnFrameAvailableListener { add @JNINamespace("xxxx"), ...
7 years, 11 months ago (2013-01-24 18:41:34 UTC) #7
leozwang2
some nits. https://codereview.chromium.org/11860002/diff/38012/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/38012/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode58 media/base/android/java/src/org/chromium/media/VideoCapture.java:58: private static final String TAG = "JAVA ...
7 years, 11 months ago (2013-01-24 19:01:59 UTC) #8
wjia(left Chromium)
PTAL. https://codereview.chromium.org/11860002/diff/38012/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/38012/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode30 media/base/android/java/src/org/chromium/media/VideoCapture.java:30: public class VideoCapture implements PreviewCallback, OnFrameAvailableListener { On ...
7 years, 11 months ago (2013-01-24 22:18:58 UTC) #9
leozwang
https://codereview.chromium.org/11860002/diff/38012/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/38012/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode58 media/base/android/java/src/org/chromium/media/VideoCapture.java:58: private static final String TAG = "JAVA VideoCapture"; A ...
7 years, 11 months ago (2013-01-24 22:30:41 UTC) #10
qinmin
lgtm https://codereview.chromium.org/11860002/diff/41018/media/video/capture/android/video_capture_device_android.cc File media/video/capture/android/video_capture_device_android.cc (right): https://codereview.chromium.org/11860002/diff/41018/media/video/capture/android/video_capture_device_android.cc#newcode273 media/video/capture/android/video_capture_device_android.cc:273: current_settings_.width = remove 1 whitespace
7 years, 11 months ago (2013-01-27 05:36:32 UTC) #11
wjia(left Chromium)
adding owners for stamp: @fischman for media. @yfriedman for android. https://codereview.chromium.org/11860002/diff/41018/media/video/capture/android/video_capture_device_android.cc File media/video/capture/android/video_capture_device_android.cc (right): https://codereview.chromium.org/11860002/diff/41018/media/video/capture/android/video_capture_device_android.cc#newcode273 ...
7 years, 11 months ago (2013-01-27 20:25:33 UTC) #12
Ami GONE FROM CHROMIUM
https://codereview.chromium.org/11860002/diff/50001/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/50001/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode5 media/base/android/java/src/org/chromium/media/VideoCapture.java:5: package org.chromium.media; Didn't really review this once I realized ...
7 years, 10 months ago (2013-01-28 23:55:47 UTC) #13
Yaron
https://codereview.chromium.org/11860002/diff/50001/content/shell/android/java/AndroidManifest.xml File content/shell/android/java/AndroidManifest.xml (right): https://codereview.chromium.org/11860002/diff/50001/content/shell/android/java/AndroidManifest.xml#newcode67 content/shell/android/java/AndroidManifest.xml:67: <uses-permission android:name="android.permission.CAMERA" /> You need to add this to ...
7 years, 10 months ago (2013-01-28 23:58:51 UTC) #14
wjia(left Chromium)
PTAL. https://codereview.chromium.org/11860002/diff/50001/content/shell/android/java/AndroidManifest.xml File content/shell/android/java/AndroidManifest.xml (right): https://codereview.chromium.org/11860002/diff/50001/content/shell/android/java/AndroidManifest.xml#newcode67 content/shell/android/java/AndroidManifest.xml:67: <uses-permission android:name="android.permission.CAMERA" /> On 2013/01/28 23:58:51, Yaron wrote: ...
7 years, 10 months ago (2013-01-30 18:25:47 UTC) #15
Ami GONE FROM CHROMIUM
https://codereview.chromium.org/11860002/diff/50001/media/video/capture/android/video_capture_device_android.cc File media/video/capture/android/video_capture_device_android.cc (right): https://codereview.chromium.org/11860002/diff/50001/media/video/capture/android/video_capture_device_android.cc#newcode31 media/video/capture/android/video_capture_device_android.cc:31: void RotatePlaneByPixels(uint8* src, uint8* dest, int width, int height, ...
7 years, 10 months ago (2013-01-30 19:46:23 UTC) #16
wjia(left Chromium)
PTAL (patch set 15). https://codereview.chromium.org/11860002/diff/50001/media/video/capture/android/video_capture_device_android.cc File media/video/capture/android/video_capture_device_android.cc (right): https://codereview.chromium.org/11860002/diff/50001/media/video/capture/android/video_capture_device_android.cc#newcode31 media/video/capture/android/video_capture_device_android.cc:31: void RotatePlaneByPixels(uint8* src, uint8* dest, ...
7 years, 10 months ago (2013-02-06 00:45:33 UTC) #17
Ami GONE FROM CHROMIUM
LGTM % nits and locking business. https://codereview.chromium.org/11860002/diff/78001/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/78001/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode72 media/base/android/java/src/org/chromium/media/VideoCapture.java:72: // Returns 0 ...
7 years, 10 months ago (2013-02-06 04:10:46 UTC) #18
wjia(left Chromium)
Thanks! https://codereview.chromium.org/11860002/diff/78001/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/78001/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode72 media/base/android/java/src/org/chromium/media/VideoCapture.java:72: // Returns 0 on success, -1 otherwise. On ...
7 years, 10 months ago (2013-02-06 17:33:35 UTC) #19
Ami GONE FROM CHROMIUM
https://codereview.chromium.org/11860002/diff/78001/media/video/capture/android/video_capture_device_android.cc File media/video/capture/android/video_capture_device_android.cc (right): https://codereview.chromium.org/11860002/diff/78001/media/video/capture/android/video_capture_device_android.cc#newcode411 media/video/capture/android/video_capture_device_android.cc:411: state_ = kError; On 2013/02/06 17:33:35, wjia wrote: > ...
7 years, 10 months ago (2013-02-06 17:39:14 UTC) #20
wjia(left Chromium)
https://codereview.chromium.org/11860002/diff/78001/media/video/capture/android/video_capture_device_android.cc File media/video/capture/android/video_capture_device_android.cc (right): https://codereview.chromium.org/11860002/diff/78001/media/video/capture/android/video_capture_device_android.cc#newcode411 media/video/capture/android/video_capture_device_android.cc:411: state_ = kError; On 2013/02/06 17:39:14, Ami Fischman wrote: ...
7 years, 10 months ago (2013-02-06 17:52:29 UTC) #21
Ami GONE FROM CHROMIUM
https://codereview.chromium.org/11860002/diff/83001/media/video/capture/android/video_capture_device_android.cc File media/video/capture/android/video_capture_device_android.cc (right): https://codereview.chromium.org/11860002/diff/83001/media/video/capture/android/video_capture_device_android.cc#newcode276 media/video/capture/android/video_capture_device_android.cc:276: CHECK(current_settings_.height > 0 && !(current_settings_.height % 2)); On 2013/02/06 ...
7 years, 10 months ago (2013-02-06 18:46:45 UTC) #22
wjia(left Chromium)
https://codereview.chromium.org/11860002/diff/83001/media/video/capture/android/video_capture_device_android.cc File media/video/capture/android/video_capture_device_android.cc (right): https://codereview.chromium.org/11860002/diff/83001/media/video/capture/android/video_capture_device_android.cc#newcode276 media/video/capture/android/video_capture_device_android.cc:276: CHECK(current_settings_.height > 0 && !(current_settings_.height % 2)); On 2013/02/06 ...
7 years, 10 months ago (2013-02-06 19:02:28 UTC) #23
Yaron
lgtm % comments https://codereview.chromium.org/11860002/diff/74008/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/74008/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode58 media/base/android/java/src/org/chromium/media/VideoCapture.java:58: // Returns an instance of VideoCapture. ...
7 years, 10 months ago (2013-02-06 19:25:51 UTC) #24
Ami GONE FROM CHROMIUM
I'm worried about the rotation code in this CL (which I hadn't reviewed until now ...
7 years, 10 months ago (2013-02-06 20:13:42 UTC) #25
wjia(left Chromium)
Please review video_capture_device_android.* and VideoCapture.java. Other files have not been changed. https://codereview.chromium.org/11860002/diff/74008/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): ...
7 years, 10 months ago (2013-02-06 23:20:39 UTC) #26
Ami GONE FROM CHROMIUM
https://codereview.chromium.org/11860002/diff/74008/media/video/capture/android/video_capture_device_android.cc File media/video/capture/android/video_capture_device_android.cc (right): https://codereview.chromium.org/11860002/diff/74008/media/video/capture/android/video_capture_device_android.cc#newcode386 media/video/capture/android/video_capture_device_android.cc:386: ResetBufferI420(rotation_buffer_.get(), width, height); On 2013/02/06 23:20:39, wjia wrote: > ...
7 years, 10 months ago (2013-02-07 05:37:34 UTC) #27
wjia(left Chromium)
only video_capture_device_android.cc and VideoCapture.java have changes. https://codereview.chromium.org/11860002/diff/74008/media/video/capture/android/video_capture_device_android.cc File media/video/capture/android/video_capture_device_android.cc (right): https://codereview.chromium.org/11860002/diff/74008/media/video/capture/android/video_capture_device_android.cc#newcode386 media/video/capture/android/video_capture_device_android.cc:386: ResetBufferI420(rotation_buffer_.get(), width, height); ...
7 years, 10 months ago (2013-02-12 00:23:45 UTC) #28
Yaron
https://codereview.chromium.org/11860002/diff/83018/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/83018/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode178 media/base/android/java/src/org/chromium/media/VideoCapture.java:178: } catch (Exception ex) { My previous question about ...
7 years, 10 months ago (2013-02-12 00:29:23 UTC) #29
wjia(left Chromium)
https://codereview.chromium.org/11860002/diff/83018/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/83018/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode178 media/base/android/java/src/org/chromium/media/VideoCapture.java:178: } catch (Exception ex) { On 2013/02/12 00:29:23, Yaron ...
7 years, 10 months ago (2013-02-12 00:53:17 UTC) #30
Yaron
https://codereview.chromium.org/11860002/diff/83018/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/83018/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode178 media/base/android/java/src/org/chromium/media/VideoCapture.java:178: } catch (Exception ex) { On 2013/02/12 00:53:18, wjia ...
7 years, 10 months ago (2013-02-12 00:59:49 UTC) #31
wjia(left Chromium)
https://codereview.chromium.org/11860002/diff/83018/media/base/android/java/src/org/chromium/media/VideoCapture.java File media/base/android/java/src/org/chromium/media/VideoCapture.java (right): https://codereview.chromium.org/11860002/diff/83018/media/base/android/java/src/org/chromium/media/VideoCapture.java#newcode178 media/base/android/java/src/org/chromium/media/VideoCapture.java:178: } catch (Exception ex) { On 2013/02/12 00:59:49, Yaron ...
7 years, 10 months ago (2013-02-12 02:50:34 UTC) #32
Yaron
7 years, 10 months ago (2013-02-12 02:52:27 UTC) #33
lgtm

Powered by Google App Engine
This is Rietveld 408576698