From 86ba260e920e652e3b3a6ac3ec3679686d5e4f3e Mon Sep 17 00:00:00 2001 From: Jason Zhang Date: Tue, 21 Jan 2025 12:45:12 -0800 Subject: [PATCH] Set default color depth to 8 in nplb tests 1. Set the default |color_metadata.bits_per_channel| to 8 for nplb tests. 2. Re-enable SbPlayerTest.MaxVideoCapabilities tests. 3. Added default initializer for AudioStreamInfo, AudioSampleInfo, VideoStreamInfo and VideoSampleInfo. b/292319097 --- starboard/android/shared/test_filters.py | 3 --- starboard/nplb/player_creation_param_helpers.cc | 1 + starboard/shared/starboard/media/media_util.cc | 2 ++ starboard/shared/starboard/media/media_util.h | 14 +++++++------- .../starboard/player/filter/testing/test_util.cc | 1 + 5 files changed, 11 insertions(+), 10 deletions(-) diff --git a/starboard/android/shared/test_filters.py b/starboard/android/shared/test_filters.py index 3b66ae272eac..c25b08ed076a 100644 --- a/starboard/android/shared/test_filters.py +++ b/starboard/android/shared/test_filters.py @@ -87,9 +87,6 @@ # TODO: Filter this test on a per-device basis. 'SbMediaCanPlayMimeAndKeySystem.MinimumSupport', - # TODO: b/292319097 Make this test work on lab devices consistently. - 'SbPlayerTest.MaxVideoCapabilities', - # TODO: b/280432564 Make this test work on lab devices consistently. 'SbAudioSinkTest.ContinuousAppend', diff --git a/starboard/nplb/player_creation_param_helpers.cc b/starboard/nplb/player_creation_param_helpers.cc index a9dfc3c58aba..97c22ab01c16 100644 --- a/starboard/nplb/player_creation_param_helpers.cc +++ b/starboard/nplb/player_creation_param_helpers.cc @@ -111,6 +111,7 @@ VideoStreamInfo CreateVideoStreamInfo(SbMediaVideoCodec codec) { video_stream_info.mime = ""; video_stream_info.max_video_capabilities = ""; + video_stream_info.color_metadata.bits_per_channel = 8; video_stream_info.color_metadata.primaries = kSbMediaPrimaryIdBt709; video_stream_info.color_metadata.transfer = kSbMediaTransferIdBt709; video_stream_info.color_metadata.matrix = kSbMediaMatrixIdBt709; diff --git a/starboard/shared/starboard/media/media_util.cc b/starboard/shared/starboard/media/media_util.cc index e0541d47dc08..113f08f146de 100644 --- a/starboard/shared/starboard/media/media_util.cc +++ b/starboard/shared/starboard/media/media_util.cc @@ -321,6 +321,8 @@ bool IsSDRVideo(int bit_depth, SbMediaPrimaryId primary_id, SbMediaTransferId transfer_id, SbMediaMatrixId matrix_id) { + SB_DCHECK(bit_depth == 8 || bit_depth == 10); + if (bit_depth != 8) { return false; } diff --git a/starboard/shared/starboard/media/media_util.h b/starboard/shared/starboard/media/media_util.h index 030a53fd084c..779875beb4ea 100644 --- a/starboard/shared/starboard/media/media_util.h +++ b/starboard/shared/starboard/media/media_util.h @@ -52,9 +52,9 @@ struct AudioStreamInfo { // of `SbMediaAudioStreamInfo` for more details. SbMediaAudioCodec codec = kSbMediaAudioCodecNone; std::string mime; - uint16_t number_of_channels; - uint32_t samples_per_second; - uint16_t bits_per_sample; + uint16_t number_of_channels = 0; + uint32_t samples_per_second = 0; + uint16_t bits_per_sample = 0; std::vector audio_specific_config; }; @@ -111,9 +111,9 @@ struct VideoStreamInfo { SbMediaVideoCodec codec = kSbMediaVideoCodecNone; std::string mime; std::string max_video_capabilities; - int frame_width; - int frame_height; - SbMediaColorMetadata color_metadata; + int frame_width = 0; + int frame_height = 0; + SbMediaColorMetadata color_metadata = {}; }; bool operator==(const VideoStreamInfo& left, const VideoStreamInfo& right); @@ -141,7 +141,7 @@ struct VideoSampleInfo { // `SbMediaVideoSampleInfo` defined in `media.h`. Please refer to the comment // of `SbMediaVideoSampleInfo` for more details. VideoStreamInfo stream_info; - bool is_key_frame; + bool is_key_frame = false; }; std::ostream& operator<<(std::ostream& os, const VideoSampleInfo& stream_info); diff --git a/starboard/shared/starboard/player/filter/testing/test_util.cc b/starboard/shared/starboard/player/filter/testing/test_util.cc index 3cc4bf5078e7..812e577891a2 100644 --- a/starboard/shared/starboard/player/filter/testing/test_util.cc +++ b/starboard/shared/starboard/player/filter/testing/test_util.cc @@ -275,6 +275,7 @@ media::VideoStreamInfo CreateVideoStreamInfo(SbMediaVideoCodec codec) { video_stream_info.mime = ""; video_stream_info.max_video_capabilities = ""; + video_stream_info.color_metadata.bits_per_channel = 8; video_stream_info.color_metadata.primaries = kSbMediaPrimaryIdBt709; video_stream_info.color_metadata.transfer = kSbMediaTransferIdBt709; video_stream_info.color_metadata.matrix = kSbMediaMatrixIdBt709;