From 41cb705b4711909d915f6b6e87d05100050a9e1a Mon Sep 17 00:00:00 2001 From: Zaggy1024 Date: Sat, 1 Oct 2022 17:28:37 -0500 Subject: [PATCH] LibVideo: Allow the VP9 decoder to decode ultra high resolution video Previously, some integer overflows and truncations were causing parsing errors for 4K videos, with those fixed it can fully decode 8K video. This adds a test to ensure that 4K video will continue to be decoded. Note: There seems to be unexpectedly high memory usage while decoding them, causing 8K video to require more than a gigabyte of RAM. (!!!) --- Tests/LibVideo/CMakeLists.txt | 1 + Tests/LibVideo/TestVP9Decode.cpp | 17 ++++++++++++++--- Tests/LibVideo/vp9_4k.webm | Bin 0 -> 101278 bytes Userland/Libraries/LibVideo/VP9/Decoder.cpp | 2 +- Userland/Libraries/LibVideo/VP9/Parser.cpp | 6 +++--- Userland/Libraries/LibVideo/VP9/Parser.h | 2 +- 6 files changed, 20 insertions(+), 8 deletions(-) create mode 100644 Tests/LibVideo/vp9_4k.webm diff --git a/Tests/LibVideo/CMakeLists.txt b/Tests/LibVideo/CMakeLists.txt index eac688ca949a80..2cecbe8bb9b2a7 100644 --- a/Tests/LibVideo/CMakeLists.txt +++ b/Tests/LibVideo/CMakeLists.txt @@ -7,3 +7,4 @@ foreach(source IN LISTS TEST_SOURCES) endforeach() install(FILES vp9_in_webm.webm DESTINATION usr/Tests/LibVideo) +install(FILES vp9_4k.webm DESTINATION usr/Tests/LibVideo) diff --git a/Tests/LibVideo/TestVP9Decode.cpp b/Tests/LibVideo/TestVP9Decode.cpp index eafd8509aa380b..15462b8f1e2207 100644 --- a/Tests/LibVideo/TestVP9Decode.cpp +++ b/Tests/LibVideo/TestVP9Decode.cpp @@ -9,14 +9,15 @@ #include #include -TEST_CASE(webm_in_vp9) +static void decode_video(StringView path, size_t expected_frame_count) { - auto matroska_document = Video::MatroskaReader::MatroskaReader::parse_matroska_from_file("./vp9_in_webm.webm"sv); + auto matroska_document = Video::MatroskaReader::MatroskaReader::parse_matroska_from_file(path); VERIFY(matroska_document); auto video_track_optional = matroska_document->track_for_track_type(Video::TrackEntry::TrackType::Video); VERIFY(video_track_optional.has_value()); auto video_track_entry = video_track_optional.value(); + size_t frame_count = 0; size_t cluster_index, block_index, frame_index; Video::VP9::Decoder vp9_decoder; @@ -29,9 +30,19 @@ TEST_CASE(webm_in_vp9) for (frame_index = 0; frame_index < block.frames().size(); frame_index++) { MUST(vp9_decoder.decode(block.frames()[frame_index])); + frame_count++; } } } + VERIFY(frame_count == expected_frame_count); +} - VERIFY(cluster_index == 1 && block_index == 25 && frame_index == 1); +TEST_CASE(webm_in_vp9) +{ + decode_video("./vp9_in_webm.webm"sv, 25); +} + +BENCHMARK_CASE(vp9_4k) +{ + decode_video("./vp9_4k.webm"sv, 2); } diff --git a/Tests/LibVideo/vp9_4k.webm b/Tests/LibVideo/vp9_4k.webm new file mode 100644 index 0000000000000000000000000000000000000000..99f1184accce0ec38a4b0534ec4c86608663bd25 GIT binary patch literal 101278 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

N3N>!HV27@73u?$rfY}- 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%0DOQH1YBEU^Yby+nMzaD_IlX~3XbiL?C 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

2+=Mii6#7E{gdP1be#wDRo`(7ygb4cfbiNT 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 ~maximum && value <= maximum; } diff --git a/Userland/Libraries/LibVideo/VP9/Parser.cpp b/Userland/Libraries/LibVideo/VP9/Parser.cpp index b5d368a8ea69fd..e457996b19a692 100644 --- a/Userland/Libraries/LibVideo/VP9/Parser.cpp +++ b/Userland/Libraries/LibVideo/VP9/Parser.cpp @@ -979,8 +979,8 @@ DecoderErrorOr Parser::decode_block(u32 row, u32 col, BlockSubsize subsize // write out of bounds. This check seems consistent with libvpx. // See here: // https://github.com/webmproject/libvpx/blob/705bf9de8c96cfe5301451f1d7e5c90a41c64e5f/vp9/decoder/vp9_decodeframe.c#L917 - auto maximum_block_y = min(num_8x8_blocks_high_lookup[subsize], m_mi_rows - row); - auto maximum_block_x = min(num_8x8_blocks_wide_lookup[subsize], m_mi_cols - col); + auto maximum_block_y = min(num_8x8_blocks_high_lookup[subsize], m_mi_rows - row); + auto maximum_block_x = min(num_8x8_blocks_wide_lookup[subsize], m_mi_cols - col); for (size_t y = 0; y < maximum_block_y; y++) { for (size_t x = 0; x < maximum_block_x; x++) { @@ -1337,7 +1337,7 @@ DecoderErrorOr Parser::read_mv_component(u8 component) return (mv_sign ? -1 : 1) * static_cast(mag); } -Gfx::Point Parser::get_decoded_point_for_plane(u8 column, u8 row, u8 plane) +Gfx::Point Parser::get_decoded_point_for_plane(u32 column, u32 row, u8 plane) { if (plane == 0) return { column * 8, row * 8 }; diff --git a/Userland/Libraries/LibVideo/VP9/Parser.h b/Userland/Libraries/LibVideo/VP9/Parser.h index 5a3df1c36ae726..ab49308cf84486 100644 --- a/Userland/Libraries/LibVideo/VP9/Parser.h +++ b/Userland/Libraries/LibVideo/VP9/Parser.h @@ -141,7 +141,7 @@ class Parser { void scale_mv(u8 ref_list, ReferenceFrame ref_frame); void add_mv_ref_list(u8 ref_list); - Gfx::Point get_decoded_point_for_plane(u8 row, u8 column, u8 plane); + Gfx::Point get_decoded_point_for_plane(u32 row, u32 column, u8 plane); Gfx::Size get_decoded_size_for_plane(u8 plane); u8 m_profile { 0 };