Set new defaults for vp8 decoder deblocking params

Bug: webrtc:11551
Change-Id: Ica8d587c32b36500739120205dde954502e01c3f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/217383
Commit-Queue: Erik Språng <sprang@webrtc.org>
Reviewed-by: Åsa Persson <asapersson@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33924}
This commit is contained in:
Erik Språng
2021-05-05 10:57:48 +02:00
committed by WebRTC LUCI CQ
parent c89fdd716c
commit fc88df81f6
3 changed files with 10 additions and 11 deletions

View File

@ -301,7 +301,7 @@ TEST(VideoCodecTestLibvpx, MAYBE_ChangeFramerateVP8) {
{31, 30, 0.85, 0.84}, {31.5, 30.5, 0.86, 0.84}, {30.5, 29, 0.83, 0.78}};
#else
std::vector<QualityThresholds> quality_thresholds = {
{31, 30, 0.87, 0.86}, {32, 31, 0.89, 0.86}, {32, 30, 0.87, 0.82}};
{31, 30, 0.87, 0.85}, {32, 31, 0.88, 0.85}, {32, 30, 0.87, 0.82}};
#endif
fixture->RunTest(rate_profiles, &rc_thresholds, &quality_thresholds, nullptr);
}

View File

@ -54,13 +54,9 @@ constexpr bool kIsArm = false;
#endif
absl::optional<LibvpxVp8Decoder::DeblockParams> DefaultDeblockParams() {
if (kIsArm) {
// For ARM, this is only called when deblocking is explicitly enabled, and
// the default strength is set by the ctor.
return LibvpxVp8Decoder::DeblockParams();
}
// For non-arm, don't use the explicit deblocking settings by default.
return absl::nullopt;
return LibvpxVp8Decoder::DeblockParams(/*max_level=*/8,
/*degrade_qp=*/60,
/*min_qp=*/30);
}
absl::optional<LibvpxVp8Decoder::DeblockParams>

View File

@ -42,9 +42,12 @@ class LibvpxVp8Decoder : public VideoDecoder {
const char* ImplementationName() const override;
struct DeblockParams {
int max_level = 6; // Deblocking strength: [0, 16].
int degrade_qp = 1; // If QP value is below, start lowering |max_level|.
int min_qp = 0; // If QP value is below, turn off deblocking.
DeblockParams() : max_level(6), degrade_qp(1), min_qp(0) {}
DeblockParams(int max_level, int degrade_qp, int min_qp)
: max_level(max_level), degrade_qp(degrade_qp), min_qp(min_qp) {}
int max_level; // Deblocking strength: [0, 16].
int degrade_qp; // If QP value is below, start lowering |max_level|.
int min_qp; // If QP value is below, turn off deblocking.
};
private: