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

Issue 2528743002: Shape Detection: Implement FaceDetection on Mac as out-of-process service (Closed)

Created:
4 years ago by xianglu
Modified:
3 years, 11 months ago
CC:
Aaron Boodman, abarth-chromium, chromium-reviews, darin (slow to review), darin-cc_chromium.org, jam, mac-reviews_chromium.org, qsr+mojo_chromium.org, Reilly Grant (use Gerrit), viettrungluu+watch_chromium.org, yzshen+watch_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Shape Detection: Implement FaceDetection on Mac as out-of-process service This CL implements FaceDetection in //services/shape_detection. The Browser forwards requests from the Renderer process to a Utility process, which detects faces using Mac native CoreImage library and returns detection result. DESIGN_DOC=http://tinyurl.com/shape-detection-in-chromium BUG=659139 TEST=content/browser/shapedetection/shapedetection_browsertest.cc CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation Review-Url: https://codereview.chromium.org/2528743002 Cr-Commit-Position: refs/heads/master@{#445942} Committed: https://chromium.googlesource.com/chromium/src/+/6dd8f460d0fe4567a7cb14ee5a3acc183d5325fb

Patch Set 1 #

Total comments: 12

Patch Set 2 : Test content_browser_manifest.json #

Total comments: 6

Patch Set 3 : Test content_browser_manifest.json #

Total comments: 2

Patch Set 4 : rockot@ comments #

Patch Set 5 : Rebase onto CL2460723003 and yzshen1@ comments #

Total comments: 3

Patch Set 6 : Add explanatory comments, rebase #

Total comments: 12

Patch Set 7 : rockot@ comments #

Total comments: 12

Patch Set 8 : Use media::ScopedResultCallback #

Total comments: 8

Patch Set 9 : avi@ comments, rebase #

Total comments: 3

Patch Set 10 : Launch shape detection service as a utility process #

Total comments: 4

Patch Set 11 : Rebase #

Total comments: 1

Patch Set 12 : jochen@: namespace FaceDetectionServiceDispatcher #

Patch Set 13 : Rebase #

Patch Set 14 : Rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+466 lines, -8 lines) Patch
M content/browser/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +3 lines, -1 line 0 comments Download
M content/browser/renderer_host/render_process_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +7 lines, -0 lines 0 comments Download
M content/browser/service_manager/service_manager_context.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +5 lines, -0 lines 0 comments Download
A content/browser/shapedetection/face_detection_service_dispatcher.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +33 lines, -0 lines 0 comments Download
M content/browser/shapedetection/shapedetection_browsertest.cc View 1 2 3 4 5 6 7 8 9 4 chunks +13 lines, -6 lines 0 comments Download
M content/public/app/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +1 line, -0 lines 0 comments Download
M content/public/app/mojo/content_browser_manifest.json View 1 2 3 4 5 6 7 8 9 10 1 chunk +5 lines, -1 line 0 comments Download
M content/utility/BUILD.gn View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -0 lines 0 comments Download
M content/utility/DEPS View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download
M content/utility/utility_service_factory.cc View 1 2 3 4 5 6 7 8 9 2 chunks +7 lines, -0 lines 0 comments Download
M services/service_manager/public/cpp/connector.h View 1 2 3 4 5 6 7 8 9 1 chunk +6 lines, -0 lines 0 comments Download
A services/shape_detection/BUILD.gn View 1 2 3 4 5 6 7 8 9 1 chunk +45 lines, -0 lines 0 comments Download
A services/shape_detection/DEPS View 1 2 3 4 5 6 7 8 9 1 chunk +3 lines, -0 lines 0 comments Download
A services/shape_detection/README.md View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
A services/shape_detection/face_detection_impl_mac.h View 1 2 3 4 5 6 7 8 9 1 chunk +35 lines, -0 lines 0 comments Download
A services/shape_detection/face_detection_impl_mac.mm View 1 2 3 4 5 6 7 8 9 1 chunk +127 lines, -0 lines 0 comments Download
A services/shape_detection/face_detection_provider_impl.h View 1 2 3 4 5 6 7 8 9 1 chunk +31 lines, -0 lines 0 comments Download
A services/shape_detection/face_detection_provider_impl.cc View 1 2 3 4 5 6 7 8 9 1 chunk +15 lines, -0 lines 0 comments Download
A services/shape_detection/manifest.json View 1 2 3 4 5 6 7 8 9 1 chunk +15 lines, -0 lines 0 comments Download
M services/shape_detection/public/interfaces/BUILD.gn View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download
A services/shape_detection/public/interfaces/constants.mojom View 1 2 3 4 5 6 7 8 9 1 chunk +9 lines, -0 lines 0 comments Download
A services/shape_detection/shape_detection_service.h View 1 2 3 4 5 6 7 8 9 1 chunk +38 lines, -0 lines 0 comments Download
A services/shape_detection/shape_detection_service.cc View 1 2 3 4 5 6 7 8 9 1 chunk +53 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/TestExpectations View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +9 lines, -0 lines 0 comments Download

