mirror of
https://github.com/samsonjs/media.git
synced 2026-04-01 10:35:48 +00:00
Expose getMetrics() in ExoV1 and ExoV2 FrameworkMediaDrm classes.
PiperOrigin-RevId: 278054214
This commit is contained in:
parent
922991da88
commit
7e070683a3
3 changed files with 27 additions and 0 deletions
|
|
@ -16,6 +16,7 @@
|
|||
package com.google.android.exoplayer2.drm;
|
||||
|
||||
import android.media.MediaDrmException;
|
||||
import android.os.PersistableBundle;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.annotation.RequiresApi;
|
||||
import com.google.android.exoplayer2.util.Util;
|
||||
|
|
@ -104,6 +105,12 @@ public final class DummyExoMediaDrm<T extends ExoMediaCrypto> implements ExoMedi
|
|||
throw new IllegalStateException();
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
public PersistableBundle getMetrics() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPropertyString(String propertyName) {
|
||||
return "";
|
||||
|
|
|
|||
|
|
@ -21,6 +21,7 @@ import android.media.MediaDrm;
|
|||
import android.media.MediaDrmException;
|
||||
import android.media.NotProvisionedException;
|
||||
import android.os.Handler;
|
||||
import android.os.PersistableBundle;
|
||||
import androidx.annotation.Nullable;
|
||||
import com.google.android.exoplayer2.drm.DrmInitData.SchemeData;
|
||||
import java.util.HashMap;
|
||||
|
|
@ -287,6 +288,14 @@ public interface ExoMediaDrm<T extends ExoMediaCrypto> {
|
|||
*/
|
||||
void restoreKeys(byte[] sessionId, byte[] keySetId);
|
||||
|
||||
/**
|
||||
* Returns drm metrics. May be null if unavailable.
|
||||
*
|
||||
* @see MediaDrm#getMetrics()
|
||||
*/
|
||||
@Nullable
|
||||
PersistableBundle getMetrics();
|
||||
|
||||
/**
|
||||
* @see MediaDrm#getPropertyString(String)
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@ import android.media.MediaDrm;
|
|||
import android.media.MediaDrmException;
|
||||
import android.media.NotProvisionedException;
|
||||
import android.media.UnsupportedSchemeException;
|
||||
import android.os.PersistableBundle;
|
||||
import android.text.TextUtils;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.annotation.RequiresApi;
|
||||
|
|
@ -225,6 +226,16 @@ public final class FrameworkMediaDrm implements ExoMediaDrm<FrameworkMediaCrypto
|
|||
mediaDrm.restoreKeys(sessionId, keySetId);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Nullable
|
||||
@TargetApi(28)
|
||||
public PersistableBundle getMetrics() {
|
||||
if (Util.SDK_INT < 28) {
|
||||
return null;
|
||||
}
|
||||
return mediaDrm.getMetrics();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPropertyString(String propertyName) {
|
||||
return mediaDrm.getPropertyString(propertyName);
|
||||
|
|
|
|||
Loading…
Reference in a new issue