1

MediaCrypto类可以与 结合使用MediaCodec来解码加密的媒体数据。加密方案分配有 16 字节 UUID,该方法isCryptoSchemeSupported(UUID)可用于查询设备是否支持给定方案。 http://developer.android.com/reference/android/media/MediaCrypto.html

但是什么是加密方案 UUID,我在哪里可以得到它?好像我错过了。

提前致谢 :)

4

2 回答 2

1

UUID 是插件标识符,因此 UUID 取决于 OEM 提供的内容

下面的代码片段来自MediaDrmMockTest.java(尝试使用模拟插件)

static final UUID mockScheme = new UUID(0x0102030405060708L, 0x090a0b0c0d0e0f10L);

于 2014-01-05T15:01:57.860 回答
1

MediaDrm文档

该应用程序首先构造 MediaExtractor 和 MediaCodec 对象。它访问 DRM-scheme-identifying UUID,通常来自内容中的元数据,并使用此 UUID 构造能够支持内容所需 DRM 方案的 MediaDrm 对象的实例。

所以 UUID 是从内容中提取的,如果你已经有的话,但我不清楚你是如何提取它的。

您可以在ExoPlayer 源代码中找到一些 UUID :

final UUID COMMON_PSSH_UUID = new UUID(0x1077EFECC0B24D02L, 0xACE33C1E52E2FB4BL);
final UUID CLEARKEY_UUID = new UUID(0xE2719D58A985B3C9L, 0x781AB030AF78D30EL);
final UUID WIDEVINE_UUID = new UUID(0xEDEF8BA979D64ACEL, 0xA3C827DCD51D21EDL);
final UUID PLAYREADY_UUID = new UUID(0x9A04F07998404286L, 0xAB92E65BE0885F95L);

(只需连接十六进制数字即可获得完整的 UUID,不带破折号。)DASH 文档列出了更多 UUID:

  • 马林: 5E629AF5-38DA-4063-8977-97FFBD9902D4
  • Verimatrix VCAS:9a27dd82-fde2-4725-8cbc-4234aa06ec09
  • Adobe黄金时段:F239E769-EFA3-4850-9C16-A903C6932EFB

和别的。

于 2018-01-29T22:11:21.417 回答