Loading Android.bp +1 −2 Original line number Diff line number Diff line Loading @@ -333,6 +333,7 @@ filegroup { ":installd_aidl", ":keystore_aidl", ":libaudioclient_aidl", ":mediatranscoding_aidl_interface-java-source", ":libbinder_aidl", ":libbluetooth-binder-aidl", ":libcamera_client_aidl", Loading Loading @@ -576,7 +577,6 @@ java_library { // If MimeMap ever becomes its own APEX, then this dependency would need to be removed // in favor of an API stubs dependency in java_library "framework" below. "mimemap", "mediatranscoding_aidl_interface-java", ], // For backwards compatibility. stem: "framework", Loading Loading @@ -623,7 +623,6 @@ java_library { static_libs: [ "exoplayer2-extractor", "android.hardware.wifi-V1.0-java-constants", "mediatranscoding_aidl_interface-java", // Additional dependencies needed to build the ike API classes. "ike-internals", Loading api/system-current.txt +55 −0 Original line number Diff line number Diff line Loading @@ -1741,6 +1741,7 @@ package android.content { field public static final String ETHERNET_SERVICE = "ethernet"; field public static final String EUICC_CARD_SERVICE = "euicc_card"; field public static final String HDMI_CONTROL_SERVICE = "hdmi_control"; field public static final String MEDIA_TRANSCODING_SERVICE = "media_transcoding"; field public static final String NETD_SERVICE = "netd"; field public static final String NETWORK_SCORE_SERVICE = "network_score"; field public static final String OEM_LOCK_SERVICE = "oem_lock"; Loading Loading @@ -4333,6 +4334,60 @@ package android.media { field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public static final int RADIO_TUNER = 1998; // 0x7ce } public final class MediaTranscodeManager implements java.lang.AutoCloseable { method public void close(); method @NonNull public android.media.MediaTranscodeManager.TranscodingJob enqueueRequest(@NonNull android.media.MediaTranscodeManager.TranscodingRequest, @NonNull java.util.concurrent.Executor, @NonNull android.media.MediaTranscodeManager.OnTranscodingFinishedListener) throws java.io.FileNotFoundException; method protected void finalize(); field public static final int PRIORITY_OFFLINE = 2; // 0x2 field public static final int PRIORITY_REALTIME = 1; // 0x1 field public static final int TRANSCODING_TYPE_VIDEO = 1; // 0x1 } @java.lang.FunctionalInterface public static interface MediaTranscodeManager.OnTranscodingFinishedListener { method public void onTranscodingFinished(@NonNull android.media.MediaTranscodeManager.TranscodingJob); } public static final class MediaTranscodeManager.TranscodingJob { method public void cancel(); method public int getJobId(); method @IntRange(from=0, to=100) public int getProgress(); method public int getResult(); method public int getStatus(); method public boolean retry(); method public void setOnProgressUpdateListener(@NonNull java.util.concurrent.Executor, @Nullable android.media.MediaTranscodeManager.TranscodingJob.OnProgressUpdateListener); method public void setOnProgressUpdateListener(int, @NonNull java.util.concurrent.Executor, @Nullable android.media.MediaTranscodeManager.TranscodingJob.OnProgressUpdateListener); field public static final int RESULT_CANCELED = 4; // 0x4 field public static final int RESULT_ERROR = 3; // 0x3 field public static final int RESULT_NONE = 1; // 0x1 field public static final int RESULT_SUCCESS = 2; // 0x2 field public static final int STATUS_FINISHED = 3; // 0x3 field public static final int STATUS_PAUSED = 4; // 0x4 field public static final int STATUS_PENDING = 1; // 0x1 field public static final int STATUS_RUNNING = 2; // 0x2 } @java.lang.FunctionalInterface public static interface MediaTranscodeManager.TranscodingJob.OnProgressUpdateListener { method public void onProgressUpdate(@IntRange(from=0, to=100) int); } public static final class MediaTranscodeManager.TranscodingRequest { method @NonNull public android.net.Uri getDestinationUri(); method public int getPriority(); method @NonNull public android.net.Uri getSourceUri(); method public int getType(); method @Nullable public android.media.MediaFormat getVideoTrackFormat(); } public static final class MediaTranscodeManager.TranscodingRequest.Builder { ctor public MediaTranscodeManager.TranscodingRequest.Builder(); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest build(); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setDestinationUri(@NonNull android.net.Uri); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setPriority(int); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setSourceUri(@NonNull android.net.Uri); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setType(int); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setVideoTrackFormat(@NonNull android.media.MediaFormat); } public class PlayerProxy { method public void pause(); method public void setPan(float); Loading api/test-current.txt +54 −0 Original line number Diff line number Diff line Loading @@ -1819,6 +1819,60 @@ package android.media { method @NonNull public String getOriginalId(); } public final class MediaTranscodeManager implements java.lang.AutoCloseable { method public void close(); method @NonNull public android.media.MediaTranscodeManager.TranscodingJob enqueueRequest(@NonNull android.media.MediaTranscodeManager.TranscodingRequest, @NonNull java.util.concurrent.Executor, @NonNull android.media.MediaTranscodeManager.OnTranscodingFinishedListener) throws java.io.FileNotFoundException; method protected void finalize(); field public static final int PRIORITY_OFFLINE = 2; // 0x2 field public static final int PRIORITY_REALTIME = 1; // 0x1 field public static final int TRANSCODING_TYPE_VIDEO = 1; // 0x1 } @java.lang.FunctionalInterface public static interface MediaTranscodeManager.OnTranscodingFinishedListener { method public void onTranscodingFinished(@NonNull android.media.MediaTranscodeManager.TranscodingJob); } public static final class MediaTranscodeManager.TranscodingJob { method public void cancel(); method public int getJobId(); method @IntRange(from=0, to=100) public int getProgress(); method public int getResult(); method public int getStatus(); method public boolean retry(); method public void setOnProgressUpdateListener(@NonNull java.util.concurrent.Executor, @Nullable android.media.MediaTranscodeManager.TranscodingJob.OnProgressUpdateListener); method public void setOnProgressUpdateListener(int, @NonNull java.util.concurrent.Executor, @Nullable android.media.MediaTranscodeManager.TranscodingJob.OnProgressUpdateListener); field public static final int RESULT_CANCELED = 4; // 0x4 field public static final int RESULT_ERROR = 3; // 0x3 field public static final int RESULT_NONE = 1; // 0x1 field public static final int RESULT_SUCCESS = 2; // 0x2 field public static final int STATUS_FINISHED = 3; // 0x3 field public static final int STATUS_PAUSED = 4; // 0x4 field public static final int STATUS_PENDING = 1; // 0x1 field public static final int STATUS_RUNNING = 2; // 0x2 } @java.lang.FunctionalInterface public static interface MediaTranscodeManager.TranscodingJob.OnProgressUpdateListener { method public void onProgressUpdate(@IntRange(from=0, to=100) int); } public static final class MediaTranscodeManager.TranscodingRequest { method @NonNull public android.net.Uri getDestinationUri(); method public int getPriority(); method @NonNull public android.net.Uri getSourceUri(); method public int getType(); method @Nullable public android.media.MediaFormat getVideoTrackFormat(); } public static final class MediaTranscodeManager.TranscodingRequest.Builder { ctor public MediaTranscodeManager.TranscodingRequest.Builder(); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest build(); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setDestinationUri(@NonNull android.net.Uri); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setPriority(int); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setSourceUri(@NonNull android.net.Uri); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setType(int); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setVideoTrackFormat(@NonNull android.media.MediaFormat); } public final class PlaybackParams implements android.os.Parcelable { method public int getAudioStretchMode(); method public android.media.PlaybackParams setAudioStretchMode(int); Loading core/java/android/app/SystemServiceRegistry.java +10 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,7 @@ import android.location.LocationManager; import android.media.AudioManager; import android.media.MediaFrameworkInitializer; import android.media.MediaRouter; import android.media.MediaTranscodeManager; import android.media.midi.IMidiManager; import android.media.midi.MidiManager; import android.media.projection.MediaProjectionManager; Loading Loading @@ -305,6 +306,15 @@ public final class SystemServiceRegistry { return new AudioManager(ctx); }}); registerService(Context.MEDIA_TRANSCODING_SERVICE, MediaTranscodeManager.class, new CachedServiceFetcher<MediaTranscodeManager>() { @Override public MediaTranscodeManager createService(ContextImpl ctx) throws ServiceNotFoundException { return new MediaTranscodeManager(ctx); } }); registerService(Context.MEDIA_ROUTER_SERVICE, MediaRouter.class, new CachedServiceFetcher<MediaRouter>() { @Override Loading core/java/android/content/Context.java +11 −0 Original line number Diff line number Diff line Loading @@ -4194,6 +4194,17 @@ public abstract class Context { */ public static final String AUDIO_SERVICE = "audio"; /** * Use with {@link #getSystemService(String)} to retrieve a {@link * android.media.MediaTranscodeManager} for transcoding media. * * @hide * @see #getSystemService(String) * @see android.media.MediaTranscodeManager */ @SystemApi public static final String MEDIA_TRANSCODING_SERVICE = "media_transcoding"; /** * AuthService orchestrates biometric and PIN/pattern/password authentication. * Loading Loading
Android.bp +1 −2 Original line number Diff line number Diff line Loading @@ -333,6 +333,7 @@ filegroup { ":installd_aidl", ":keystore_aidl", ":libaudioclient_aidl", ":mediatranscoding_aidl_interface-java-source", ":libbinder_aidl", ":libbluetooth-binder-aidl", ":libcamera_client_aidl", Loading Loading @@ -576,7 +577,6 @@ java_library { // If MimeMap ever becomes its own APEX, then this dependency would need to be removed // in favor of an API stubs dependency in java_library "framework" below. "mimemap", "mediatranscoding_aidl_interface-java", ], // For backwards compatibility. stem: "framework", Loading Loading @@ -623,7 +623,6 @@ java_library { static_libs: [ "exoplayer2-extractor", "android.hardware.wifi-V1.0-java-constants", "mediatranscoding_aidl_interface-java", // Additional dependencies needed to build the ike API classes. "ike-internals", Loading
api/system-current.txt +55 −0 Original line number Diff line number Diff line Loading @@ -1741,6 +1741,7 @@ package android.content { field public static final String ETHERNET_SERVICE = "ethernet"; field public static final String EUICC_CARD_SERVICE = "euicc_card"; field public static final String HDMI_CONTROL_SERVICE = "hdmi_control"; field public static final String MEDIA_TRANSCODING_SERVICE = "media_transcoding"; field public static final String NETD_SERVICE = "netd"; field public static final String NETWORK_SCORE_SERVICE = "network_score"; field public static final String OEM_LOCK_SERVICE = "oem_lock"; Loading Loading @@ -4333,6 +4334,60 @@ package android.media { field @RequiresPermission(android.Manifest.permission.CAPTURE_AUDIO_OUTPUT) public static final int RADIO_TUNER = 1998; // 0x7ce } public final class MediaTranscodeManager implements java.lang.AutoCloseable { method public void close(); method @NonNull public android.media.MediaTranscodeManager.TranscodingJob enqueueRequest(@NonNull android.media.MediaTranscodeManager.TranscodingRequest, @NonNull java.util.concurrent.Executor, @NonNull android.media.MediaTranscodeManager.OnTranscodingFinishedListener) throws java.io.FileNotFoundException; method protected void finalize(); field public static final int PRIORITY_OFFLINE = 2; // 0x2 field public static final int PRIORITY_REALTIME = 1; // 0x1 field public static final int TRANSCODING_TYPE_VIDEO = 1; // 0x1 } @java.lang.FunctionalInterface public static interface MediaTranscodeManager.OnTranscodingFinishedListener { method public void onTranscodingFinished(@NonNull android.media.MediaTranscodeManager.TranscodingJob); } public static final class MediaTranscodeManager.TranscodingJob { method public void cancel(); method public int getJobId(); method @IntRange(from=0, to=100) public int getProgress(); method public int getResult(); method public int getStatus(); method public boolean retry(); method public void setOnProgressUpdateListener(@NonNull java.util.concurrent.Executor, @Nullable android.media.MediaTranscodeManager.TranscodingJob.OnProgressUpdateListener); method public void setOnProgressUpdateListener(int, @NonNull java.util.concurrent.Executor, @Nullable android.media.MediaTranscodeManager.TranscodingJob.OnProgressUpdateListener); field public static final int RESULT_CANCELED = 4; // 0x4 field public static final int RESULT_ERROR = 3; // 0x3 field public static final int RESULT_NONE = 1; // 0x1 field public static final int RESULT_SUCCESS = 2; // 0x2 field public static final int STATUS_FINISHED = 3; // 0x3 field public static final int STATUS_PAUSED = 4; // 0x4 field public static final int STATUS_PENDING = 1; // 0x1 field public static final int STATUS_RUNNING = 2; // 0x2 } @java.lang.FunctionalInterface public static interface MediaTranscodeManager.TranscodingJob.OnProgressUpdateListener { method public void onProgressUpdate(@IntRange(from=0, to=100) int); } public static final class MediaTranscodeManager.TranscodingRequest { method @NonNull public android.net.Uri getDestinationUri(); method public int getPriority(); method @NonNull public android.net.Uri getSourceUri(); method public int getType(); method @Nullable public android.media.MediaFormat getVideoTrackFormat(); } public static final class MediaTranscodeManager.TranscodingRequest.Builder { ctor public MediaTranscodeManager.TranscodingRequest.Builder(); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest build(); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setDestinationUri(@NonNull android.net.Uri); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setPriority(int); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setSourceUri(@NonNull android.net.Uri); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setType(int); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setVideoTrackFormat(@NonNull android.media.MediaFormat); } public class PlayerProxy { method public void pause(); method public void setPan(float); Loading
api/test-current.txt +54 −0 Original line number Diff line number Diff line Loading @@ -1819,6 +1819,60 @@ package android.media { method @NonNull public String getOriginalId(); } public final class MediaTranscodeManager implements java.lang.AutoCloseable { method public void close(); method @NonNull public android.media.MediaTranscodeManager.TranscodingJob enqueueRequest(@NonNull android.media.MediaTranscodeManager.TranscodingRequest, @NonNull java.util.concurrent.Executor, @NonNull android.media.MediaTranscodeManager.OnTranscodingFinishedListener) throws java.io.FileNotFoundException; method protected void finalize(); field public static final int PRIORITY_OFFLINE = 2; // 0x2 field public static final int PRIORITY_REALTIME = 1; // 0x1 field public static final int TRANSCODING_TYPE_VIDEO = 1; // 0x1 } @java.lang.FunctionalInterface public static interface MediaTranscodeManager.OnTranscodingFinishedListener { method public void onTranscodingFinished(@NonNull android.media.MediaTranscodeManager.TranscodingJob); } public static final class MediaTranscodeManager.TranscodingJob { method public void cancel(); method public int getJobId(); method @IntRange(from=0, to=100) public int getProgress(); method public int getResult(); method public int getStatus(); method public boolean retry(); method public void setOnProgressUpdateListener(@NonNull java.util.concurrent.Executor, @Nullable android.media.MediaTranscodeManager.TranscodingJob.OnProgressUpdateListener); method public void setOnProgressUpdateListener(int, @NonNull java.util.concurrent.Executor, @Nullable android.media.MediaTranscodeManager.TranscodingJob.OnProgressUpdateListener); field public static final int RESULT_CANCELED = 4; // 0x4 field public static final int RESULT_ERROR = 3; // 0x3 field public static final int RESULT_NONE = 1; // 0x1 field public static final int RESULT_SUCCESS = 2; // 0x2 field public static final int STATUS_FINISHED = 3; // 0x3 field public static final int STATUS_PAUSED = 4; // 0x4 field public static final int STATUS_PENDING = 1; // 0x1 field public static final int STATUS_RUNNING = 2; // 0x2 } @java.lang.FunctionalInterface public static interface MediaTranscodeManager.TranscodingJob.OnProgressUpdateListener { method public void onProgressUpdate(@IntRange(from=0, to=100) int); } public static final class MediaTranscodeManager.TranscodingRequest { method @NonNull public android.net.Uri getDestinationUri(); method public int getPriority(); method @NonNull public android.net.Uri getSourceUri(); method public int getType(); method @Nullable public android.media.MediaFormat getVideoTrackFormat(); } public static final class MediaTranscodeManager.TranscodingRequest.Builder { ctor public MediaTranscodeManager.TranscodingRequest.Builder(); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest build(); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setDestinationUri(@NonNull android.net.Uri); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setPriority(int); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setSourceUri(@NonNull android.net.Uri); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setType(int); method @NonNull public android.media.MediaTranscodeManager.TranscodingRequest.Builder setVideoTrackFormat(@NonNull android.media.MediaFormat); } public final class PlaybackParams implements android.os.Parcelable { method public int getAudioStretchMode(); method public android.media.PlaybackParams setAudioStretchMode(int); Loading
core/java/android/app/SystemServiceRegistry.java +10 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,7 @@ import android.location.LocationManager; import android.media.AudioManager; import android.media.MediaFrameworkInitializer; import android.media.MediaRouter; import android.media.MediaTranscodeManager; import android.media.midi.IMidiManager; import android.media.midi.MidiManager; import android.media.projection.MediaProjectionManager; Loading Loading @@ -305,6 +306,15 @@ public final class SystemServiceRegistry { return new AudioManager(ctx); }}); registerService(Context.MEDIA_TRANSCODING_SERVICE, MediaTranscodeManager.class, new CachedServiceFetcher<MediaTranscodeManager>() { @Override public MediaTranscodeManager createService(ContextImpl ctx) throws ServiceNotFoundException { return new MediaTranscodeManager(ctx); } }); registerService(Context.MEDIA_ROUTER_SERVICE, MediaRouter.class, new CachedServiceFetcher<MediaRouter>() { @Override Loading
core/java/android/content/Context.java +11 −0 Original line number Diff line number Diff line Loading @@ -4194,6 +4194,17 @@ public abstract class Context { */ public static final String AUDIO_SERVICE = "audio"; /** * Use with {@link #getSystemService(String)} to retrieve a {@link * android.media.MediaTranscodeManager} for transcoding media. * * @hide * @see #getSystemService(String) * @see android.media.MediaTranscodeManager */ @SystemApi public static final String MEDIA_TRANSCODING_SERVICE = "media_transcoding"; /** * AuthService orchestrates biometric and PIN/pattern/password authentication. * Loading