Revert "Extract color space from Vp8 decoder"
This reverts commit fad2aa23b406ca5d85b8aa9ab891f2067e51c782. Reason for revert: There seems to be a mismatch with Chrome's default for VP8. Original change's description: > Extract color space from Vp8 decoder > > Makes use of ColorSpace class to extract info from Vp8 stream. > > Bug: webrtc:9522 > Change-Id: Id9d46eeea5497c4da31db27bfcf2743612ae4157 > Reviewed-on: https://webrtc-review.googlesource.com/90183 > Reviewed-by: Erik Språng <sprang@webrtc.org> > Commit-Queue: Emircan Uysaler <emircan@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#24086} TBR=sprang@webrtc.org,emircan@webrtc.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: webrtc:9522 Change-Id: Ie589963159c9e7ccbc52bf3fdfcbc383656a4ca9 Reviewed-on: https://webrtc-review.googlesource.com/92500 Reviewed-by: Emircan Uysaler <emircan@webrtc.org> Commit-Queue: Emircan Uysaler <emircan@webrtc.org> Cr-Commit-Position: refs/heads/master@{#24191}
This commit is contained in:

committed by
Commit Bot

parent
8bf477cb2a
commit
ff52e88a74
@ -12,7 +12,6 @@
|
|||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
#include "absl/memory/memory.h"
|
#include "absl/memory/memory.h"
|
||||||
#include "api/video/color_space.h"
|
|
||||||
#include "common_video/libyuv/include/webrtc_libyuv.h"
|
#include "common_video/libyuv/include/webrtc_libyuv.h"
|
||||||
#include "modules/video_coding/codecs/vp8/libvpx_vp8_decoder.h"
|
#include "modules/video_coding/codecs/vp8/libvpx_vp8_decoder.h"
|
||||||
#include "rtc_base/checks.h"
|
#include "rtc_base/checks.h"
|
||||||
@ -306,29 +305,8 @@ int LibvpxVp8Decoder::ReturnFrame(const vpx_image_t* img,
|
|||||||
buffer->MutableDataV(), buffer->StrideV(), img->d_w,
|
buffer->MutableDataV(), buffer->StrideV(), img->d_w,
|
||||||
img->d_h);
|
img->d_h);
|
||||||
|
|
||||||
ColorSpace::RangeID range = ColorSpace::RangeID::kInvalid;
|
VideoFrame decoded_image(buffer, timestamp, 0, kVideoRotation_0);
|
||||||
switch (img->range) {
|
decoded_image.set_ntp_time_ms(ntp_time_ms);
|
||||||
case VPX_CR_STUDIO_RANGE:
|
|
||||||
range = ColorSpace::RangeID::kLimited;
|
|
||||||
break;
|
|
||||||
case VPX_CR_FULL_RANGE:
|
|
||||||
range = ColorSpace::RangeID::kFull;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
VideoFrame decoded_image =
|
|
||||||
VideoFrame::Builder()
|
|
||||||
.set_video_frame_buffer(buffer)
|
|
||||||
.set_timestamp_ms(0)
|
|
||||||
.set_timestamp_rtp(timestamp)
|
|
||||||
.set_ntp_time_ms(ntp_time_ms)
|
|
||||||
.set_rotation(webrtc::kVideoRotation_0)
|
|
||||||
.set_color_space(ColorSpace(ColorSpace::PrimaryID::kSMPTE170M,
|
|
||||||
ColorSpace::TransferID::kSMPTE170M,
|
|
||||||
ColorSpace::MatrixID::kSMPTE170M, range))
|
|
||||||
.build();
|
|
||||||
decode_complete_callback_->Decoded(decoded_image, absl::nullopt, qp);
|
decode_complete_callback_->Decoded(decoded_image, absl::nullopt, qp);
|
||||||
|
|
||||||
return WEBRTC_VIDEO_CODEC_OK;
|
return WEBRTC_VIDEO_CODEC_OK;
|
||||||
|
@ -256,12 +256,6 @@ TEST_F(TestVp8Impl, MAYBE_AlignedStrideEncodeDecode) {
|
|||||||
EXPECT_GT(I420PSNR(input_frame, decoded_frame.get()), 36);
|
EXPECT_GT(I420PSNR(input_frame, decoded_frame.get()), 36);
|
||||||
EXPECT_EQ(kInitialTimestampRtp, decoded_frame->timestamp());
|
EXPECT_EQ(kInitialTimestampRtp, decoded_frame->timestamp());
|
||||||
EXPECT_EQ(kTestNtpTimeMs, decoded_frame->ntp_time_ms());
|
EXPECT_EQ(kTestNtpTimeMs, decoded_frame->ntp_time_ms());
|
||||||
|
|
||||||
const ColorSpace color_space = decoded_frame->color_space().value();
|
|
||||||
EXPECT_EQ(ColorSpace::PrimaryID::kSMPTE170M, color_space.primaries());
|
|
||||||
EXPECT_EQ(ColorSpace::TransferID::kSMPTE170M, color_space.transfer());
|
|
||||||
EXPECT_EQ(ColorSpace::MatrixID::kSMPTE170M, color_space.matrix());
|
|
||||||
EXPECT_EQ(ColorSpace::RangeID::kLimited, color_space.range());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(WEBRTC_ANDROID)
|
#if defined(WEBRTC_ANDROID)
|
||||||
|
Reference in New Issue
Block a user