Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Widevine cenc mp4 Playback fails on Nexus Player #5568

Closed
ZygmuntMalek opened this issue Feb 26, 2019 · 7 comments
Closed

Widevine cenc mp4 Playback fails on Nexus Player #5568

ZygmuntMalek opened this issue Feb 26, 2019 · 7 comments
Assignees
Labels

Comments

@ZygmuntMalek
Copy link

Issue description

Encrypted Widevine cenc mp4 Playback fails on Nexus Player

Reproduction steps

ExoPlayer demo app with media.exolist.json pointing to content uri and drm_license_url
repro rate: 100%

Orginal media.exolist Widewine examles for mp4 (h264, h265) could be played without issue, but after issue try to play our content, playback examples for mp4 h264 also failing and there is need to eg. device restart.

Link to test content

Link to test content will be send by email to: dev.exoplayer@gmail.com after provider approval

A full bug report captured from the device

Will be send by email to dev.exoplayer@gmail.com

Version of ExoPlayer being used

2.8.4

[REQUIRED] Device(s) and version(s) of Android being used

Nexus Player, Android 8.0.0

@AquilesCanta
Copy link
Contributor

Hi, I'll reopen the issue once content is provided. Please update below.

@ZygmuntMalek
Copy link
Author

Content sent by email to dev.exoplayer@gmail.com

@AquilesCanta
Copy link
Contributor

This has been reported to the DRM team. [Internal ref: b/127808458].

@AquilesCanta
Copy link
Contributor

It's worth noting that the two lower resolutions seem to work ok.

@ojw28 ojw28 removed the bug label Mar 29, 2019
@ZygmuntMalek
Copy link
Author

Could you provide update about this issue state ?

@AquilesCanta
Copy link
Contributor

The situation is that fugu is over-reporting capabilities. However, we cannot expect an update to fix this issue because it is no longer maintained.

I am not aware of ExoPlayer blacklisting tracks due to spurious capabilities reporting. @ojw28 may be able to comment on this.

I can advise you to try and implement a custom track selector (that potentially subclasses DefaultTrackSelector) that filters out tracks that are known to be unsupported. I don't think it's a good idea to maintain a similar list on ExoPlayer.

@AquilesCanta AquilesCanta assigned ojw28 and unassigned AquilesCanta Apr 17, 2019
@ojw28
Copy link
Contributor

ojw28 commented Apr 18, 2019

I think it's more likely that Fugu has different secure and non-secure capabilities. ExoPlayer always queries the non-secure ones during track selection, and in this case ends up using the less capable secure path for playback. This is not a problem on most devices, since it's not particularly common for secure and non-secure capabilities to be different (performance may be different, but actual hard limits on what is playable are normally the same for both paths).

Fixing ExoPlayer's track selection logic to use the capabilities for the correct path is unfortunately not straightforward, because Android's underlying DRM APIs make it hard to efficiently query whether content is going to end up playing with the secure path or not at the point of track selection. We can probably hardcode some knowledge about the Widevine+Video case though, which in practice will resolve this issue in nearly all cases.

@ojw28 ojw28 assigned andrewlewis and ojw28 and unassigned ojw28 and andrewlewis Apr 18, 2019
@ojw28 ojw28 assigned AquilesCanta and unassigned ojw28 May 3, 2019
ojw28 pushed a commit that referenced this issue May 15, 2019
@ojw28 ojw28 closed this as completed May 15, 2019
@google google locked and limited conversation to collaborators Sep 27, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

4 participants