OLD | NEW |
---|---|
1 /* | 1 /* |
2 * Copyright 2016 The WebRTC project authors. All Rights Reserved. | 2 * Copyright 2016 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
11 #include "webrtc/api/video/i420_buffer.h" | 11 #include "webrtc/api/video/i420_buffer.h" |
12 #include "webrtc/api/video/video_frame.h" | 12 #include "webrtc/api/video/video_frame.h" |
13 #include "webrtc/base/gunit.h" | 13 //#include "webrtc/base/gunit.h" |
kthelgason
2017/02/27 14:02:39
I guess this should not have been included?
sprang_webrtc
2017/02/28 08:46:28
Oops. Removed
| |
14 #include "webrtc/media/base/fakevideorenderer.h" | 14 #include "webrtc/media/base/fakevideorenderer.h" |
15 #include "webrtc/media/base/videobroadcaster.h" | 15 #include "webrtc/media/base/videobroadcaster.h" |
16 #include "webrtc/test/gtest.h" | |
16 | 17 |
17 using rtc::VideoBroadcaster; | 18 using rtc::VideoBroadcaster; |
18 using rtc::VideoSinkWants; | 19 using rtc::VideoSinkWants; |
19 using cricket::FakeVideoRenderer; | 20 using cricket::FakeVideoRenderer; |
20 | 21 |
21 | 22 |
22 TEST(VideoBroadcasterTest, frame_wanted) { | 23 TEST(VideoBroadcasterTest, frame_wanted) { |
23 VideoBroadcaster broadcaster; | 24 VideoBroadcaster broadcaster; |
24 EXPECT_FALSE(broadcaster.frame_wanted()); | 25 EXPECT_FALSE(broadcaster.frame_wanted()); |
25 | 26 |
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
120 FakeVideoRenderer sink2; | 121 FakeVideoRenderer sink2; |
121 VideoSinkWants wants2; | 122 VideoSinkWants wants2; |
122 wants2.target_pixel_count = rtc::Optional<int>(640 * 360); | 123 wants2.target_pixel_count = rtc::Optional<int>(640 * 360); |
123 broadcaster.AddOrUpdateSink(&sink2, wants2); | 124 broadcaster.AddOrUpdateSink(&sink2, wants2); |
124 EXPECT_EQ(640 * 360, *broadcaster.wants().target_pixel_count); | 125 EXPECT_EQ(640 * 360, *broadcaster.wants().target_pixel_count); |
125 | 126 |
126 broadcaster.RemoveSink(&sink2); | 127 broadcaster.RemoveSink(&sink2); |
127 EXPECT_EQ(1280 * 720, *broadcaster.wants().target_pixel_count); | 128 EXPECT_EQ(1280 * 720, *broadcaster.wants().target_pixel_count); |
128 } | 129 } |
129 | 130 |
131 TEST(VideoBroadcasterTest, AppliesMinOfSinkWantsMaxFramerate) { | |
132 VideoBroadcaster broadcaster; | |
133 EXPECT_TRUE(!broadcaster.wants().max_framerate_fps_); | |
magjed_webrtc
2017/02/27 09:30:35
Use EXPECT_FALSE instead and remove the negation?
sprang_webrtc
2017/02/27 12:51:49
Done.
| |
134 | |
135 FakeVideoRenderer sink1; | |
136 VideoSinkWants wants1; | |
137 wants1.max_framerate_fps_.emplace(30); | |
138 | |
139 broadcaster.AddOrUpdateSink(&sink1, wants1); | |
140 EXPECT_EQ(30, *broadcaster.wants().max_framerate_fps_); | |
141 | |
142 FakeVideoRenderer sink2; | |
143 VideoSinkWants wants2; | |
144 wants2.max_framerate_fps_.emplace(15); | |
145 broadcaster.AddOrUpdateSink(&sink2, wants2); | |
146 EXPECT_EQ(15, *broadcaster.wants().max_framerate_fps_); | |
147 | |
148 broadcaster.RemoveSink(&sink2); | |
149 EXPECT_EQ(30, *broadcaster.wants().max_framerate_fps_); | |
150 } | |
151 | |
130 TEST(VideoBroadcasterTest, SinkWantsBlackFrames) { | 152 TEST(VideoBroadcasterTest, SinkWantsBlackFrames) { |
131 VideoBroadcaster broadcaster; | 153 VideoBroadcaster broadcaster; |
132 EXPECT_TRUE(!broadcaster.wants().black_frames); | 154 EXPECT_TRUE(!broadcaster.wants().black_frames); |
133 | 155 |
134 FakeVideoRenderer sink1; | 156 FakeVideoRenderer sink1; |
135 VideoSinkWants wants1; | 157 VideoSinkWants wants1; |
136 wants1.black_frames = true; | 158 wants1.black_frames = true; |
137 broadcaster.AddOrUpdateSink(&sink1, wants1); | 159 broadcaster.AddOrUpdateSink(&sink1, wants1); |
138 | 160 |
139 FakeVideoRenderer sink2; | 161 FakeVideoRenderer sink2; |
(...skipping 21 matching lines...) Expand all Loading... | |
161 broadcaster.AddOrUpdateSink(&sink2, wants2); | 183 broadcaster.AddOrUpdateSink(&sink2, wants2); |
162 | 184 |
163 webrtc::VideoFrame frame2(buffer, webrtc::kVideoRotation_0, | 185 webrtc::VideoFrame frame2(buffer, webrtc::kVideoRotation_0, |
164 30 /* timestamp_us */); | 186 30 /* timestamp_us */); |
165 broadcaster.OnFrame(frame2); | 187 broadcaster.OnFrame(frame2); |
166 EXPECT_FALSE(sink1.black_frame()); | 188 EXPECT_FALSE(sink1.black_frame()); |
167 EXPECT_EQ(30, sink1.timestamp_us()); | 189 EXPECT_EQ(30, sink1.timestamp_us()); |
168 EXPECT_TRUE(sink2.black_frame()); | 190 EXPECT_TRUE(sink2.black_frame()); |
169 EXPECT_EQ(30, sink2.timestamp_us()); | 191 EXPECT_EQ(30, sink2.timestamp_us()); |
170 } | 192 } |
OLD | NEW |