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

Issue 24615005: Added AVFoundation Glue and Device Monitoring for Mac. (Closed)

Created:
7 years, 2 months ago by mcasas
Modified:
7 years, 2 months ago
CC:
chromium-reviews, joi+watch-content_chromium.org, darin-cc_chromium.org, jam, wjia+watch_chromium.org, feature-media-reviews_chromium.org, DaleCurtis
Visibility:
Public.

Description

Added AVFoundation Glue and Device Monitoring for Mac. This CL adds files called avfoundation_glue.{h,mm} to media/video/capture/mac. These files encapsulate dynamic loading of AVFoundation libraries and define+ implement a facade to the used AVFoundation classes. The first usage of those is the DeviceMonitorMac, where the original QTKit event class is transformed into an interface (MacMonitorInterface), implemented by both QTKitMonitorImpl and AVFoundationMonitorImpl. the usage of one or the other is decided on DeviceMonitorMac constructor time. This CL is part of a larger exercise to add support for Video Capture in Mac > 10.6 using AVFoundation. BUG=288562 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=230553

Patch Set 1 #

Total comments: 50

Patch Set 2 : OVerhauled following mark@ review. #

Total comments: 21

Patch Set 3 : Comments addressed. #

Total comments: 2

Patch Set 4 : #

Total comments: 25

Patch Set 5 : mark@'s comments addressed. #

Total comments: 25

Patch Set 6 : rsesek@'s comments addressed. #

Total comments: 24

Patch Set 7 : rsesek@'s comments and some nits. #

Total comments: 18

Patch Set 8 : More rsesek@ comments. #

Total comments: 2

Patch Set 9 : Reinterpret_cast and AV prefix in uppercase #

Patch Set 10 : Rebase. #

Total comments: 12

Patch Set 11 : MacMonitor->DeviceMonitorMacImpl and nits. #

Total comments: 6

Patch Set 12 : rsesek@ last round of nits taken in. #

Total comments: 8

Patch Set 13 : dalecurtis@ comments #

Total comments: 8

Patch Set 14 : avi@ comments. #

Total comments: 1

Patch Set 15 : Added comments following avi@ ones. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+372 lines, -54 lines) Patch
M content/browser/DEPS View 1 2 3 9 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/device_monitor_mac.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +14 lines, -4 lines 0 comments Download
M content/browser/device_monitor_mac.mm View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +201 lines, -50 lines 0 comments Download
M media/media.gyp View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -0 lines 0 comments Download
A media/video/capture/mac/avfoundation_glue.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +65 lines, -0 lines 0 comments Download
A media/video/capture/mac/avfoundation_glue.mm View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +89 lines, -0 lines 0 comments Download

Messages

