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

Unified Diff: webrtc/test/video_codec_settings.h

Issue 2993923002: Removing VCMCodecDataBase::Codec and VideoCodingModule::Codec. (Closed)
Patch Set: Remove deprate - let sprang handle when method is removed Created 3 years, 4 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
« no previous file with comments | « webrtc/test/BUILD.gn ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/test/video_codec_settings.h
diff --git a/webrtc/test/video_codec_settings.h b/webrtc/test/video_codec_settings.h
new file mode 100644
index 0000000000000000000000000000000000000000..1487393999ee4845abcc73bc68e56f67ef1567d7
--- /dev/null
+++ b/webrtc/test/video_codec_settings.h
@@ -0,0 +1,111 @@
+/*
+ * Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
+ *
+ * Use of this source code is governed by a BSD-style license
+ * that can be found in the LICENSE file in the root of the source
+ * tree. An additional intellectual property rights grant can be found
+ * in the file PATENTS. All contributing project authors may
+ * be found in the AUTHORS file in the root of the source tree.
+ */
+#ifndef WEBRTC_TEST_VIDEO_CODEC_SETTINGS_H_
+#define WEBRTC_TEST_VIDEO_CODEC_SETTINGS_H_
+
+#include "webrtc/api/video_codecs/video_encoder.h"
+
+namespace webrtc {
+namespace test {
+
+const uint16_t kTestWidth = 352;
+const uint16_t kTestHeight = 288;
+const uint32_t kTestFrameRate = 30;
+const unsigned int kTestMinBitrateKbps = 30;
+const unsigned int kTestStartBitrateKbps = 300;
+const uint8_t kTestPayloadType = 100;
+const int64_t kTestTimingFramesDelayMs = 200;
+const uint16_t kTestOutlierFrameSizePercent = 250;
+
+static void CodecSettings(VideoCodecType codec_type, VideoCodec* settings) {
+ memset(settings, 0, sizeof(VideoCodec));
+ switch (codec_type) {
+ case kVideoCodecVP8:
+ strncpy(settings->plName, "VP8", 4);
+ settings->codecType = kVideoCodecVP8;
+ // 96 to 127 dynamic payload types for video codecs.
+ settings->plType = kTestPayloadType;
+ settings->startBitrate = kTestStartBitrateKbps;
+ settings->minBitrate = kTestMinBitrateKbps;
+ settings->maxBitrate = 0;
+ settings->maxFramerate = kTestFrameRate;
+ settings->width = kTestWidth;
+ settings->height = kTestHeight;
+ settings->numberOfSimulcastStreams = 0;
+ settings->qpMax = 56;
+ settings->timing_frame_thresholds = {
+ kTestTimingFramesDelayMs, kTestOutlierFrameSizePercent,
+ };
+ *(settings->VP8()) = VideoEncoder::GetDefaultVp8Settings();
+ return;
+ case kVideoCodecVP9:
+ strncpy(settings->plName, "VP9", 4);
+ settings->codecType = kVideoCodecVP9;
+ // 96 to 127 dynamic payload types for video codecs.
+ settings->plType = kTestPayloadType;
+ settings->startBitrate = 100;
+ settings->minBitrate = kTestMinBitrateKbps;
+ settings->maxBitrate = 0;
+ settings->maxFramerate = kTestFrameRate;
+ settings->width = kTestWidth;
+ settings->height = kTestHeight;
+ settings->numberOfSimulcastStreams = 0;
+ settings->qpMax = 56;
+ settings->timing_frame_thresholds = {
+ kTestTimingFramesDelayMs, kTestOutlierFrameSizePercent,
+ };
+ *(settings->VP9()) = VideoEncoder::GetDefaultVp9Settings();
+ return;
+ case kVideoCodecH264:
+ strncpy(settings->plName, "H264", 5);
+ settings->codecType = kVideoCodecH264;
+ // 96 to 127 dynamic payload types for video codecs.
+ settings->plType = kTestPayloadType;
+ settings->startBitrate = kTestStartBitrateKbps;
+ settings->minBitrate = kTestMinBitrateKbps;
+ settings->maxBitrate = 0;
+ settings->maxFramerate = kTestFrameRate;
+ settings->width = kTestWidth;
+ settings->height = kTestHeight;
+ settings->numberOfSimulcastStreams = 0;
+ settings->qpMax = 56;
+ settings->timing_frame_thresholds = {
+ kTestTimingFramesDelayMs, kTestOutlierFrameSizePercent,
+ };
+ *(settings->H264()) = VideoEncoder::GetDefaultH264Settings();
+ return;
+ case kVideoCodecI420:
+ strncpy(settings->plName, "I420", 5);
+ settings->codecType = kVideoCodecI420;
+ // 96 to 127 dynamic payload types for video codecs.
+ settings->plType = kTestPayloadType;
+ // Bitrate needed for this size and framerate.
+ settings->startBitrate =
+ 3 * kTestWidth * kTestHeight * 8 * kTestFrameRate / 1000 / 2;
+ settings->maxBitrate = settings->startBitrate;
+ settings->maxFramerate = kTestFrameRate;
+ settings->width = kTestWidth;
+ settings->height = kTestHeight;
+ settings->minBitrate = kTestMinBitrateKbps;
+ settings->numberOfSimulcastStreams = 0;
+ return;
+ case kVideoCodecRED:
+ case kVideoCodecULPFEC:
+ case kVideoCodecFlexfec:
+ case kVideoCodecGeneric:
+ case kVideoCodecUnknown:
+ RTC_NOTREACHED();
+ return;
+ }
+}
+} // namespace test
+} // namespace webrtc
+
+#endif // WEBRTC_TEST_VIDEO_CODEC_SETTINGS_H_
« no previous file with comments | « webrtc/test/BUILD.gn ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698