-
-
Notifications
You must be signed in to change notification settings - Fork 123
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
MediaBrowserService
(Android Auto & Bluetooth AVRCP) support
#37
Comments
Merging into #52. |
Reopening since #52 is not happening. |
Related to this, in the next release you should have access to Auxio's queue from Android Auto. Still not mutation though, as I'm still grappling with the technical aspect of that. |
This issue will also seemingly resolve the Wavelet issue where Auxio will show up as "null" in the notification. Can't fix it until I have a working media browser implementation. |
Blocked until I can fix Auxio's jank service lifecycle with #244. |
MediaBrowserService
(Android Auto & Bluetooth AVRCP) support
Any update on this or any way how I can help? I dont know any maintained FOSS music app that actually supports Android Auto (except Metro but that's basically dead aswell). |
Currently, I am busy with school and more prioritized functionality, given the difficulty of this change. You have two options to help out. @BabyBenefactor:
|
This feature isn't something that needs prioritisation so please don't feel rushed. Since I don't think I have the sufficient coding skills to refractor this app, I won't be trying that :P |
Prioritization would not make me have to implement it by the end of the month. It just means I will do it first, whenever I have the time. @BabyBenefactor |
It may not need prioritization, but it would be much appreciated. I've been telling myself I'll do it, but I havent been able to find the time just yet. I might still do it, so ping me if you start working on it @OxygenCobalt. In any case, mark it for prioritization. |
Okay, I've marked this and the required #244 as prioritized. It will be done after #342, which was prioritized earlier. A $16/month sponsor could prioritize this such that I do it first. I am also open to contributions @gtsiam. Note that there are a lot of architectural details here, since you have to make
This is really general, since I've yet to map out the specifics on what needs to be fixed. |
Update Time! So I've merged the two services, kind-of. What used to be the services now inherit a weird "fragment" class I made up. But they are still operating under the assumption that the app is in the foreground. The issue is that the flow might be something like:
And that's if there's music to be loaded and things to play. If there's neither, no foreground will occur and eventually the app is killed by the system for not starting foreground in time. As a result, I must design the service lifecycle under two hard rules:
There's likely more refinement I need to do regarding this. I have some ideas on how to detect from the service's end if it was started by another part of the OS or if it was started by the app, which should allow me to switch between uptight and loose foreground behavior. Sadly I'm tied up with all the 3.4.0 bug reports, school, and a hackathon, so I'm not going to be able to do much for now. |
Looks like great progress, thanks for your work! |
Minor Update: Still have no time to work. But I realized in #244 that Android may actually tolerate Auxio briefly going into the background. It could be possible that the background service restrictions only apply once. From there I can swap between background and foreground whenever I want (within reason). This'll make things a bit easier if true. I need to test though. |
I've started implementing this using the new service implementations provided by |
External apps can now access Auxio's music library: (This is from an app made to test this, you can find it here) From here I need to do a full integration with android auto (requires some extra config), and then continue rounding out and making bug fixes. |
Introducing the first Auxio Android Auto build! Warning:
@BabyBenefactor @gtsiam |
Thanks for all your hard work and all the updates regarding the work - it is simply amazing to see. I just installed the app and tested the app with a pixel 8 and it works flawlessly. I could not find any issues. Things like playback, shuffle, album/artist views, the ''extra'' tab containing things like playlists - it just works really nicely and is on the same level as other music playing apps. Heck, even the thumbnails render correctly (even in split screen view) which VLC **s up for some reason. Now I am just a sample size of one, but I think the Android Auto part is working amazingly. Thanks again for your amazing work |
Thanks for the feedback! Can you send me some pictures of what it looks like in android auto (if possible) @BabyBenefactor? I can't test it myself and I want to make sure it "looks right". |
Closing this for now since it's basically "done" minus bug fixes. |
Sure! Note that Android Auto just uses templates for apps, so apps like Spotify, VLC and Auxio all look the 'same' (minus some icons and quick action triggers) Link to images (no need to download) https://drive.proton.me/urls/XFJHQGX7Y8#9SVlK0I2fq3a Hope this will see final release soon, thanks again for the amazing work @OxygenCobalt |
This is perfect, thanks @BabyBenefactor. Overall it seems like it works well. |
Just finished a few hour drive using my navigation app and Auxio in splitscreen continously. No crashes or hiccups at all. Voice commands also work. I did not test the new Android-side implementation yet |
Okay, there will be one minor degradation: Due to a bunch of annoying internal issues, the notification cover will be stuck on it's default setting until #327. I didn't want to do this, but media3 is not really designed well for this. |
A feedback on how tags are shown on the gauge cluster.
I think showing artist at the bottom (console+cluster) is correct. It'd be nice if Auxio can display album title on the gauge's middle line. |
This is weird @curbengh, I'm publishing all my metadata as right as far as I am aware. Will need to see what's going on with VLC. |
Self-explanatory. Requires #92 so that I can mirror the queue, and internal technical reworks so that I can implement a media browser into the playback engine.
The text was updated successfully, but these errors were encountered: