Change HdrMetadataExtension to ColorSpaceExtension
Bug: webrtc:8651 Change-Id: Ica6f8c6bd13bb07f89700b9c0a359b9a58feefbb Reviewed-on: https://webrtc-review.googlesource.com/c/111758 Commit-Queue: Johannes Kron <kron@webrtc.org> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org> Reviewed-by: Åsa Persson <asapersson@webrtc.org> Cr-Commit-Position: refs/heads/master@{#25800}
This commit is contained in:
committed by
Commit Bot
parent
53382cb19f
commit
09d6588d93
@ -203,6 +203,34 @@ HdrMetadata CreateTestHdrMetadata() {
|
||||
hdr_metadata.max_frame_average_light_level = 1789;
|
||||
return hdr_metadata;
|
||||
}
|
||||
|
||||
ColorSpace CreateTestColorSpace(bool with_hdr_metadata) {
|
||||
ColorSpace color_space(
|
||||
ColorSpace::PrimaryID::kBT709, ColorSpace::TransferID::kGAMMA22,
|
||||
ColorSpace::MatrixID::kSMPTE2085, ColorSpace::RangeID::kFull);
|
||||
if (with_hdr_metadata) {
|
||||
HdrMetadata hdr_metadata = CreateTestHdrMetadata();
|
||||
color_space.set_hdr_metadata(&hdr_metadata);
|
||||
}
|
||||
return color_space;
|
||||
}
|
||||
|
||||
void TestCreateAndParseColorSpaceExtension(bool with_hdr_metadata) {
|
||||
// Create packet with extension.
|
||||
RtpPacket::ExtensionManager extensions(/*extmap-allow-mixed=*/true);
|
||||
extensions.Register<ColorSpaceExtension>(1);
|
||||
RtpPacket packet(&extensions);
|
||||
const ColorSpace kColorSpace = CreateTestColorSpace(with_hdr_metadata);
|
||||
EXPECT_TRUE(packet.SetExtension<ColorSpaceExtension>(kColorSpace));
|
||||
packet.SetPayloadSize(42);
|
||||
|
||||
// Read packet with the extension.
|
||||
RtpPacketReceived parsed(&extensions);
|
||||
EXPECT_TRUE(parsed.Parse(packet.Buffer()));
|
||||
ColorSpace parsed_color_space;
|
||||
EXPECT_TRUE(parsed.GetExtension<ColorSpaceExtension>(&parsed_color_space));
|
||||
EXPECT_EQ(kColorSpace, parsed_color_space);
|
||||
}
|
||||
} // namespace
|
||||
|
||||
TEST(RtpPacketTest, CreateMinimum) {
|
||||
@ -819,21 +847,12 @@ TEST(RtpPacketTest, ParseLegacyTimingFrameExtension) {
|
||||
EXPECT_EQ(receivied_timing.flags, 0);
|
||||
}
|
||||
|
||||
TEST(RtpPacketTest, CreateAndParseHdrMetadataExtension) {
|
||||
// Create packet with extension.
|
||||
RtpPacket::ExtensionManager extensions(/*extmap-allow-mixed=*/true);
|
||||
extensions.Register<HdrMetadataExtension>(1);
|
||||
RtpPacket packet(&extensions);
|
||||
const HdrMetadata kHdrMetadata = CreateTestHdrMetadata();
|
||||
EXPECT_TRUE(packet.SetExtension<HdrMetadataExtension>(kHdrMetadata));
|
||||
packet.SetPayloadSize(42);
|
||||
TEST(RtpPacketTest, CreateAndParseColorSpaceExtension) {
|
||||
TestCreateAndParseColorSpaceExtension(/*with_hdr_metadata=*/true);
|
||||
}
|
||||
|
||||
// Read packet with the extension.
|
||||
RtpPacketReceived parsed(&extensions);
|
||||
EXPECT_TRUE(parsed.Parse(packet.Buffer()));
|
||||
HdrMetadata parsed_hdr_metadata;
|
||||
EXPECT_TRUE(parsed.GetExtension<HdrMetadataExtension>(&parsed_hdr_metadata));
|
||||
EXPECT_EQ(kHdrMetadata, parsed_hdr_metadata);
|
||||
TEST(RtpPacketTest, CreateAndParseColorSpaceExtensionWithoutHdrMetadata) {
|
||||
TestCreateAndParseColorSpaceExtension(/*with_hdr_metadata=*/false);
|
||||
}
|
||||
|
||||
} // namespace webrtc
|
||||
|
||||
Reference in New Issue
Block a user