MoleMan1024 / audiowagon

AudioWagon will play audio files from an attached USB flash drive in cars equipped with Android Automotive OS
https://moleman1024.github.io/audiowagon/
GNU General Public License v3.0
58 stars 17 forks source link

AudioWagon not compatible with Volvo EX30 #141

Closed MoleMan1024 closed 3 months ago

MoleMan1024 commented 3 months ago

Reported by a user by e-mail. The Volvo EX30 is using Android Automotive however it shows as not supported in my Google Play Console. I need to check why.

MoleMan1024 commented 3 months ago

Ok, that was easy... Google Play Console says:

"Doesn't support required feature: android.hardware.usb.host"

I don't know if that is intentional by Volvo or by mistake.

That means this car is not able to be a host for USB devices. That means you will probably not be able to use any of the following USB devices with it:

It will probably only work for charging and for Apple CarPlay/Android Auto (?) using the USB accessory mode.

AudioWagon requires USB host capabilities, so the app will not work with this car's software.

muzso commented 2 weeks ago

AudioWagon not compatible with Volvo EX30

Yes, that is true. Unfortunately the Volvo EX30 does not support USB mass storage devices in any of its USB ports.

AudioWagon requires USB host capabilities, so the app will not work with this car's software.

Is it a must-have requirement? I mean cannot AudioWagon be used for playback of files on the local storage of the infotainment system?

MoleMan1024 commented 2 weeks ago

Is it a must-have requirement? I mean cannot AudioWagon be used for playback of files on the local storage of the infotainment system?

AudioWagon was designed primarily for Volvo/Polestar cars because they were lacking a media player app for USB when they were launched in 2021.

While playing file from local filesystem is possible in general, this feature is not available in AudioWagon right now (also it would require you to get files on to the local filesystem first).

muzso commented 2 weeks ago

also it would require you to get files on to the local filesystem first

That part is already solved with multiple methods. :)

What is missing is a fully AAOS-compliant music player (i.e. one that can integrate with the AAOS media player framework, i.e. https://developer.android.com/training/cars/media/automotive-os) that doesn't take 1-2 minutes to start playback each time we start the car ... even with a library of 3000 mp3 files.

Poweramp can manage this perfectly, but it is not available for AAOS (just AA).

YouTube Music can be installed from the EX30 Play Store and can play back local media, but it's extremely slow and with 3000 files it takes 1-2 minutes to start shuffle playback.

MoleMan1024 commented 2 weeks ago

also it would require you to get files on to the local filesystem first

That part is already solved with multiple methods. :)

The possibilities are quite diverse there and I feel to make everyone happy, it would take too much effort (some people want their NAS supported, some want download from internet, some want xyz... ). Also I don't really want to implement this feature as explained here: https://github.com/MoleMan1024/audiowagon/discussions/143

