diff --git a/libraries/datasource/src/main/java/androidx/media3/datasource/ContentDataSource.java b/libraries/datasource/src/main/java/androidx/media3/datasource/ContentDataSource.java index 32bdeebca4..78d8793d2a 100644 --- a/libraries/datasource/src/main/java/androidx/media3/datasource/ContentDataSource.java +++ b/libraries/datasource/src/main/java/androidx/media3/datasource/ContentDataSource.java @@ -21,19 +21,13 @@ import static java.lang.Math.min; import android.content.ContentResolver; import android.content.Context; import android.content.res.AssetFileDescriptor; -import android.media.ApplicationMediaCapabilities; -import android.media.MediaFeature; -import android.media.MediaFormat; import android.net.Uri; import android.os.Bundle; import android.provider.MediaStore; -import androidx.annotation.DoNotInline; import androidx.annotation.Nullable; -import androidx.annotation.RequiresApi; import androidx.media3.common.C; import androidx.media3.common.PlaybackException; import androidx.media3.common.util.UnstableApi; -import androidx.media3.common.util.Util; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; @@ -78,6 +72,7 @@ public final class ContentDataSource extends BaseDataSource { } @Override + @SuppressWarnings("InlinedApi") // We are inlining EXTRA_ACCEPT_ORIGINAL_MEDIA_FORMAT. public long open(DataSpec dataSpec) throws ContentDataSourceException { try { Uri uri = dataSpec.uri; @@ -88,9 +83,8 @@ public final class ContentDataSource extends BaseDataSource { AssetFileDescriptor assetFileDescriptor; if ("content".equals(dataSpec.uri.getScheme())) { Bundle providerOptions = new Bundle(); - if (Util.SDK_INT >= 31) { - Api31.disableTranscoding(providerOptions); - } + // We don't want compatible media transcoding. + providerOptions.putBoolean(MediaStore.EXTRA_ACCEPT_ORIGINAL_MEDIA_FORMAT, true); assetFileDescriptor = resolver.openTypedAssetFileDescriptor(uri, /* mimeType= */ "*/*", providerOptions); } else { @@ -232,21 +226,4 @@ public final class ContentDataSource extends BaseDataSource { } } } - - @RequiresApi(31) - private static final class Api31 { - - @DoNotInline - public static void disableTranscoding(Bundle providerOptions) { - ApplicationMediaCapabilities mediaCapabilities = - new ApplicationMediaCapabilities.Builder() - .addSupportedVideoMimeType(MediaFormat.MIMETYPE_VIDEO_HEVC) - .addSupportedHdrType(MediaFeature.HdrType.DOLBY_VISION) - .addSupportedHdrType(MediaFeature.HdrType.HDR10) - .addSupportedHdrType(MediaFeature.HdrType.HDR10_PLUS) - .addSupportedHdrType(MediaFeature.HdrType.HLG) - .build(); - providerOptions.putParcelable(MediaStore.EXTRA_MEDIA_CAPABILITIES, mediaCapabilities); - } - } }