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

Improve ott zapping time #3487

Closed
alfonsoramosa opened this issue Nov 21, 2017 · 2 comments
Closed

Improve ott zapping time #3487

alfonsoramosa opened this issue Nov 21, 2017 · 2 comments
Assignees
Labels

Comments

@alfonsoramosa
Copy link

Hi,

I'm using Exoplayer 2.4 on Android TV to play OTT live streams (DRM protected):

  • Smooth Streaming + PlayReady
    I'm using the same key to encrypt all the channels, so the same license should be valid to decrypt all the channels.

Currently, during each channel zapping, I'm releasing the player. Something similar to what the Exoplayer demo App is doing at PlayerActivity.releasePlayer().
After that, I'm starting the playback of the next channel.

That's the "first version" that I have implemented and now I need to improve the zapping time.

I can see the following possibilities.

  • As I'm using the same DRM key, it should be possible to reuse the same license instead of requesting a new one.
  • Reuse the same player instance.
  • Reuse the same playback, just dynamically replace the previous manifest with the new one and continue playing on the live edge.

I will appreciate some guidance on how to implement that using Exoplayer and information about existing possibilities.

Best Regards,
Alfonso.

@alfonsoramosa
Copy link
Author

Hi @ojw28 , @andrewlewis

Can somebody provide feedback on this question? I will really appreciate it.

probably it's a frequent use case to use Exoplayer for OTT live playback.
Improve zapping time can be an interesting feature for many projects. Of course, some dependencies can be project/implementation specific (Streaming protocol, DRM), but having a general guidance or clues will be useful.

Thanks!!
Alfonso

@ojw28
Copy link
Contributor

ojw28 commented Aug 14, 2018

It should definitely be possible to re-use the same player instance. This is pretty trivial (just re-prepare it with the new source). Re-using the same MediaDrm session should be possible too, but you'll probably need to supply a custom DrmSessionManager to do this, which has a way of keeping the session alive as the player is re-prepared with the new source. I don't think re-using the same playback will work (or makes sense).

Once #2826 is done, that should also help speed things up, provided you're re-using the same player instance.

@ojw28 ojw28 closed this as completed Aug 14, 2018
@google google locked and limited conversation to collaborators Dec 20, 2018
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

2 participants