From 2b304f1b2dba4f9b581a107b065728ebf0307861 Mon Sep 17 00:00:00 2001 From: Rasmus Brandt Date: Mon, 5 Feb 2018 09:52:47 +0100 Subject: [PATCH] Simplify CodecSettings helper function. Bug: webrtc:8448 Change-Id: I4413fbaeab93690047e0f464b907bfd7f078778c Reviewed-on: https://webrtc-review.googlesource.com/47500 Reviewed-by: Michael Horowitz Reviewed-by: Stefan Holmer Commit-Queue: Rasmus Brandt Cr-Commit-Position: refs/heads/master@{#21957} --- test/video_codec_settings.h | 73 ++++++++++++------------------------- 1 file changed, 23 insertions(+), 50 deletions(-) diff --git a/test/video_codec_settings.h b/test/video_codec_settings.h index bdf8ca5cce..8465013261 100644 --- a/test/video_codec_settings.h +++ b/test/video_codec_settings.h @@ -26,79 +26,52 @@ const uint16_t kTestOutlierFrameSizePercent = 250; static void CodecSettings(VideoCodecType codec_type, VideoCodec* settings) { memset(settings, 0, sizeof(VideoCodec)); + + settings->plType = kTestPayloadType; + + settings->width = kTestWidth; + settings->height = kTestHeight; + + settings->startBitrate = kTestStartBitrateKbps; + settings->maxBitrate = 0; + settings->minBitrate = kTestMinBitrateKbps; + settings->targetBitrate = 0; + + settings->maxFramerate = kTestFrameRate; + + settings->active = true; + + settings->qpMax = 56; // See webrtcvideoengine.h. + settings->numberOfSimulcastStreams = 0; + + settings->timing_frame_thresholds = { + kTestTimingFramesDelayMs, kTestOutlierFrameSizePercent, + }; + 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->active = true; *(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->active = true; *(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->active = true; + // TODO(brandtr): Set |qpMax| here, when the OpenH264 wrapper supports it. *(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; - settings->active = true; return; case kVideoCodecRED: case kVideoCodecULPFEC: