doublesymmetry / react-native-track-player

A fully fledged audio module created for music apps. Provides audio playback, external media controls, background mode and more!
https://rntp.dev/
Apache License 2.0
3.18k stars 981 forks source link

[Feature Request] Media3 migration #2252

Closed lovegaoshi closed 1 month ago

lovegaoshi commented 4 months ago

What is the need and use case of this feature? android media3 migration

Describe the ideal solution migrate to media3

Describe alternatives you've considered not migrate

Additional context I've been doing a bit of research on this and here's what I've found:

simply changing all the exoplayer2 parts into their exoplayer3 counterparts compiles and runs as expected: my repo however to fully utilize media3's capabilities (namely the automatic notification/service management via MediaLibraryService) RNTP needs a good amount of work to migrate into the Service-Connector structure. See google's migration commit Meanwhile I'm still struggling with implementing a MediaLibraryService for KA to show a notification.

How I can Help What can you do to help get this feature into production? Can you assist by working on this feature and creating a Pull Request? working on it tbh I'm not looking forward to this as the current AA implementation will also need a good amount of refactoring; I'm so confused with "properly" migrating KA that I'm more leaning towards a rewrite based off of UAMP at this point

lovegaoshi commented 4 months ago

my biggest uncertainty right now is how to specify UA, as MediaController does not pass MediaSource but MediaItem; seems doable by https://github.com/androidx/media/issues/125#issuecomment-1437093127

lovegaoshi commented 4 months ago

managed to have a barebones KA media3 skeleton: https://github.com/lovegaoshi/KotlinAudio3

github-actions[bot] commented 1 month ago

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment or this will be closed in 7 days.

github-actions[bot] commented 1 month ago

This issue was closed because it has been stalled for 7 days with no activity.