diff options
author | shubang <shubang@google.com> | 2021-03-18 07:10:22 -0700 |
---|---|---|
committer | shubang <shubang@google.com> | 2021-03-23 22:49:42 -0700 |
commit | c56cc00ab8f98fb93e9039248fa252ace2c2465b (patch) | |
tree | c10964cc2206eb83600bd36d01ad919092998090 /apex/media | |
parent | dc2a0a63f908e263af28a03749cdb40e03f094ef (diff) |
Change session ID string to ID object
Based on API review feedback from jmtrivi@ to reduce unexpected
usage of the APIs.
And add some stub APIs
Reference CLs:
MediaDrm ag/13835091 by robertshih@
MediaExtractor: ag/13607751 by aquilescanta@
MediaParser: ag/13714647 by aquilescanta@
MediaRecorder: ag/13545885 by dichenzhang@
AudioTrack & AudioRecord: ag/13712857 by hunga@
Bug: 183095725
Test: pending CTS
CTS-Coverage-Bug: 183366721
Change-Id: I931edf021a5ec6b27a25bc6142a129b92da0fc9a
Merged-In: I931edf021a5ec6b27a25bc6142a129b92da0fc9a
Diffstat (limited to 'apex/media')
-rw-r--r-- | apex/media/framework/api/current.txt | 2 | ||||
-rw-r--r-- | apex/media/framework/java/android/media/MediaParser.java | 14 |
2 files changed, 16 insertions, 0 deletions
diff --git a/apex/media/framework/api/current.txt b/apex/media/framework/api/current.txt index 80698f7cedc9..bebf0190191b 100644 --- a/apex/media/framework/api/current.txt +++ b/apex/media/framework/api/current.txt @@ -69,10 +69,12 @@ package android.media { method public boolean advance(@NonNull android.media.MediaParser.SeekableInputReader) throws java.io.IOException; method @NonNull public static android.media.MediaParser create(@NonNull android.media.MediaParser.OutputConsumer, @NonNull java.lang.String...); method @NonNull public static android.media.MediaParser createByName(@NonNull String, @NonNull android.media.MediaParser.OutputConsumer); + method @NonNull public android.media.metrics.LogSessionId getLogSessionId(); method @NonNull public String getParserName(); method @NonNull public static java.util.List<java.lang.String> getParserNames(@NonNull android.media.MediaFormat); method public void release(); method public void seek(@NonNull android.media.MediaParser.SeekPoint); + method public void setLogSessionId(@NonNull android.media.metrics.LogSessionId); method @NonNull public android.media.MediaParser setParameter(@NonNull String, @NonNull Object); method public boolean supportsParameter(@NonNull String); field public static final String PARAMETER_ADTS_ENABLE_CBR_SEEKING = "android.media.mediaparser.adts.enableCbrSeeking"; diff --git a/apex/media/framework/java/android/media/MediaParser.java b/apex/media/framework/java/android/media/MediaParser.java index 8bdca766e0dd..cff422d0aafe 100644 --- a/apex/media/framework/java/android/media/MediaParser.java +++ b/apex/media/framework/java/android/media/MediaParser.java @@ -21,6 +21,7 @@ import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.StringDef; import android.media.MediaCodec.CryptoInfo; +import android.media.metrics.LogSessionId; import android.os.Build; import android.text.TextUtils; import android.util.Log; @@ -74,6 +75,7 @@ import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.UUID; import java.util.concurrent.ThreadLocalRandom; import java.util.function.Function; @@ -1066,6 +1068,7 @@ public final class MediaParser { private boolean mReleased; // MediaMetrics fields. + @NonNull private LogSessionId mLogSessionId = LogSessionId.LOG_SESSION_ID_NONE; private final boolean mCreatedByName; private final SparseArray<Format> mTrackFormats; private String mLastObservedExceptionName; @@ -1328,6 +1331,7 @@ public final class MediaParser { MEDIAMETRICS_PARAMETER_LIST_MAX_LENGTH)); nativeSubmitMetrics( + // TODO: mLogSessionId, mParserName, mCreatedByName, String.join(MEDIAMETRICS_ELEMENT_SEPARATOR, mParserNamesPool), @@ -1341,6 +1345,15 @@ public final class MediaParser { videoHeight); } + public void setLogSessionId(@NonNull LogSessionId sessionId) { + this.mLogSessionId = Objects.requireNonNull(sessionId); + } + + @NonNull + public LogSessionId getLogSessionId() { + return mLogSessionId; + } + // Private methods. private MediaParser( @@ -2184,6 +2197,7 @@ public final class MediaParser { // Native methods. private native void nativeSubmitMetrics( + // TODO: String logSessionId, String parserName, boolean createdByName, String parserPool, |