Total messages: 42 (0 generated)
mcasas
Hi mark@, I tried my best to implement a facade for dynamic loading AVFoundation. Could ...
7 years, 2 months ago (2013-09-26 16:03:49 UTC) #1
Mark Mentovai
This is nowhere near ready. It doesn’t even appear to have been tested. https://codereview.chromium.org/24615005/diff/1/content/browser/device_monitor_mac.h File ...
7 years, 2 months ago (2013-09-26 17:09:09 UTC) #2
mcasas
Hi mark@, first of all again apologies for the misunderstanding in the first code review. ...
7 years, 2 months ago (2013-09-30 17:53:49 UTC) #3
mcasas
hi tommyw@, could you PTAL? The CL is not ready for landing, so please take ...
7 years, 2 months ago (2013-10-01 09:32:29 UTC) #4
Mark Mentovai
https://codereview.chromium.org/24615005/diff/10001/content/browser/device_monitor_mac.mm File content/browser/device_monitor_mac.mm (right): https://codereview.chromium.org/24615005/diff/10001/content/browser/device_monitor_mac.mm#newcode42 content/browser/device_monitor_mac.mm:42: device_arrival_(0), If these are id again now, the initializers ...
7 years, 2 months ago (2013-10-01 18:53:23 UTC) #5
mcasas
Hi mark@, thanks a bunch for the review, addressed your comments, PTAL. https://codereview.chromium.org/24615005/diff/10001/content/browser/device_monitor_mac.mm File content/browser/device_monitor_mac.mm ...
7 years, 2 months ago (2013-10-02 14:10:39 UTC) #6
Mark Mentovai
I have not reviewed the rest of your latest patch set but have given you ...
7 years, 2 months ago (2013-10-02 14:24:33 UTC) #7
mcasas
https://codereview.chromium.org/24615005/diff/18001/content/browser/device_monitor_mac.mm File content/browser/device_monitor_mac.mm (right): https://codereview.chromium.org/24615005/diff/18001/content/browser/device_monitor_mac.mm#newcode73 content/browser/device_monitor_mac.mm:73: base::AutoLock lock(monitor_->lock_); I thought that when we register to ...
7 years, 2 months ago (2013-10-02 16:15:59 UTC) #8
Mark Mentovai
Notifications aren’t delivered out of order. There’s a race. You get the number of devices ...
7 years, 2 months ago (2013-10-02 16:23:24 UTC) #9
mcasas
On 2013/10/02 16:23:24, Mark Mentovai wrote: > Notifications aren’t delivered out of order. There’s a ...
7 years, 2 months ago (2013-10-03 16:24:01 UTC) #10
mcasas
(Tentative) ping. mark@ could you perhaps suggest another reviewer if you're busy?
7 years, 2 months ago (2013-10-09 15:44:29 UTC) #11
Mark Mentovai
Sorry, missed that you had updated this last week. I am here today but I’m ...
7 years, 2 months ago (2013-10-09 16:05:12 UTC) #12
Mark Mentovai
When you’re ready for an actual full review, you should probably ask tommi to look ...
7 years, 2 months ago (2013-10-09 16:10:54 UTC) #13
mcasas
All comments from mark@ addressed. rsesek@, could you PTAL? A note of caution, clang-format in ...
7 years, 2 months ago (2013-10-12 09:59:26 UTC) #14
Robert Sesek
https://codereview.chromium.org/24615005/diff/35001/content/browser/device_monitor_mac.mm File content/browser/device_monitor_mac.mm (right): https://codereview.chromium.org/24615005/diff/35001/content/browser/device_monitor_mac.mm#newcode97 content/browser/device_monitor_mac.mm:97: std::vector<DeviceInfo> snapshot_devices; On 2013/10/12 09:59:27, miguelao wrote: > On ...
7 years, 2 months ago (2013-10-14 17:26:43 UTC) #15
mcasas
hi rsesek@ thanks for the review, could you please take a look? https://codereview.chromium.org/24615005/diff/43001/content/browser/device_monitor_mac.mm File content/browser/device_monitor_mac.mm ...
7 years, 2 months ago (2013-10-15 11:50:10 UTC) #16
Robert Sesek
https://codereview.chromium.org/24615005/diff/43001/content/browser/device_monitor_mac.mm File content/browser/device_monitor_mac.mm (right): https://codereview.chromium.org/24615005/diff/43001/content/browser/device_monitor_mac.mm#newcode64 content/browser/device_monitor_mac.mm:64: int video_device_added = 0; On 2013/10/15 11:50:11, miguelao wrote: ...
7 years, 2 months ago (2013-10-15 20:44:46 UTC) #17
mcasas
rsesek@ could you PTAL? Thanks! https://codereview.chromium.org/24615005/diff/43001/content/browser/device_monitor_mac.mm File content/browser/device_monitor_mac.mm (right): https://codereview.chromium.org/24615005/diff/43001/content/browser/device_monitor_mac.mm#newcode64 content/browser/device_monitor_mac.mm:64: int video_device_added = 0; ...
7 years, 2 months ago (2013-10-16 11:04:39 UTC) #18
Robert Sesek
This is definitely making progress. Keep it up! https://codereview.chromium.org/24615005/diff/43001/content/browser/device_monitor_mac.mm File content/browser/device_monitor_mac.mm (right): https://codereview.chromium.org/24615005/diff/43001/content/browser/device_monitor_mac.mm#newcode122 content/browser/device_monitor_mac.mm:122: OnDeviceChanged(); ...
7 years, 2 months ago (2013-10-16 23:58:06 UTC) #19
mcasas
Hi rsesek@ thanks for the quick reply, PTAL! https://codereview.chromium.org/24615005/diff/60001/content/browser/device_monitor_mac.h File content/browser/device_monitor_mac.h (right): https://codereview.chromium.org/24615005/diff/60001/content/browser/device_monitor_mac.h#newcode19 content/browser/device_monitor_mac.h:19: // ...
7 years, 2 months ago (2013-10-17 08:16:35 UTC) #20
mcasas
ping.
7 years, 2 months ago (2013-10-18 07:38:57 UTC) #21
Robert Sesek
https://codereview.chromium.org/24615005/diff/60001/content/browser/device_monitor_mac.mm File content/browser/device_monitor_mac.mm (right): https://codereview.chromium.org/24615005/diff/60001/content/browser/device_monitor_mac.mm#newcode126 content/browser/device_monitor_mac.mm:126: queue:nil On 2013/10/17 08:16:36, miguelao wrote: > Remainings of ...
7 years, 2 months ago (2013-10-18 18:18:15 UTC) #22
mcasas
On 2013/10/18 18:18:15, rsesek wrote: > https://codereview.chromium.org/24615005/diff/60001/content/browser/device_monitor_mac.mm > File content/browser/device_monitor_mac.mm (right): > > https://codereview.chromium.org/24615005/diff/60001/content/browser/device_monitor_mac.mm#newcode126 > ...
7 years, 2 months ago (2013-10-19 20:35:59 UTC) #23
mcasas
Hi rsesek@ thanks for reviews, please see my immediately previous reply/answer/acknowledge to your comments, PTAL! ...
7 years, 2 months ago (2013-10-19 20:37:08 UTC) #24
Robert Sesek
Can you reupload? Rietveld says there's a chunk-mismatch.
7 years, 2 months ago (2013-10-21 15:09:16 UTC) #25
mcasas
On 2013/10/21 15:09:16, rsesek wrote: > Can you reupload? Rietveld says there's a chunk-mismatch. Rebased. ...
7 years, 2 months ago (2013-10-21 15:35:07 UTC) #26
Robert Sesek
https://codereview.chromium.org/24615005/diff/276001/content/browser/device_monitor_mac.mm File content/browser/device_monitor_mac.mm (right): https://codereview.chromium.org/24615005/diff/276001/content/browser/device_monitor_mac.mm#newcode43 content/browser/device_monitor_mac.mm:43: class MacMonitor { Hm… maybe this should be more ...
7 years, 2 months ago (2013-10-21 17:31:36 UTC) #27
mcasas
Addressed all rsesek@ comments, could you please take a look? Thanks! https://codereview.chromium.org/24615005/diff/276001/content/browser/device_monitor_mac.mm File content/browser/device_monitor_mac.mm (right): ...
7 years, 2 months ago (2013-10-21 23:55:24 UTC) #28
Robert Sesek
LGTM w/ nits https://codereview.chromium.org/24615005/diff/396001/content/browser/device_monitor_mac.h File content/browser/device_monitor_mac.h (right): https://codereview.chromium.org/24615005/diff/396001/content/browser/device_monitor_mac.h#newcode25 content/browser/device_monitor_mac.h:25: // Method called by the internal ...
7 years, 2 months ago (2013-10-22 14:03:49 UTC) #29
mcasas
rsesek@ nits addressed, thanks! fischman@ could you please have a look at https://codereview.chromium.org/24615005/diff/396001/content/browser/device_monitor_mac.h File content/browser/device_monitor_mac.h ...
7 years, 2 months ago (2013-10-22 18:37:41 UTC) #30
mcasas
rsesek@ nits addressed, thanks! fischman@ could you please have a look at https://codereview.chromium.org/24615005/diff/396001/content/browser/device_monitor_mac.h File content/browser/device_monitor_mac.h ...
7 years, 2 months ago (2013-10-22 18:37:41 UTC) #31
mcasas
rsesek@ nits addressed, thanks! fischman@ could you please have a look at
7 years, 2 months ago (2013-10-22 18:37:44 UTC) #32
mcasas
rsesek@ nits addressed, thanks! fischman@ could you please have a look at
7 years, 2 months ago (2013-10-22 18:37:44 UTC) #33
mcasas
Sorry for the previous spam. Somehow I managed to send 4 replies from Rietveld by ...
7 years, 2 months ago (2013-10-22 18:42:36 UTC) #34
DaleCurtis
media/ lgtm % nits. https://codereview.chromium.org/24615005/diff/476001/media/video/capture/mac/avfoundation_glue.h File media/video/capture/mac/avfoundation_glue.h (right): https://codereview.chromium.org/24615005/diff/476001/media/video/capture/mac/avfoundation_glue.h#newcode24 media/video/capture/mac/avfoundation_glue.h:24: static BOOL IsAVFoundationSupported(); Should this ...
7 years, 2 months ago (2013-10-22 19:17:55 UTC) #35
sky
I'm not familiar with this code at all. Is there another OWNER that is more ...
7 years, 2 months ago (2013-10-22 20:01:43 UTC) #36
mcasas
avi@ could you please have a look at content/browser files? dalecurtis@: thanks, nits addressed. On ...
7 years, 2 months ago (2013-10-23 12:52:07 UTC) #37
Avi (use Gerrit)
https://codereview.chromium.org/24615005/diff/666001/content/browser/device_monitor_mac.mm File content/browser/device_monitor_mac.mm (right): https://codereview.chromium.org/24615005/diff/666001/content/browser/device_monitor_mac.mm#newcode15 content/browser/device_monitor_mac.mm:15: class DeviceInfo { This holds just an enum and ...
7 years, 2 months ago (2013-10-23 14:44:36 UTC) #38
mcasas
avi@ thanks for the review, please have another look :) https://codereview.chromium.org/24615005/diff/666001/content/browser/device_monitor_mac.mm File content/browser/device_monitor_mac.mm (right): https://codereview.chromium.org/24615005/diff/666001/content/browser/device_monitor_mac.mm#newcode15 ...
7 years, 2 months ago (2013-10-23 15:52:07 UTC) #39
Avi (use Gerrit)
Cool. LGTM https://codereview.chromium.org/24615005/diff/756001/content/browser/device_monitor_mac.mm File content/browser/device_monitor_mac.mm (right): https://codereview.chromium.org/24615005/diff/756001/content/browser/device_monitor_mac.mm#newcode29 content/browser/device_monitor_mac.mm:29: return unique_id_ == device.unique_id_; Can you put ...
7 years, 2 months ago (2013-10-23 16:01:00 UTC) #40
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/mcasas@chromium.org/24615005/866001
7 years, 2 months ago (2013-10-23 19:44:20 UTC) #41
commit-bot: I haz the power
7 years, 2 months ago (2013-10-23 23:36:51 UTC) #42
Message was sent while issue was closed.
Change committed as 230553

Powered by Google App Engine
This is Rietveld 408576698