What is missing is a fully AAOS-compliant music player (i.e. one that can integrate with the AAOS media player framework, i.e. https://developer.android.com/training/cars/media/automotive-os) that doesn't take 1-2 minutes to start playback each time we start the car ... even with a library of 3000 mp3 files.

If this is referring to AudioWagon: it should not take 1-2 minutes to start playback due to the app alone (unless you mean the permission popup or the bootup time of AAOS which I can't do anything about). If you mean the indexing, you might want to change indexing to "manual" only if you have not yet seen that option.

I am a single developer that does this as a hobby only, I can not provide a "fully featured AAOS-compliant music player" that will work in all kinds of AAOS cars, that is too much of an effort. What I built works okay for most people that use it, the app is intentionally limited in its features.

muzso commented 2 weeks ago

The possibilities are quite diverse there and I feel to make everyone happy, it would take too much effort (some people want their NAS supported, some want download from internet, some want xyz... ). Also I don't really want to implement this feature as explained here: https://github.com/MoleMan1024/audiowagon/discussions/143

Ok and thanks for the explanation.

If this is referring to AudioWagon

No, it was not. I didn't mean any offense, not in the slightest.

I was referring to the YouTube Music app since at the moment that seems to be the only option for playback of files on the local storage. And YT Music is very slow to start up and start shuffle playback.

I couldn't even test AudioWagon's capabilities/speed/etc. since it requires an USB mass storage device to be accessible.

And what I meant (for YT Music) is that during the app's initial startup it's displaying something like "Loading content". This is probably its indexing (reads metadata from all media files on the local storage?). After that when I press the shuffle playback button, it takes an equally long time to start the actual playback. Which is insane since I assume it already gathered the index during the "Loading content" phase, so the shuffle should merely create a random ordering of the 3000 files, which should take like milliseconds and not 30+ seconds.

I've recorded a video (for a post in the EX30 subreddit) on how this works. Used my phone because it was easier to record and the app behaves the same as far as the slowness is involved.

https://www.youtube.com/watch?v=hFFtzWu_K3s

I am a single developer that does this as a hobby only, I can not provide a "fully featured AAOS-compliant music player" that will work in all kinds of AAOS cars, that is too much of an effort. What I built works okay for most people that use it, the app is intentionally limited in its features.

Sorry if my comment sounded like criticism, it was most certainly not meant to be. I merely described the situation on the Volvo EX30. I.e. we can already copy files to the local storage and for a good user experience we'd only need a music player that doesn't take 1-2 minutes to start (shuffle) playback like the YT Music app does.

And I fully understand that you're doing this as a "hobby project" for free, etc. I didn't want to "push" anything. Just asked whether the app already supports playback from the local storage and if yes, I just failed to find it.

Thanks for your quick response! Congrats for the app. It'd be just great (for me as well) if I had e.g. a Polestar. ;)

I'll test whether an AA-oriented music/media player (like Poweramp or VLC) could work in the EX30 and if not, I'll look into which existing app could I modify with the least effort to work in this car as well. I can install almost any app (not just AAOS apps), but they are blocked while driving. I hope that an AAOS-first music app won't be blocked from running/playback while driving.

My assumption is that while driving, the minimal UI of any music player is coming fully from AAOS since it differs only in the icon of the source of the music in top-right corner: https://imgur.com/MT9nfLc The same UI is rendered regardless whether the sound comes from YT Music, the Radio app or the BT Media app. So the app just provides the audio data of the music and the metadata (title, etc.) that is displayed. I don't see any reason for Google or Volvo to restrict the choice of apps that can provide the audio source for this, so my guess is that any app will work as long as it plays by the rules that were put down by Google for AAOS media player apps.

This is what I meant with "fully AAOS-compliant music player" (I didn't write "fully featured" ;-) ), which I assume AudioWagon is since it was approved by Google to appear in the Play Store for AAOS devices.

Thanks again for your feedback, much appreciated.

MoleMan1024 commented 2 weeks ago

If this is referring to AudioWagon

No, it was not. I didn't mean any offense, not in the slightest.

I was referring to the YouTube Music app since at the moment that seems to be the only option for playback of files on the local storage. And YT Music is very slow to start up and start shuffle playback.

Yeah I re-read your comments and you said that originally also the thing with "fully-compliant". Sorry, most of the comments I get are complaints, I jump to conclusions too quickly 😅

And I fully understand that you're doing this as a "hobby project" for free, etc. I didn't want to "push" anything. Just asked whether the app already supports playback from the local storage and if yes, I just failed to find it. [...] I'll test whether an AA-oriented music/media player (like Poweramp or VLC) could work in the EX30 and if not, I'll look into which existing app could I modify with the least effort to work in this car as well. I can install almost any app (not just AAOS apps), but they are blocked while driving.

It sounds like you are a developer: the source code of AudioWagon in gitlab actually has support for this, however it is not enabled for the public right now (because Volvo/Polestar once broke the USB data connection for several months and I wanted to listen to music still).

My assumption is that while driving, the minimal UI of any music player is coming fully from AAOS since it differs only in the icon of the source of the music in top-right corner: The same UI is rendered regardless whether the sound comes from YT Music, the Radio app or the BT Media app. So the app just provides the audio data of the music and the metadata (title, etc.) that is displayed.

That is correct: https://developer.android.com/media/legacy

muzso commented 2 weeks ago

It sounds like you are a developer

I am. Not an Android dev, but getting there bit by bit. I've been messing around with OSS Android apps (for the last 3 weeks, since I got the car) to make them work on the EX30. :)

I've tested VLC (sideloaded it onto the EX30) and got lucky, my hypothesis proved to be right. VLC works with the EX30's car launcher just fine. :)

I haven't tested it yet while driving (that's for tomorrow ... or today, but a couple of hours later :) ), but I'd be surprised if the OS blocked an audio-only playback just because we're in motion.

Btw. here's a recording of YT Music on the EX30: https://www.youtube.com/watch?v=eyFm8chqK80 It takes 2m20s in total for the app to load and shuffle playback to start. :(

And here's how fast VLC starts: https://www.youtube.com/watch?v=Hc8XU6WnyRk

In both cases I rebooted the infotainment prior to the tests, because this was the easiest way to "simulate" the slowness of YT Music start after the car went into "deep sleep" (i.e. after the car was off for a longer period of time).