Ian Baker
Ian Baker
You can also inspect [`Format.roleFlags`](https://developer.android.com/reference/androidx/media3/common/Format#roleFlags()) for some of those parameters you've listed. I think my answer above resolves your question - possibly combined with being able to [customize track names...
I suspect the difference you're seeing between 2.16.1 and 2.18.2 is due to HLS chunkless preparation being [enabled by default in 2.17.0](https://github.com/google/ExoPlayer/blob/release-v2/RELEASENOTES.md#2170-2022-02-24). You can enable it manually in 2.16.1 to...
> I'm not sure why it would block, since as far as I know, that code should only be executed once the future is complete. Do you have any idea...
Ah I hadn't spotted in your original code snippet that `controllerFuture` is not locally-scoped and, if there are multiple threads involved, could potentially be re-assigned in between the future completing...
> I'm pretty sure there is only a single thread (the main application thread) that calls any of the `MiniPlayerFragment` lifecycle callbacks (some quick local tests confirm this). Yeah that...
> > FWIW, it appears that the Media3 demo app also follows this strategy of scoping `controllerFuture` as an instance variable inside of the player activity: > > https://github.com/androidx/media/blob/f6fe90f30ba022c7e04e14a3dc5c28c568a4d1e2/demos/session/src/main/java/androidx/media3/demo/session/PlayerActivity.kt#L46 >...
Thanks for the update. I spent a bit of time looking at the session demo app's usage of `ListenableFuture`. I prototyped a change that switched it to `Futureas.addCallback`, but actually...
> ### Reproducible in the demo app? > No What happens when you try and use the [demo app](https://developer.android.com/media/media3/exoplayer/demo-application) to play your stream? If it works (which is what I...
Please try and play **your** RTMP stream in the demo app, using one of the approaches described here: https://developer.android.com/media/media3/exoplayer/demo-application#playing-your-own-content
Did you build the demo app 'with decoder extensions'? It's a poorly named gradle flavour in this case, since RTMP isn't a decoder, but it is used to control whether...