| Index: content/browser/renderer_host/media/video_capture_controller_unittest.cc
|
| diff --git a/content/browser/renderer_host/media/video_capture_controller_unittest.cc b/content/browser/renderer_host/media/video_capture_controller_unittest.cc
|
| index 4ec783496b92a55620902d9cb6339ac238decd7b..be46ed3149dd50bdcd979185fae529bbdb3d3b63 100644
|
| --- a/content/browser/renderer_host/media/video_capture_controller_unittest.cc
|
| +++ b/content/browser/renderer_host/media/video_capture_controller_unittest.cc
|
| @@ -78,12 +78,14 @@ class MockVideoCaptureControllerEventHandler
|
| }
|
| void OnBufferReady(VideoCaptureControllerID id,
|
| int buffer_id,
|
| - const scoped_refptr<media::VideoFrame>& frame) override {
|
| - EXPECT_EQ(expected_pixel_format_, frame->format());
|
| + media::mojom::VideoFrameInfoPtr frame_info) override {
|
| + EXPECT_EQ(expected_pixel_format_, frame_info->pixel_format);
|
| + media::VideoFrameMetadata metadata;
|
| + metadata.MergeInternalValuesFrom(*frame_info->metadata);
|
| base::TimeTicks reference_time;
|
| - EXPECT_TRUE(frame->metadata()->GetTimeTicks(
|
| - media::VideoFrameMetadata::REFERENCE_TIME, &reference_time));
|
| - DoBufferReady(id, frame->coded_size());
|
| + EXPECT_TRUE(metadata.GetTimeTicks(media::VideoFrameMetadata::REFERENCE_TIME,
|
| + &reference_time));
|
| + DoBufferReady(id, frame_info->coded_size);
|
| base::ThreadTaskRunnerHandle::Get()->PostTask(
|
| FROM_HERE,
|
| base::Bind(&VideoCaptureController::ReturnBuffer,
|
| @@ -111,12 +113,6 @@ class MockConsumerFeedbackObserver
|
| void(int frame_feedback_id, double utilization));
|
| };
|
|
|
| -class MockFrameBufferPool : public media::FrameBufferPool {
|
| - public:
|
| - MOCK_METHOD1(SetBufferHold, void(int buffer_id));
|
| - MOCK_METHOD1(ReleaseBufferHold, void(int buffer_id));
|
| -};
|
| -
|
| // Test class.
|
| class VideoCaptureControllerTest
|
| : public testing::Test,
|
| @@ -138,13 +134,9 @@ class VideoCaptureControllerTest
|
| base::MakeUnique<VideoFrameReceiverOnIOThread>(
|
| controller_->GetWeakPtrForIOThread()),
|
| buffer_pool,
|
| - base::Bind(
|
| - &CreateGpuJpegDecoder,
|
| - base::Bind(&media::VideoFrameReceiver::OnIncomingCapturedVideoFrame,
|
| - controller_->GetWeakPtrForIOThread()))));
|
| - auto frame_receiver_observer = base::MakeUnique<MockFrameBufferPool>();
|
| - mock_frame_receiver_observer_ = frame_receiver_observer.get();
|
| - controller_->SetFrameBufferPool(std::move(frame_receiver_observer));
|
| + base::Bind(&CreateGpuJpegDecoder,
|
| + base::Bind(&media::VideoFrameReceiver::OnFrameReadyInBuffer,
|
| + controller_->GetWeakPtrForIOThread()))));
|
| auto consumer_feedback_observer =
|
| base::MakeUnique<MockConsumerFeedbackObserver>();
|
| mock_consumer_feedback_observer_ = consumer_feedback_observer.get();
|
| @@ -163,7 +155,6 @@ class VideoCaptureControllerTest
|
| std::unique_ptr<MockVideoCaptureControllerEventHandler> client_b_;
|
| std::unique_ptr<VideoCaptureController> controller_;
|
| std::unique_ptr<media::VideoCaptureDevice::Client> device_client_;
|
| - MockFrameBufferPool* mock_frame_receiver_observer_;
|
| MockConsumerFeedbackObserver* mock_consumer_feedback_observer_;
|
| const float arbitrary_frame_rate_ = 10.0f;
|
| const base::TimeTicks arbitrary_reference_time_ = base::TimeTicks();
|
| @@ -344,18 +335,11 @@ TEST_P(VideoCaptureControllerTest, NormalCaptureMultipleClients) {
|
| }
|
| client_a_->resource_utilization_ = 0.5;
|
| client_b_->resource_utilization_ = -1.0;
|
| - {
|
| - InSequence s;
|
| - EXPECT_CALL(*mock_frame_receiver_observer_, SetBufferHold(buffer.id()))
|
| - .Times(1);
|
| - // Expect VideoCaptureController to call the load observer with a
|
| - // resource utilization of 0.5 (the largest of all reported values).
|
| - EXPECT_CALL(*mock_consumer_feedback_observer_,
|
| - OnUtilizationReport(arbitrary_frame_feedback_id, 0.5))
|
| - .Times(1);
|
| - EXPECT_CALL(*mock_frame_receiver_observer_, ReleaseBufferHold(buffer.id()))
|
| - .Times(1);
|
| - }
|
| + // Expect VideoCaptureController to call the load observer with a
|
| + // resource utilization of 0.5 (the largest of all reported values).
|
| + EXPECT_CALL(*mock_consumer_feedback_observer_,
|
| + OnUtilizationReport(arbitrary_frame_feedback_id, 0.5))
|
| + .Times(1);
|
|
|
| device_client_->OnIncomingCapturedBuffer(std::move(buffer),
|
| device_format,
|
| @@ -366,7 +350,6 @@ TEST_P(VideoCaptureControllerTest, NormalCaptureMultipleClients) {
|
| Mock::VerifyAndClearExpectations(client_a_.get());
|
| Mock::VerifyAndClearExpectations(client_b_.get());
|
| Mock::VerifyAndClearExpectations(mock_consumer_feedback_observer_);
|
| - Mock::VerifyAndClearExpectations(mock_frame_receiver_observer_);
|
|
|
| // Second buffer which ought to use the same shared memory buffer. In this
|
| // case pretend that the Buffer pointer is held by the device for a long
|
| @@ -383,18 +366,9 @@ TEST_P(VideoCaptureControllerTest, NormalCaptureMultipleClients) {
|
| client_b_->resource_utilization_ = 3.14;
|
| // Expect VideoCaptureController to call the load observer with a
|
| // resource utilization of 3.14 (the largest of all reported values).
|
| - {
|
| - InSequence s;
|
| - EXPECT_CALL(*mock_frame_receiver_observer_, SetBufferHold(buffer2.id()))
|
| - .Times(1);
|
| - // Expect VideoCaptureController to call the load observer with a
|
| - // resource utilization of 3.14 (the largest of all reported values).
|
| - EXPECT_CALL(*mock_consumer_feedback_observer_,
|
| - OnUtilizationReport(arbitrary_frame_feedback_id_2, 3.14))
|
| - .Times(1);
|
| - EXPECT_CALL(*mock_frame_receiver_observer_, ReleaseBufferHold(buffer2.id()))
|
| - .Times(1);
|
| - }
|
| + EXPECT_CALL(*mock_consumer_feedback_observer_,
|
| + OnUtilizationReport(arbitrary_frame_feedback_id_2, 3.14))
|
| + .Times(1);
|
|
|
| device_client_->OnIncomingCapturedBuffer(std::move(buffer2),
|
| device_format,
|
| @@ -427,7 +401,6 @@ TEST_P(VideoCaptureControllerTest, NormalCaptureMultipleClients) {
|
| Mock::VerifyAndClearExpectations(client_a_.get());
|
| Mock::VerifyAndClearExpectations(client_b_.get());
|
| Mock::VerifyAndClearExpectations(mock_consumer_feedback_observer_);
|
| - Mock::VerifyAndClearExpectations(mock_frame_receiver_observer_);
|
|
|
| // Add a fourth client now that some buffers have come through.
|
| controller_->AddClient(client_b_route_2,
|
|
|