Design Doc: https://docs.google.com/document/d/1Vt8ME9foAR7vs9azwTP0mAQYUxAEbA1SOQ7hzrcXxP8/edit?usp=sharing
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/35a0f3ba51ce323aee824b203579cec17e1f3e11 commit 35a0f3ba51ce323aee824b203579cec17e1f3e11 Author: Christian Fremerey <chfremer@chromium.org> Date: Fri Apr 20 17:04:24 2018 [Video Capture] Remove VideoPixelStorage enum An enum VideoPixelStorage was previously used for two purposes: 1. Allow clients to specify when opening a video capture device if they want frames to be delivered via SharedMemory buffers or GpuMemoryBuffers 2. When instances of media::VideoFrame are delivered, indicate which type of buffer it is using. Support for frame transport via GpuMemoryBuffers has since been removed. The enum was kept around since it was anticipated that we support for buffers other than SharedMemory would be added again soon. Even though we are now about to add support for textures (via MailboxHolder) as buffer type, the VideoPixelStorage is not going to be useful for both of the above purposes. It is not useful for purpose 1, because we do not currently have a need to implement virtual devices for which clients can choose the transport buffer type. If the need arises in the future, we can add it then. It is not useful for purpose 2, since the API design is now such that buffers are identified by buffer ids, and from the buffer id, the type of buffer is already clear. With the possibility of devices delivering frames using MailboxHolder, it is now quite confusing to keep the VideoPixelStorage enum with a single option “CPU” around, so it is best to remove it at this time. Design Doc: https://docs.google.com/document/d/1Vt8ME9foAR7vs9azwTP0mAQYUxAEbA1SOQ7hzrcXxP8/edit?usp=sharing Bug: 834478 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel Change-Id: Idbd1d966ea2fc50aae9b512ca7b9383eb28e33ed Reviewed-on: https://chromium-review.googlesource.com/1017916 Reviewed-by: Emircan Uysaler <emircan@chromium.org> Reviewed-by: Tom Sepez <tsepez@chromium.org> Reviewed-by: Andrey Kosyakov <caseq@chromium.org> Reviewed-by: Olga Sharonova <olka@chromium.org> Reviewed-by: Yuri Wiitala <miu@chromium.org> Commit-Queue: Christian Fremerey <chfremer@chromium.org> Cr-Commit-Position: refs/heads/master@{#552360} [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/components/mirroring/browser/single_client_video_capture_host_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/components/mirroring/service/fake_video_capture_host.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/components/mirroring/service/video_capture_client.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/components/mirroring/service/video_capture_client_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/components/viz/service/frame_sinks/video_capture/frame_sink_video_capturer_impl.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/content/browser/devtools/devtools_video_consumer_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/content/browser/media/capture/desktop_capture_device_aura_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/content/browser/media/capture/desktop_capture_device_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/content/browser/media/capture/frame_sink_video_capture_device_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/content/browser/media/capture/screen_capture_device_android_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/content/browser/media/capture/web_contents_video_capture_device_browsertest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/content/browser/media/media_internals_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/content/browser/renderer_host/media/video_capture_browsertest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/content/browser/renderer_host/media/video_capture_buffer_pool_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/content/browser/renderer_host/media/video_capture_controller.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/content/browser/renderer_host/media/video_capture_controller_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/content/renderer/media/video_capture_impl.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/content/renderer/media/video_capture_impl_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/content/screen_capture_device_core.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/content/thread_safe_capture_oracle.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/ipc/capture_param_traits.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/ipc/capture_param_traits_macros.h [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/mojom/video_capture_types.mojom [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/mojom/video_capture_types.typemap [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/mojom/video_capture_types_mojom_traits.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/mojom/video_capture_types_mojom_traits.h [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/chromeos/mock_video_capture_client.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/chromeos/mock_video_capture_client.h [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/fake_video_capture_device.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/fake_video_capture_device.h [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/fake_video_capture_device_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/file_video_capture_device_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/linux/v4l2_capture_delegate_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/shared_memory_buffer_tracker.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/shared_memory_buffer_tracker.h [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/video_capture_buffer_pool.h [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/video_capture_buffer_pool_impl.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/video_capture_buffer_pool_impl.h [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/video_capture_buffer_tracker.h [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/video_capture_buffer_tracker_factory.h [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/video_capture_buffer_tracker_factory_impl.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/video_capture_buffer_tracker_factory_impl.h [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/video_capture_device.h [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/video_capture_device_client.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/video_capture_device_client.h [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/video_capture_device_client_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/video_capture_device_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video/win/video_capture_device_mf_win_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video_capture_types.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/media/capture/video_capture_types.h [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/services/video_capture/device_factory_media_to_mojo_adapter.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/services/video_capture/public/mojom/virtual_device.mojom [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/services/video_capture/test/mock_device_factory.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/services/video_capture/test/virtual_device_unittest.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/services/video_capture/virtual_device_mojo_adapter.cc [modify] https://crrev.com/35a0f3ba51ce323aee824b203579cec17e1f3e11/services/video_capture/virtual_device_mojo_adapter.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/36d29057cdbd47d9c772c2063fe4fff6351de7d3 commit 36d29057cdbd47d9c772c2063fe4fff6351de7d3 Author: Christian Fremerey <chfremer@chromium.org> Date: Tue May 01 23:45:47 2018 [Video Capture] Allow usage of MailboxHolder for video frame transport In interfaces that are used for sharing buffer handles, which currently can only be handles for SharedMemory, use a union struct media::mojom::VideoBufferHandle to allow the handle to be either for SharedMemory or for MailboxHolders. Affected interfaces are: video_capture::mojom::Receiver media::VideoFrameReceiver content::VideoCaptureControllerEventHandler media::mojom::VideoCaptureObserver Note: No update to interface media::VideoCaptureDevice::Client at this point, because we are for now limiting this to virtual devices instead of also including real webcams. Design Doc: https://docs.google.com/document/d/1Vt8ME9foAR7vs9azwTP0mAQYUxAEbA1SOQ7hzrcXxP8/edit?usp=sharing Bug: 834478 Change-Id: Iaabcbe54face7290ea6ee3dab058c10e11c69728 Reviewed-on: https://chromium-review.googlesource.com/1022175 Reviewed-by: Tom Sepez <tsepez@chromium.org> Reviewed-by: Yuri Wiitala <miu@chromium.org> Reviewed-by: Olga Sharonova <olka@chromium.org> Reviewed-by: Emircan Uysaler <emircan@chromium.org> Commit-Queue: Christian Fremerey <chfremer@chromium.org> Cr-Commit-Position: refs/heads/master@{#555231} [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/components/mirroring/browser/single_client_video_capture_host.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/components/mirroring/browser/single_client_video_capture_host.h [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/components/mirroring/browser/single_client_video_capture_host_unittest.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/components/mirroring/service/fake_video_capture_host.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/components/mirroring/service/video_capture_client.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/components/mirroring/service/video_capture_client.h [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/components/mirroring/service/video_capture_client_unittest.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/browser/media/capture/frame_sink_video_capture_device.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/browser/media/capture/frame_sink_video_capture_device_unittest.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/browser/media/capture/web_contents_video_capture_device_browsertest.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/browser/renderer_host/media/video_capture_browsertest.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/browser/renderer_host/media/video_capture_controller.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/browser/renderer_host/media/video_capture_controller.h [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/browser/renderer_host/media/video_capture_controller_event_handler.h [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/browser/renderer_host/media/video_capture_controller_unittest.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/browser/renderer_host/media/video_capture_host.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/browser/renderer_host/media/video_capture_host.h [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/browser/renderer_host/media/video_capture_manager_unittest.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/browser/renderer_host/media/video_capture_unittest.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/renderer/media/video_capture_impl.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/renderer/media/video_capture_impl.h [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/content/renderer/media/video_capture_impl_unittest.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/media/capture/mojom/video_capture.mojom [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/media/capture/mojom/video_capture_types.mojom [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/media/capture/video/mock_video_frame_receiver.h [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/media/capture/video/video_capture_device_client.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/media/capture/video/video_frame_receiver.h [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/media/capture/video/video_frame_receiver_on_task_runner.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/media/capture/video/video_frame_receiver_on_task_runner.h [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/services/video_capture/public/cpp/receiver_media_to_mojo_adapter.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/services/video_capture/public/cpp/receiver_media_to_mojo_adapter.h [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/services/video_capture/public/mojom/receiver.mojom [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/services/video_capture/receiver_mojo_to_media_adapter.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/services/video_capture/receiver_mojo_to_media_adapter.h [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/services/video_capture/test/fake_device_descriptor_unittest.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/services/video_capture/test/fake_device_unittest.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/services/video_capture/test/mock_receiver.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/services/video_capture/test/mock_receiver.h [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/services/video_capture/test/virtual_device_unittest.cc [modify] https://crrev.com/36d29057cdbd47d9c772c2063fe4fff6351de7d3/services/video_capture/virtual_device_mojo_adapter.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3c7b626c766a38e9993f91c9cddcca523e63fecb commit 3c7b626c766a38e9993f91c9cddcca523e63fecb Author: Christian Fremerey <chfremer@chromium.org> Date: Thu May 03 23:59:30 2018 [Video Capture Service] Add support for virtual devices using textures The API of video_capture.mojom.DeviceFactory allows clients to register virtual video capture devices which use shared memory buffers for transporting frames from producer to consumers. This CL expands the API with a second type of virtual video capture device, which is fed with textures (via MailboxHolder), which are subsequently passed down all the way to the consumers. This allows for displaying frames fed into such devices without the frame data having to be moved/copied out of the GPU memory/context. Design Doc: https://docs.google.com/document/d/1Vt8ME9foAR7vs9azwTP0mAQYUxAEbA1SOQ7hzrcXxP8/edit?usp=sharing virtual devices. An integration test has already been written and will be put up for review in the next CL of the series. Bug: 834478 Test: Note, that this cannot be tested manually, since there is no UI for adding Change-Id: I3a031fe849aa3eb69ce0a429b2ea803ae1855a2b Reviewed-on: https://chromium-review.googlesource.com/1028582 Commit-Queue: Christian Fremerey <chfremer@chromium.org> Reviewed-by: Tom Sepez <tsepez@chromium.org> Reviewed-by: Emircan Uysaler <emircan@chromium.org> Cr-Commit-Position: refs/heads/master@{#555912} [modify] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/content/browser/renderer_host/media/service_video_capture_device_launcher_unittest.cc [modify] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/content/browser/renderer_host/media/service_video_capture_provider_unittest.cc [modify] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/BUILD.gn [modify] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/device_factory_media_to_mojo_adapter.cc [modify] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/device_factory_media_to_mojo_adapter.h [modify] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/public/mojom/BUILD.gn [modify] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/public/mojom/device_factory.mojom [modify] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/public/mojom/receiver.mojom [add] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/public/mojom/scoped_access_permission.mojom [modify] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/public/mojom/virtual_device.mojom [rename] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/shared_memory_virtual_device_mojo_adapter.cc [rename] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/shared_memory_virtual_device_mojo_adapter.h [modify] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/test/device_factory_provider_unittest.cc [modify] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/test/virtual_device_unittest.cc [add] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/texture_virtual_device_mojo_adapter.cc [add] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/texture_virtual_device_mojo_adapter.h [add] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/texture_virtual_device_mojo_adapter_unittest.cc [modify] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/virtual_device_enabled_device_factory.cc [modify] https://crrev.com/3c7b626c766a38e9993f91c9cddcca523e63fecb/services/video_capture/virtual_device_enabled_device_factory.h
Should this be bumped to M69?
Yes, sounds good.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4a02606b229569f6112fb9aa4ab2b71995b173d6 commit 4a02606b229569f6112fb9aa4ab2b71995b173d6 Author: Christian Fremerey <chfremer@chromium.org> Date: Mon Jun 04 21:58:44 2018 [Video Capture] Integration test for virtual device using textures Add a content_browsertest that obtains a connection to the video capture service via the Browser process' service manager. It then registers a virtual device at the service and feeds frames to it. It opens the virtual device in a <video> element on a test page and verifies that the element plays in the expected dimensions and the pixel content on the element changes. Add enum value VIRTUAL_DEVICE to enum class VideoCaptureApi to allow virtual devices to use as value in order to avoid having to pretending to be using any of the platform APIs for actual device capture. The value UNKNOWN cannot be used, because it is interpreted as an error. Design Doc: https://docs.google.com/document/d/1Vt8ME9foAR7vs9azwTP0mAQYUxAEbA1SOQ7hzrcXxP8/edit?usp=sharing Bug: 834478 Test: content_browsertests --gtest_filter=WebRtcVideoCaptureServiceBrowserTest.* Change-Id: Ib26fb5c74c38e0952e57de4cbda80f1bbf8552ef Reviewed-on: https://chromium-review.googlesource.com/1038644 Commit-Queue: Christian Fremerey <chfremer@chromium.org> Reviewed-by: Robert Sesek <rsesek@chromium.org> Reviewed-by: Emircan Uysaler <emircan@chromium.org> Cr-Commit-Position: refs/heads/master@{#564255} [add] https://crrev.com/4a02606b229569f6112fb9aa4ab2b71995b173d6/content/browser/webrtc/webrtc_video_capture_service_browsertest.cc [modify] https://crrev.com/4a02606b229569f6112fb9aa4ab2b71995b173d6/content/test/BUILD.gn [modify] https://crrev.com/4a02606b229569f6112fb9aa4ab2b71995b173d6/content/test/data/media/video_capture_test.html [modify] https://crrev.com/4a02606b229569f6112fb9aa4ab2b71995b173d6/media/capture/mojom/video_capture_types.mojom [modify] https://crrev.com/4a02606b229569f6112fb9aa4ab2b71995b173d6/media/capture/mojom/video_capture_types_mojom_traits.cc [modify] https://crrev.com/4a02606b229569f6112fb9aa4ab2b71995b173d6/media/capture/video/video_capture_device_descriptor.cc [modify] https://crrev.com/4a02606b229569f6112fb9aa4ab2b71995b173d6/media/capture/video/video_capture_device_descriptor.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a91f85e04209881c892a83953058f1e7151c4c87 commit a91f85e04209881c892a83953058f1e7151c4c87 Author: Christian Fremerey <chfremer@chromium.org> Date: Wed Jun 13 17:59:19 2018 [Video Capture] Integration test for virtual device using shared memory buffers Same test case as added with previous CL https://chromium-review.googlesource.com/c/chromium/src/+/1038644 but using shared memory buffers instead of textures. Add a content_browsertest that obtains a connection to the video capture service via the Browser process' service manager. It then registers a virtual device at the service and feeds frames to it. It opens the virtual device in a <video> element on a test page and verifies that the element plays in the expected dimensions and the pixel content on the element changes. Design Doc: https://docs.google.com/document/d/1Vt8ME9foAR7vs9azwTP0mAQYUxAEbA1SOQ7hzrcXxP8/edit?usp=sharing Test: content_browsertests --gtest_filter=WebRtcVideoCaptureServiceBrowserTest.* Bug: 834478 Change-Id: Ib2a364926ac4e5227f0670c587f01b0314a065b5 Reviewed-on: https://chromium-review.googlesource.com/1091809 Commit-Queue: Christian Fremerey <chfremer@chromium.org> Reviewed-by: Emircan Uysaler <emircan@chromium.org> Cr-Commit-Position: refs/heads/master@{#566907} [modify] https://crrev.com/a91f85e04209881c892a83953058f1e7151c4c87/content/browser/webrtc/webrtc_video_capture_service_browsertest.cc
Comment 1 by bugdroid1@chromium.org
, Apr 20 2018