Messages

Total messages: 385 (343 generated)
yzshen1
https://codereview.chromium.org/2528743002/diff/20001/services/shape_detection/public/interfaces/BUILD.gn File services/shape_detection/public/interfaces/BUILD.gn (right): https://codereview.chromium.org/2528743002/diff/20001/services/shape_detection/public/interfaces/BUILD.gn#newcode12 services/shape_detection/public/interfaces/BUILD.gn:12: } You need to add public_deps = [ "//ui/gfx/geometry/mojo", ...
4 years ago (2016-11-23 20:14:05 UTC) #3
xianglu
ptal, especially service_manager_context.cc and browser_context.cc
4 years ago (2016-11-30 20:27:23 UTC) #31
Ken Rockot(use gerrit already)
https://codereview.chromium.org/2528743002/diff/390001/content/browser/service_manager/service_manager_context.cc File content/browser/service_manager/service_manager_context.cc (right): https://codereview.chromium.org/2528743002/diff/390001/content/browser/service_manager/service_manager_context.cc#newcode268 content/browser/service_manager/service_manager_context.cc:268: ServiceInfo shape_detection_info; You can remove this registration for now. ...
4 years ago (2016-12-01 17:54:31 UTC) #73
yzshen1
https://codereview.chromium.org/2528743002/diff/410001/services/shape_detection/BUILD.gn File services/shape_detection/BUILD.gn (right): https://codereview.chromium.org/2528743002/diff/410001/services/shape_detection/BUILD.gn#newcode34 services/shape_detection/BUILD.gn:34: "//third_party/WebKit/public:mojo_bindings__generator", Could you please explain why you need to ...
4 years ago (2016-12-01 21:28:26 UTC) #78
xianglu
PTAL. https://codereview.chromium.org/2528743002/diff/390001/content/browser/service_manager/service_manager_context.cc File content/browser/service_manager/service_manager_context.cc (right): https://codereview.chromium.org/2528743002/diff/390001/content/browser/service_manager/service_manager_context.cc#newcode268 content/browser/service_manager/service_manager_context.cc:268: ServiceInfo shape_detection_info; On 2016/12/01 17:54:30, Ken Rockot wrote: ...
4 years ago (2016-12-02 18:11:24 UTC) #100
yzshen1
https://codereview.chromium.org/2528743002/diff/410001/third_party/WebKit/Source/modules/shapedetection/ShapeDetector.cpp File third_party/WebKit/Source/modules/shapedetection/ShapeDetector.cpp (right): https://codereview.chromium.org/2528743002/diff/410001/third_party/WebKit/Source/modules/shapedetection/ShapeDetector.cpp#newcode53 third_party/WebKit/Source/modules/shapedetection/ShapeDetector.cpp:53: ServiceConnector::instance().ConnectToInterface( On 2016/12/02 18:11:24, xianglu wrote: > On 2016/12/01 ...
4 years ago (2016-12-05 17:41:20 UTC) #105
xianglu
https://codereview.chromium.org/2528743002/diff/410001/third_party/WebKit/Source/modules/shapedetection/ShapeDetector.cpp File third_party/WebKit/Source/modules/shapedetection/ShapeDetector.cpp (right): https://codereview.chromium.org/2528743002/diff/410001/third_party/WebKit/Source/modules/shapedetection/ShapeDetector.cpp#newcode53 third_party/WebKit/Source/modules/shapedetection/ShapeDetector.cpp:53: ServiceConnector::instance().ConnectToInterface( On 2016/12/05 17:41:19, yzshen1 wrote: > On 2016/12/02 ...
4 years ago (2016-12-05 18:50:02 UTC) #106
yzshen1
LGTM (please wait for other code reviewers' LGs) https://codereview.chromium.org/2528743002/diff/550001/content/browser/browser_context.cc File content/browser/browser_context.cc (right): https://codereview.chromium.org/2528743002/diff/550001/content/browser/browser_context.cc#newcode472 content/browser/browser_context.cc:472: // ...
4 years ago (2016-12-05 19:38:29 UTC) #107
Ken Rockot(use gerrit already)
https://codereview.chromium.org/2528743002/diff/570001/content/browser/browser_context.cc File content/browser/browser_context.cc (right): https://codereview.chromium.org/2528743002/diff/570001/content/browser/browser_context.cc#newcode473 content/browser/browser_context.cc:473: // Mac API |CIDetector| does GPU-previliged operations, and we ...
4 years ago (2016-12-05 20:56:52 UTC) #110
xianglu
PTAL. https://codereview.chromium.org/2528743002/diff/570001/content/browser/browser_context.cc File content/browser/browser_context.cc (right): https://codereview.chromium.org/2528743002/diff/570001/content/browser/browser_context.cc#newcode473 content/browser/browser_context.cc:473: // Mac API |CIDetector| does GPU-previliged operations, and ...
4 years ago (2016-12-05 22:13:22 UTC) #113
Ken Rockot(use gerrit already)
lgtm https://codereview.chromium.org/2528743002/diff/590001/third_party/WebKit/Source/modules/BUILD.gn File third_party/WebKit/Source/modules/BUILD.gn (right): https://codereview.chromium.org/2528743002/diff/590001/third_party/WebKit/Source/modules/BUILD.gn#newcode166 third_party/WebKit/Source/modules/BUILD.gn:166: "//services/service_manager/public/cpp", Oops, missed this. Please remove this too, ...
4 years ago (2016-12-05 22:15:23 UTC) #114
xianglu
Thanks. tsepez@, PTAL at content/public/app/mojo/*, trivial. avi@, PTAL at content/browser/* and content/public/* haraken@, PTAL at ...
4 years ago (2016-12-05 22:41:52 UTC) #116
mcasas
some small comments https://codereview.chromium.org/2528743002/diff/590001/services/shape_detection/face_detection_impl_mac.mm File services/shape_detection/face_detection_impl_mac.mm (right): https://codereview.chromium.org/2528743002/diff/590001/services/shape_detection/face_detection_impl_mac.mm#newcode15 services/shape_detection/face_detection_impl_mac.mm:15: // kCIFormatRGBA8 is not exposed to ...
4 years ago (2016-12-06 00:04:24 UTC) #117
haraken
WebKit LGTM/ % the change to BUILD.gn needs to be removed.
4 years ago (2016-12-06 00:07:44 UTC) #118
Avi (use Gerrit)
Hmmm... https://codereview.chromium.org/2528743002/diff/630001/content/browser/browser_context.cc File content/browser/browser_context.cc (right): https://codereview.chromium.org/2528743002/diff/630001/content/browser/browser_context.cc#newcode475 content/browser/browser_context.cc:475: // we see crashes in the future. I'm ...
4 years ago (2016-12-06 05:44:21 UTC) #123
Tom Sepez
The mojoms/manifests are fine, but we really want to run this from a partially-sandboxed utility ...
4 years ago (2016-12-06 17:35:55 UTC) #124
xianglu
On 2016/12/06 17:35:55, Tom Sepez wrote: > The mojoms/manifests are fine, but we really want ...
4 years ago (2016-12-08 01:09:48 UTC) #154
xianglu
PTAL. https://codereview.chromium.org/2528743002/diff/590001/services/shape_detection/face_detection_impl_mac.mm File services/shape_detection/face_detection_impl_mac.mm (right): https://codereview.chromium.org/2528743002/diff/590001/services/shape_detection/face_detection_impl_mac.mm#newcode15 services/shape_detection/face_detection_impl_mac.mm:15: // kCIFormatRGBA8 is not exposed to public until ...
4 years ago (2016-12-08 01:20:54 UTC) #155
Avi (use Gerrit)
On 2016/12/08 01:09:48, xianglu wrote: > Actually this API is stable and has been > ...
4 years ago (2016-12-08 04:47:10 UTC) #156
Ken Rockot(use gerrit already)
Alright, if this CL can wait another 2-3 days to land, I should have singleton ...
4 years ago (2016-12-08 05:06:24 UTC) #157
Ken Rockot(use gerrit already)
https://codereview.chromium.org/2528743002/diff/990001/content/browser/browser_context.cc File content/browser/browser_context.cc (right): https://codereview.chromium.org/2528743002/diff/990001/content/browser/browser_context.cc#newcode474 content/browser/browser_context.cc:474: connection->AddEmbeddedService(shape_detection::mojom::kServiceName, You can remove this now. https://codereview.chromium.org/2528743002/diff/990001/content/utility/utility_service_factory.cc File content/utility/utility_service_factory.cc ...
3 years, 12 months ago (2016-12-27 18:22:03 UTC) #182
Tom Sepez
On 2016/12/08 01:09:48, xianglu wrote: > On 2016/12/06 17:35:55, Tom Sepez wrote: > > The ...
3 years, 11 months ago (2017-01-03 18:53:20 UTC) #183
jschuh
On 2017/01/03 18:53:20, Tom Sepez wrote: > On 2016/12/08 01:09:48, xianglu wrote: > > On ...
3 years, 11 months ago (2017-01-03 19:03:00 UTC) #184
xianglu
Thank you all for pointing out the issue. I've moved face detection implementation to out-of-process ...
3 years, 11 months ago (2017-01-13 14:39:46 UTC) #313
Tom Sepez
Mojom and design LGTM, but get rsesek sign-off on implementation details.
3 years, 11 months ago (2017-01-13 23:42:12 UTC) #316
Robert Sesek
On 2017/01/03 19:03:00, jschuh wrote: > To put it more directly, we have sandboxes precisely ...
3 years, 11 months ago (2017-01-17 20:30:50 UTC) #317
Ken Rockot(use gerrit already)
On Tue, Jan 17, 2017 at 12:30 PM, <rsesek@chromium.org> wrote: > On 2017/01/03 19:03:00, jschuh ...
3 years, 11 months ago (2017-01-17 20:45:01 UTC) #318
xianglu
https://codereview.chromium.org/2528743002/diff/1510001/content/browser/service_manager/service_manager_context.cc File content/browser/service_manager/service_manager_context.cc (right): https://codereview.chromium.org/2528743002/diff/1510001/content/browser/service_manager/service_manager_context.cc#newcode316 content/browser/service_manager/service_manager_context.cc:316: unsandboxed_services.insert( On 2017/01/17 20:30:50, Robert Sesek wrote: > What ...
3 years, 11 months ago (2017-01-17 22:37:29 UTC) #319
Robert Sesek
https://codereview.chromium.org/2528743002/diff/1510001/content/browser/service_manager/service_manager_context.cc File content/browser/service_manager/service_manager_context.cc (right): https://codereview.chromium.org/2528743002/diff/1510001/content/browser/service_manager/service_manager_context.cc#newcode316 content/browser/service_manager/service_manager_context.cc:316: unsandboxed_services.insert( On 2017/01/17 22:37:29, xianglu wrote: > On 2017/01/17 ...
3 years, 11 months ago (2017-01-18 05:29:21 UTC) #320
Robert Sesek
Met with Xianglu, Ken, and Miguel offline. We discussed that this must be sandboxed before ...
3 years, 11 months ago (2017-01-23 19:52:16 UTC) #321
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2528743002/1570001
3 years, 11 months ago (2017-01-24 02:39:49 UTC) #337
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/348272)
3 years, 11 months ago (2017-01-24 02:50:28 UTC) #339
mcasas
lgtm
3 years, 11 months ago (2017-01-24 03:43:23 UTC) #341
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2528743002/1570001
3 years, 11 months ago (2017-01-24 03:43:50 UTC) #342
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/348311)
3 years, 11 months ago (2017-01-24 03:52:43 UTC) #344
xianglu
jochen@, could you take a look at //content please? Thanks.
3 years, 11 months ago (2017-01-24 07:05:44 UTC) #347
jochen (gone - plz use gerrit)
lgtm with nit https://codereview.chromium.org/2528743002/diff/1570001/content/browser/shapedetection/face_detection_service_dispatcher.h File content/browser/shapedetection/face_detection_service_dispatcher.h (right): https://codereview.chromium.org/2528743002/diff/1570001/content/browser/shapedetection/face_detection_service_dispatcher.h#newcode16 content/browser/shapedetection/face_detection_service_dispatcher.h:16: class CONTENT_EXPORT FaceDetectionServiceDispatcher { nit. use ...
3 years, 11 months ago (2017-01-24 12:31:59 UTC) #348
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2528743002/1610001
3 years, 11 months ago (2017-01-24 21:59:36 UTC) #360
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/349172)
3 years, 11 months ago (2017-01-24 22:08:59 UTC) #362
commit-bot: I haz the power
Failed to apply patch for content/public/app/BUILD.gn: While running git apply --index -p1; error: patch failed: ...
3 years, 11 months ago (2017-01-25 01:20:14 UTC) #370
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2528743002/1670001
3 years, 11 months ago (2017-01-25 04:24:51 UTC) #382
mastiz
3 years, 11 months ago (2017-01-25 15:09:32 UTC) #385
Message was sent while issue was closed.
A revert of this CL (patchset #14 id:1670001) has been created in
https://codereview.chromium.org/2653223003/ by mastiz@chromium.org.

The reason for reverting is: Culprit suspect for blink_heap_unittests failing on
chromium.webkit/WebKit Android (Nexus4), e.g.
https://uberchromegw.corp.google.com/i/chromium.webkit/builders/WebKit%20Andr...
.

Powered by Google App Engine
This is Rietveld 408576698