diff --git a/CHANGELOG.md b/CHANGELOG.md index 4b6c31f6..6b82d0c8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## [Unreleased] + +### Added + +- `preferSoftwareDecodingForAds` in `TweaksConfig` to use software decoding for ads, which can be useful for low-end Android devices + ## [0.19.0] (2024-03-22) ### Added diff --git a/android/src/main/java/com/bitmovin/player/reactnative/converter/JsonConverter.kt b/android/src/main/java/com/bitmovin/player/reactnative/converter/JsonConverter.kt index 17acea22..2597218f 100644 --- a/android/src/main/java/com/bitmovin/player/reactnative/converter/JsonConverter.kt +++ b/android/src/main/java/com/bitmovin/player/reactnative/converter/JsonConverter.kt @@ -181,6 +181,7 @@ fun ReadableMap.toTweaksConfig(): TweaksConfig = TweaksConfig().apply { withBoolean("useDrmSessionForClearPeriods") { useDrmSessionForClearPeriods = it } withBoolean("useDrmSessionForClearSources") { useDrmSessionForClearSources = it } withBoolean("useFiletypeExtractorFallbackForHls") { useFiletypeExtractorFallbackForHls = it } + withBoolean("preferSoftwareDecodingForAds") { preferSoftwareDecodingForAds = it } } /** diff --git a/src/tweaksConfig.ts b/src/tweaksConfig.ts index f267db0b..57a2cdd6 100644 --- a/src/tweaksConfig.ts +++ b/src/tweaksConfig.ts @@ -150,4 +150,11 @@ export interface TweaksConfig { * @platform Android */ useFiletypeExtractorFallbackForHls?: boolean; + /** + * Specifies whether the player should prefer software decoding over hardware decoding for ad playback. + * This only affects ads playback, the player will still prefer hardware decoding for the main content. + * + * @platform Android + */ + preferSoftwareDecodingForAds?: boolean; }