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

Unified Diff: webrtc/media/base/videoadapter_unittest.cc

Issue 2716643002: Add framerate to VideoSinkWants and ability to signal on overuse (Closed)
Patch Set: Fix wireup, keep scale state per degradation pref Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webrtc/media/base/videoadapter_unittest.cc
diff --git a/webrtc/media/base/videoadapter_unittest.cc b/webrtc/media/base/videoadapter_unittest.cc
index 6ec90d841d26d77d8d8d9135a2e831c06bbf030d..33b2b1b7b59d117cdc1e74eb9a040adf3ec4e869 100644
--- a/webrtc/media/base/videoadapter_unittest.cc
+++ b/webrtc/media/base/videoadapter_unittest.cc
@@ -696,8 +696,9 @@ TEST_F(VideoAdapterTest, TestOnResolutionRequestInSmallSteps) {
EXPECT_EQ(720, out_height_);
// Adapt down one step.
- adapter_.OnResolutionRequest(rtc::Optional<int>(),
- rtc::Optional<int>(1280 * 720 - 1));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(),
+ rtc::Optional<int>(1280 * 720 - 1),
+ rtc::Optional<int>());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
@@ -707,8 +708,9 @@ TEST_F(VideoAdapterTest, TestOnResolutionRequestInSmallSteps) {
EXPECT_EQ(540, out_height_);
// Adapt down one step more.
- adapter_.OnResolutionRequest(rtc::Optional<int>(),
- rtc::Optional<int>(960 * 540 - 1));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(),
+ rtc::Optional<int>(960 * 540 - 1),
+ rtc::Optional<int>());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
@@ -718,8 +720,9 @@ TEST_F(VideoAdapterTest, TestOnResolutionRequestInSmallSteps) {
EXPECT_EQ(360, out_height_);
// Adapt down one step more.
- adapter_.OnResolutionRequest(rtc::Optional<int>(),
- rtc::Optional<int>(640 * 360 - 1));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(),
+ rtc::Optional<int>(640 * 360 - 1),
+ rtc::Optional<int>());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
@@ -729,8 +732,9 @@ TEST_F(VideoAdapterTest, TestOnResolutionRequestInSmallSteps) {
EXPECT_EQ(270, out_height_);
// Adapt up one step.
- adapter_.OnResolutionRequest(rtc::Optional<int>(640 * 360),
- rtc::Optional<int>(960 * 540));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(640 * 360),
+ rtc::Optional<int>(960 * 540),
+ rtc::Optional<int>());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
@@ -740,8 +744,9 @@ TEST_F(VideoAdapterTest, TestOnResolutionRequestInSmallSteps) {
EXPECT_EQ(360, out_height_);
// Adapt up one step more.
- adapter_.OnResolutionRequest(rtc::Optional<int>(960 * 540),
- rtc::Optional<int>(1280 * 720));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(960 * 540),
+ rtc::Optional<int>(1280 * 720),
+ rtc::Optional<int>());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
@@ -751,8 +756,9 @@ TEST_F(VideoAdapterTest, TestOnResolutionRequestInSmallSteps) {
EXPECT_EQ(540, out_height_);
// Adapt up one step more.
- adapter_.OnResolutionRequest(rtc::Optional<int>(1280 * 720),
- rtc::Optional<int>(1920 * 1080));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(1280 * 720),
+ rtc::Optional<int>(1920 * 1080),
+ rtc::Optional<int>());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
@@ -771,7 +777,8 @@ TEST_F(VideoAdapterTest, TestOnResolutionRequestMaxZero) {
EXPECT_EQ(1280, out_width_);
EXPECT_EQ(720, out_height_);
- adapter_.OnResolutionRequest(rtc::Optional<int>(), rtc::Optional<int>(0));
+ adapter_.OnResolutionFramerateRequest(
+ rtc::Optional<int>(), rtc::Optional<int>(0), rtc::Optional<int>());
EXPECT_FALSE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
@@ -779,8 +786,9 @@ TEST_F(VideoAdapterTest, TestOnResolutionRequestMaxZero) {
TEST_F(VideoAdapterTest, TestOnResolutionRequestInLargeSteps) {
// Large step down.
- adapter_.OnResolutionRequest(rtc::Optional<int>(),
- rtc::Optional<int>(640 * 360 - 1));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(),
+ rtc::Optional<int>(640 * 360 - 1),
+ rtc::Optional<int>());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
@@ -790,8 +798,9 @@ TEST_F(VideoAdapterTest, TestOnResolutionRequestInLargeSteps) {
EXPECT_EQ(270, out_height_);
// Large step up.
- adapter_.OnResolutionRequest(rtc::Optional<int>(1280 * 720),
- rtc::Optional<int>(1920 * 1080));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(1280 * 720),
+ rtc::Optional<int>(1920 * 1080),
+ rtc::Optional<int>());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
@@ -802,8 +811,9 @@ TEST_F(VideoAdapterTest, TestOnResolutionRequestInLargeSteps) {
}
TEST_F(VideoAdapterTest, TestOnOutputFormatRequestCapsMaxResolution) {
- adapter_.OnResolutionRequest(rtc::Optional<int>(),
- rtc::Optional<int>(640 * 360 - 1));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(),
+ rtc::Optional<int>(640 * 360 - 1),
+ rtc::Optional<int>());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
@@ -822,8 +832,9 @@ TEST_F(VideoAdapterTest, TestOnOutputFormatRequestCapsMaxResolution) {
EXPECT_EQ(480, out_width_);
EXPECT_EQ(270, out_height_);
- adapter_.OnResolutionRequest(rtc::Optional<int>(),
- rtc::Optional<int>(960 * 720));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(),
+ rtc::Optional<int>(960 * 720),
+ rtc::Optional<int>());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
@@ -842,8 +853,9 @@ TEST_F(VideoAdapterTest, TestOnResolutionRequestReset) {
EXPECT_EQ(1280, out_width_);
EXPECT_EQ(720, out_height_);
- adapter_.OnResolutionRequest(rtc::Optional<int>(),
- rtc::Optional<int>(640 * 360 - 1));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(),
+ rtc::Optional<int>(640 * 360 - 1),
+ rtc::Optional<int>());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
@@ -852,7 +864,8 @@ TEST_F(VideoAdapterTest, TestOnResolutionRequestReset) {
EXPECT_EQ(480, out_width_);
EXPECT_EQ(270, out_height_);
- adapter_.OnResolutionRequest(rtc::Optional<int>(), rtc::Optional<int>());
+ adapter_.OnResolutionFramerateRequest(
+ rtc::Optional<int>(), rtc::Optional<int>(), rtc::Optional<int>());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
@@ -876,8 +889,9 @@ TEST_F(VideoAdapterTest, TestCroppingWithResolutionRequest) {
EXPECT_EQ(360, out_height_);
// Adapt down one step.
- adapter_.OnResolutionRequest(rtc::Optional<int>(),
- rtc::Optional<int>(640 * 360 - 1));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(),
+ rtc::Optional<int>(640 * 360 - 1),
+ rtc::Optional<int>());
// Expect cropping to 16:9 format and 3/4 scaling.
EXPECT_TRUE(adapter_.AdaptFrameResolution(640, 480, 0,
&cropped_width_, &cropped_height_,
@@ -888,8 +902,9 @@ TEST_F(VideoAdapterTest, TestCroppingWithResolutionRequest) {
EXPECT_EQ(270, out_height_);
// Adapt down one step more.
- adapter_.OnResolutionRequest(rtc::Optional<int>(),
- rtc::Optional<int>(480 * 270 - 1));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(),
+ rtc::Optional<int>(480 * 270 - 1),
+ rtc::Optional<int>());
// Expect cropping to 16:9 format and 1/2 scaling.
EXPECT_TRUE(adapter_.AdaptFrameResolution(640, 480, 0,
&cropped_width_, &cropped_height_,
@@ -900,8 +915,9 @@ TEST_F(VideoAdapterTest, TestCroppingWithResolutionRequest) {
EXPECT_EQ(180, out_height_);
// Adapt up one step.
- adapter_.OnResolutionRequest(rtc::Optional<int>(480 * 270),
- rtc::Optional<int>(640 * 360));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(480 * 270),
+ rtc::Optional<int>(640 * 360),
+ rtc::Optional<int>());
// Expect cropping to 16:9 format and 3/4 scaling.
EXPECT_TRUE(adapter_.AdaptFrameResolution(640, 480, 0,
&cropped_width_, &cropped_height_,
@@ -912,8 +928,9 @@ TEST_F(VideoAdapterTest, TestCroppingWithResolutionRequest) {
EXPECT_EQ(270, out_height_);
// Adapt up one step more.
- adapter_.OnResolutionRequest(rtc::Optional<int>(640 * 360),
- rtc::Optional<int>(960 * 540));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(640 * 360),
+ rtc::Optional<int>(960 * 540),
+ rtc::Optional<int>());
// Expect cropping to 16:9 format and no scaling.
EXPECT_TRUE(adapter_.AdaptFrameResolution(640, 480, 0,
&cropped_width_, &cropped_height_,
@@ -924,8 +941,9 @@ TEST_F(VideoAdapterTest, TestCroppingWithResolutionRequest) {
EXPECT_EQ(360, out_height_);
// Try to adapt up one step more.
- adapter_.OnResolutionRequest(rtc::Optional<int>(960 * 540),
- rtc::Optional<int>(1280 * 720));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(960 * 540),
+ rtc::Optional<int>(1280 * 720),
+ rtc::Optional<int>());
// Expect cropping to 16:9 format and no scaling.
EXPECT_TRUE(adapter_.AdaptFrameResolution(640, 480, 0,
&cropped_width_, &cropped_height_,
@@ -940,8 +958,9 @@ TEST_F(VideoAdapterTest, TestCroppingOddResolution) {
// Ask for 640x360 (16:9 aspect), with 3/16 scaling.
adapter_.OnOutputFormatRequest(
VideoFormat(640, 360, 0, FOURCC_I420));
- adapter_.OnResolutionRequest(rtc::Optional<int>(),
- rtc::Optional<int>(640 * 360 * 3 / 16 * 3 / 16));
+ adapter_.OnResolutionFramerateRequest(
+ rtc::Optional<int>(), rtc::Optional<int>(640 * 360 * 3 / 16 * 3 / 16),
+ rtc::Optional<int>());
// Send 640x480 (4:3 aspect).
EXPECT_TRUE(adapter_.AdaptFrameResolution(640, 480, 0,
@@ -961,8 +980,9 @@ TEST_F(VideoAdapterTest, TestAdaptToVerySmallResolution) {
const int w = 1920;
const int h = 1080;
adapter_.OnOutputFormatRequest(VideoFormat(w, h, 0, FOURCC_I420));
- adapter_.OnResolutionRequest(rtc::Optional<int>(),
- rtc::Optional<int>(w * h * 1 / 16 * 1 / 16));
+ adapter_.OnResolutionFramerateRequest(
+ rtc::Optional<int>(), rtc::Optional<int>(w * h * 1 / 16 * 1 / 16),
+ rtc::Optional<int>());
// Send 1920x1080 (16:9 aspect).
EXPECT_TRUE(adapter_.AdaptFrameResolution(
@@ -976,8 +996,9 @@ TEST_F(VideoAdapterTest, TestAdaptToVerySmallResolution) {
EXPECT_EQ(67, out_height_);
// Adapt back up one step to 3/32.
- adapter_.OnResolutionRequest(rtc::Optional<int>(w * h * 3 / 32 * 3 / 32),
- rtc::Optional<int>(w * h * 1 / 8 * 1 / 8));
+ adapter_.OnResolutionFramerateRequest(
+ rtc::Optional<int>(w * h * 3 / 32 * 3 / 32),
+ rtc::Optional<int>(w * h * 1 / 8 * 1 / 8), rtc::Optional<int>());
// Send 1920x1080 (16:9 aspect).
EXPECT_TRUE(adapter_.AdaptFrameResolution(
@@ -997,8 +1018,9 @@ TEST_F(VideoAdapterTest, AdaptFrameResolutionDropWithResolutionRequest) {
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
- adapter_.OnResolutionRequest(rtc::Optional<int>(960 * 540),
- rtc::Optional<int>());
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(960 * 540),
+ rtc::Optional<int>(),
+ rtc::Optional<int>());
// Still expect all frames to be dropped
EXPECT_FALSE(adapter_.AdaptFrameResolution(
@@ -1006,8 +1028,9 @@ TEST_F(VideoAdapterTest, AdaptFrameResolutionDropWithResolutionRequest) {
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
- adapter_.OnResolutionRequest(rtc::Optional<int>(),
- rtc::Optional<int>(640 * 480 - 1));
+ adapter_.OnResolutionFramerateRequest(rtc::Optional<int>(),
+ rtc::Optional<int>(640 * 480 - 1),
+ rtc::Optional<int>());
// Still expect all frames to be dropped
EXPECT_FALSE(adapter_.AdaptFrameResolution(
@@ -1019,8 +1042,9 @@ TEST_F(VideoAdapterTest, AdaptFrameResolutionDropWithResolutionRequest) {
// Test that we will adapt to max given a target pixel count close to max.
TEST_F(VideoAdapterTest, TestAdaptToMax) {
adapter_.OnOutputFormatRequest(VideoFormat(640, 360, 0, FOURCC_I420));
- adapter_.OnResolutionRequest(rtc::Optional<int>(640 * 360 - 1) /* target */,
- rtc::Optional<int>());
+ adapter_.OnResolutionFramerateRequest(
+ rtc::Optional<int>(640 * 360 - 1) /* target */, rtc::Optional<int>(),
+ rtc::Optional<int>());
EXPECT_TRUE(adapter_.AdaptFrameResolution(640, 360, 0, &cropped_width_,
&cropped_height_, &out_width_,

Powered by Google App Engine
This is Rietveld 408576698