Loading media/codec2/core/include/C2Config.h +6 −0 Original line number Diff line number Diff line Loading @@ -687,6 +687,9 @@ enum C2Config::level_t : uint32_t { LEVEL_DV_MAIN_UHD_30, ///< Dolby Vision main tier uhd30 LEVEL_DV_MAIN_UHD_48, ///< Dolby Vision main tier uhd48 LEVEL_DV_MAIN_UHD_60, ///< Dolby Vision main tier uhd60 LEVEL_DV_MAIN_UHD_120, ///< Dolby Vision main tier uhd120 LEVEL_DV_MAIN_8K_30, ///< Dolby Vision main tier 8k30 LEVEL_DV_MAIN_8K_60, ///< Dolby Vision main tier 8k60 LEVEL_DV_HIGH_HD_24 = _C2_PL_DV_BASE + 0x100, ///< Dolby Vision high tier hd24 LEVEL_DV_HIGH_HD_30, ///< Dolby Vision high tier hd30 Loading @@ -697,6 +700,9 @@ enum C2Config::level_t : uint32_t { LEVEL_DV_HIGH_UHD_30, ///< Dolby Vision high tier uhd30 LEVEL_DV_HIGH_UHD_48, ///< Dolby Vision high tier uhd48 LEVEL_DV_HIGH_UHD_60, ///< Dolby Vision high tier uhd60 LEVEL_DV_HIGH_UHD_120, ///< Dolby Vision high tier uhd120 LEVEL_DV_HIGH_8K_30, ///< Dolby Vision high tier 8k30 LEVEL_DV_HIGH_8K_60, ///< Dolby Vision high tier 8k60 // AV1 levels LEVEL_AV1_2 = _C2_PL_AV1_BASE , ///< AV1 Level 2 Loading media/codec2/sfplugin/utils/Codec2Mapper.cpp +6 −0 Original line number Diff line number Diff line Loading @@ -167,6 +167,9 @@ ALookup<C2Config::level_t, int32_t> sDolbyVisionLevels = { { C2Config::LEVEL_DV_MAIN_UHD_30, DolbyVisionLevelUhd30 }, { C2Config::LEVEL_DV_MAIN_UHD_48, DolbyVisionLevelUhd48 }, { C2Config::LEVEL_DV_MAIN_UHD_60, DolbyVisionLevelUhd60 }, { C2Config::LEVEL_DV_MAIN_UHD_120, DolbyVisionLevelUhd120 }, { C2Config::LEVEL_DV_MAIN_8K_30, DolbyVisionLevel8k30 }, { C2Config::LEVEL_DV_MAIN_8K_60, DolbyVisionLevel8k60 }, // high tiers are not yet supported on android, for now map them to main tier { C2Config::LEVEL_DV_HIGH_HD_24, DolbyVisionLevelHd24 }, Loading @@ -178,6 +181,9 @@ ALookup<C2Config::level_t, int32_t> sDolbyVisionLevels = { { C2Config::LEVEL_DV_HIGH_UHD_30, DolbyVisionLevelUhd30 }, { C2Config::LEVEL_DV_HIGH_UHD_48, DolbyVisionLevelUhd48 }, { C2Config::LEVEL_DV_HIGH_UHD_60, DolbyVisionLevelUhd60 }, { C2Config::LEVEL_DV_HIGH_UHD_120, DolbyVisionLevelUhd120 }, { C2Config::LEVEL_DV_HIGH_8K_30, DolbyVisionLevel8k30 }, { C2Config::LEVEL_DV_HIGH_8K_60, DolbyVisionLevel8k60 }, }; ALookup<C2Config::profile_t, int32_t> sDolbyVisionProfiles = { Loading media/libstagefright/Utils.cpp +6 −0 Original line number Diff line number Diff line Loading @@ -285,6 +285,9 @@ static void parseDolbyVisionProfileLevelFromDvcc(const uint8_t *ptr, size_t size {7, DolbyVisionLevelUhd30}, {8, DolbyVisionLevelUhd48}, {9, DolbyVisionLevelUhd60}, {10, DolbyVisionLevelUhd120}, {11, DolbyVisionLevel8k30}, {12, DolbyVisionLevel8k60}, }; // set rpuAssoc if (rpu_present_flag && el_present_flag && !bl_present_flag) { Loading Loading @@ -2073,6 +2076,9 @@ status_t convertMessageToMetaData(const sp<AMessage> &msg, sp<MetaData> &meta) { {DolbyVisionLevelUhd30, 7}, {DolbyVisionLevelUhd48, 8}, {DolbyVisionLevelUhd60, 9}, {DolbyVisionLevelUhd120, 10}, {DolbyVisionLevel8k30, 11}, {DolbyVisionLevel8k60, 12}, }; levels.map(level, &level_val); ALOGV("found dolby vision level: %d, value: %d", level, level_val); Loading media/libstagefright/include/media/stagefright/MediaCodecConstants.h +6 −0 Original line number Diff line number Diff line Loading @@ -540,6 +540,9 @@ constexpr int32_t DolbyVisionLevelUhd24 = 0x20; constexpr int32_t DolbyVisionLevelUhd30 = 0x40; constexpr int32_t DolbyVisionLevelUhd48 = 0x80; constexpr int32_t DolbyVisionLevelUhd60 = 0x100; constexpr int32_t DolbyVisionLevelUhd120 = 0x200; constexpr int32_t DolbyVisionLevel8k30 = 0x400; constexpr int32_t DolbyVisionLevel8k60 = 0x800; inline static const char *asString_DolbyVisionLevel(int32_t i, const char *def = "??") { switch (i) { Loading @@ -552,6 +555,9 @@ inline static const char *asString_DolbyVisionLevel(int32_t i, const char *def = case DolbyVisionLevelUhd30: return "Uhd30"; case DolbyVisionLevelUhd48: return "Uhd48"; case DolbyVisionLevelUhd60: return "Uhd60"; case DolbyVisionLevelUhd120: return "Uhd120"; case DolbyVisionLevel8k30: return "8k30"; case DolbyVisionLevel8k60: return "8k60"; default: return def; } } Loading Loading
media/codec2/core/include/C2Config.h +6 −0 Original line number Diff line number Diff line Loading @@ -687,6 +687,9 @@ enum C2Config::level_t : uint32_t { LEVEL_DV_MAIN_UHD_30, ///< Dolby Vision main tier uhd30 LEVEL_DV_MAIN_UHD_48, ///< Dolby Vision main tier uhd48 LEVEL_DV_MAIN_UHD_60, ///< Dolby Vision main tier uhd60 LEVEL_DV_MAIN_UHD_120, ///< Dolby Vision main tier uhd120 LEVEL_DV_MAIN_8K_30, ///< Dolby Vision main tier 8k30 LEVEL_DV_MAIN_8K_60, ///< Dolby Vision main tier 8k60 LEVEL_DV_HIGH_HD_24 = _C2_PL_DV_BASE + 0x100, ///< Dolby Vision high tier hd24 LEVEL_DV_HIGH_HD_30, ///< Dolby Vision high tier hd30 Loading @@ -697,6 +700,9 @@ enum C2Config::level_t : uint32_t { LEVEL_DV_HIGH_UHD_30, ///< Dolby Vision high tier uhd30 LEVEL_DV_HIGH_UHD_48, ///< Dolby Vision high tier uhd48 LEVEL_DV_HIGH_UHD_60, ///< Dolby Vision high tier uhd60 LEVEL_DV_HIGH_UHD_120, ///< Dolby Vision high tier uhd120 LEVEL_DV_HIGH_8K_30, ///< Dolby Vision high tier 8k30 LEVEL_DV_HIGH_8K_60, ///< Dolby Vision high tier 8k60 // AV1 levels LEVEL_AV1_2 = _C2_PL_AV1_BASE , ///< AV1 Level 2 Loading
media/codec2/sfplugin/utils/Codec2Mapper.cpp +6 −0 Original line number Diff line number Diff line Loading @@ -167,6 +167,9 @@ ALookup<C2Config::level_t, int32_t> sDolbyVisionLevels = { { C2Config::LEVEL_DV_MAIN_UHD_30, DolbyVisionLevelUhd30 }, { C2Config::LEVEL_DV_MAIN_UHD_48, DolbyVisionLevelUhd48 }, { C2Config::LEVEL_DV_MAIN_UHD_60, DolbyVisionLevelUhd60 }, { C2Config::LEVEL_DV_MAIN_UHD_120, DolbyVisionLevelUhd120 }, { C2Config::LEVEL_DV_MAIN_8K_30, DolbyVisionLevel8k30 }, { C2Config::LEVEL_DV_MAIN_8K_60, DolbyVisionLevel8k60 }, // high tiers are not yet supported on android, for now map them to main tier { C2Config::LEVEL_DV_HIGH_HD_24, DolbyVisionLevelHd24 }, Loading @@ -178,6 +181,9 @@ ALookup<C2Config::level_t, int32_t> sDolbyVisionLevels = { { C2Config::LEVEL_DV_HIGH_UHD_30, DolbyVisionLevelUhd30 }, { C2Config::LEVEL_DV_HIGH_UHD_48, DolbyVisionLevelUhd48 }, { C2Config::LEVEL_DV_HIGH_UHD_60, DolbyVisionLevelUhd60 }, { C2Config::LEVEL_DV_HIGH_UHD_120, DolbyVisionLevelUhd120 }, { C2Config::LEVEL_DV_HIGH_8K_30, DolbyVisionLevel8k30 }, { C2Config::LEVEL_DV_HIGH_8K_60, DolbyVisionLevel8k60 }, }; ALookup<C2Config::profile_t, int32_t> sDolbyVisionProfiles = { Loading
media/libstagefright/Utils.cpp +6 −0 Original line number Diff line number Diff line Loading @@ -285,6 +285,9 @@ static void parseDolbyVisionProfileLevelFromDvcc(const uint8_t *ptr, size_t size {7, DolbyVisionLevelUhd30}, {8, DolbyVisionLevelUhd48}, {9, DolbyVisionLevelUhd60}, {10, DolbyVisionLevelUhd120}, {11, DolbyVisionLevel8k30}, {12, DolbyVisionLevel8k60}, }; // set rpuAssoc if (rpu_present_flag && el_present_flag && !bl_present_flag) { Loading Loading @@ -2073,6 +2076,9 @@ status_t convertMessageToMetaData(const sp<AMessage> &msg, sp<MetaData> &meta) { {DolbyVisionLevelUhd30, 7}, {DolbyVisionLevelUhd48, 8}, {DolbyVisionLevelUhd60, 9}, {DolbyVisionLevelUhd120, 10}, {DolbyVisionLevel8k30, 11}, {DolbyVisionLevel8k60, 12}, }; levels.map(level, &level_val); ALOGV("found dolby vision level: %d, value: %d", level, level_val); Loading
media/libstagefright/include/media/stagefright/MediaCodecConstants.h +6 −0 Original line number Diff line number Diff line Loading @@ -540,6 +540,9 @@ constexpr int32_t DolbyVisionLevelUhd24 = 0x20; constexpr int32_t DolbyVisionLevelUhd30 = 0x40; constexpr int32_t DolbyVisionLevelUhd48 = 0x80; constexpr int32_t DolbyVisionLevelUhd60 = 0x100; constexpr int32_t DolbyVisionLevelUhd120 = 0x200; constexpr int32_t DolbyVisionLevel8k30 = 0x400; constexpr int32_t DolbyVisionLevel8k60 = 0x800; inline static const char *asString_DolbyVisionLevel(int32_t i, const char *def = "??") { switch (i) { Loading @@ -552,6 +555,9 @@ inline static const char *asString_DolbyVisionLevel(int32_t i, const char *def = case DolbyVisionLevelUhd30: return "Uhd30"; case DolbyVisionLevelUhd48: return "Uhd48"; case DolbyVisionLevelUhd60: return "Uhd60"; case DolbyVisionLevelUhd120: return "Uhd120"; case DolbyVisionLevel8k30: return "8k30"; case DolbyVisionLevel8k60: return "8k60"; default: return def; } } Loading