Add warning log if DASH manifest contains incomplete ClearKey info

Unfortunately we can't fail any more obviously at this point, because
manifests often contain config for multiple DRM schemes, and when
parsing the manifest we don't know which scheme is going to be used for
playback. It would be unreasonable to fail playback due to incomplete
ClearKey config if playback was otherwise going to succeed using e.g.
Widevine.

* Issue: androidx/media#777
* Issue: androidx/media#563
* Issue: google/ExoPlayer#9169

#minor-release

PiperOrigin-RevId: 578491484
(cherry picked from commit d42c23706b615d1987f988fe219ab0fe61d44ac6)
This commit is contained in:
ibaker 2023-11-01 05:57:08 -07:00 committed by microkatz
parent 2237f4902d
commit 07258aa373

View File

@ -593,6 +593,11 @@ public class DashManifestParser extends DefaultHandler
}
data = PsshAtomUtil.buildPsshAtom(C.COMMON_PSSH_UUID, defaultKids, null);
uuid = C.COMMON_PSSH_UUID;
} else {
Log.w(
TAG,
"Ignoring <ContentProtection> with schemeIdUri=\"urn:mpeg:dash:mp4protection:2011\""
+ " (ClearKey) due to missing required default_KID attribute.");
}
break;
case "urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95":