Skip to content

Playback may pause on key rotation if license server returns 307 redirect. #4108

@TheJohnBowers

Description

@TheJohnBowers

Issue description

Our license servers will almost always return a 307 redirect when a wv license is requested. This seems to be handled appropriately at least some of the time or I suspect playback would not start at all, but after going through a license changes / key rotation or two I see the following exception thrown:

04-10 12:22:04.813 15318 15318 E EventLogger: internalError [427.07, drmSessionManagerError]
04-10 12:22:04.813 15318 15318 E EventLogger: com.google.android.exoplayer2.upstream.HttpDataSource$InvalidResponseCodeException: Response code: 307

Playback pauses at this point, but if I press play it seems to continue playing without any issues. I would expect playback to continue without pausing.

Reproduction steps

Play the sample content below through several period transitions. It doesn't usually happen until the 3rd or 4rth period transition / key change. The sample content below is 20ish minutes long, and I have yet to see it play past 5 minutes without duplicating the issue. I have set "drm_multi_session" to true as you can see below to allow for key rotation.

Link to test content

  {
    "name" : "Multi Period - 8 Byte IV",
    "uri": "https://content.uplynk.com/054225d59be2454fabdca3e96912d847.mpd?ad=dash",
    "drm_scheme": "widevine",
    "drm_license_url": "https://content.uplynk.com/wv",
    "drm_multi_session": true
  },

Version of ExoPlayer being used

demo app built from release-v2 branch, updated as of April 10th 2018 at 12:45pm:

$ git branch

  • release-v2
    $ git rev-parse HEAD
    4b531dc

Device(s) and version(s) of Android being used

I suspect this isn't something that will be specific to any particular android version, but I ran the test and reproduced the error on 2 devices:

1 - Moto Z Droid running android 7.0 - Security Patch Level May 1, 2017
2 - LG V10 - Running android 6.0

A full bug report captured from the device

Sent to requested email address.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions