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

Google Play Music using new audio codec on new versions. #23

Open
Shiragasane opened this issue Mar 25, 2017 · 23 comments
Open

Google Play Music using new audio codec on new versions. #23

Shiragasane opened this issue Mar 25, 2017 · 23 comments

Comments

@Shiragasane
Copy link

As visible in the screenshot, Google Play Music seems to be using AAC instead of MP3 on newer versions of the app. This breaks tagging and the ability to play the files on some/most(?) audio players. The screenshot shows the result of ffprobe used to analyze an older version of the song from Google Play Music compared to a new one.
mp3_aac

@ghost
Copy link

ghost commented Mar 25, 2017

@jcgruenhage
Copy link
Collaborator

We should save that as an m4a file then, right?
We could extend the force overwrite setting to be more selective, like overwriting if a higher quality version is available. We could also notify the user, that they should set the download quality to high, for the best results.

@LegoChicken
Copy link

I would agree that recommending that "Settings - Download quality" to "High", would be a good idea.

@ghost
Copy link

ghost commented Mar 27, 2017 via email

@LegoChicken
Copy link

I've got Play Music 7.5.4541-1.0.3840537 and just tried a download a on "High". It is MP3. So maybe it isn't all tracks or all devices (I'm on a Nexus 5 stock ROM).
Perhaps you should detect the format and set file extension appropriately.

@jcgruenhage
Copy link
Collaborator

Yes, this really does need some built in detection.. Maybe there is a nice little java library for ffprobe?

@ghost
Copy link

ghost commented Mar 28, 2017

I have some free time to look into this, if nobody else has started on it yet.

@jcgruenhage
Copy link
Collaborator

No, I am currently working on #15, go ahead and help with this, if you have the time ^^

I suspect this might be some more work though, since that probably needs some rewrite of the tag writing and another library for that..

@ghost
Copy link

ghost commented Mar 28, 2017 via email

@jcgruenhage
Copy link
Collaborator

I tried doing that, but I only got MP3s on high/medium on new and old titles until now :D

@ghost
Copy link

ghost commented Mar 28, 2017

@Shiragasane Do you have specifics of what the track was? From the screenshot, it was Born In The USA, was this one of your uploads? Was it Google Music All Access, and if so what album? Can you link to the web version of the file, and see if we can reproduce this by adding this same track to our libraries?

@jcgruenhage
Copy link
Collaborator

Someone in the IRC room reported that "Amapola" by "the Spotnicks" showed this behaviour.

@jcgruenhage
Copy link
Collaborator

I just tried that one again though, still 320 kbit/s mp3 encoded..

@LegoChicken
Copy link

I tried Jean-Micheal Jarre Equinoxe on Nexus 5 and also got 320 kbit/s mp3. Is it user or device specific?

@jcgruenhage
Copy link
Collaborator

This could be a usw case for the analytics features that we will habe with countly (#15).

@jcgruenhage jcgruenhage assigned ghost Mar 28, 2017
@jcgruenhage
Copy link
Collaborator

@mgillespie What do you think about just implementing analytics stuff for analyzing this problem in v0.9.6, so that we have more info on when the app downloads aac versions and when it downloads mp3 versions. That way we should be able to push v0.9.6 to F-Droid sometime in the next few days and collect that data automatically to help us understand when it happens. The only problem with that is, that I don't know how to determine what file type it is on android, since ffmpeg for android does not include ffprobe.

@jcgruenhage
Copy link
Collaborator

Thanks to @Shiragasane I now know how to do this, and I also realise that it is very easy for us to determine if the tags were written successfully: The PME logs that, since MP3Agic throws an Exception, when it gets passed a non MP3 file. I've just added that to countly, so that we know what device and android version is used, when this happens.
@mgillespie do you want an account at countly.jcg.re?

@jcgruenhage jcgruenhage modified the milestones: v1.0.0, v0.9.6 Mar 28, 2017
@LegoChicken
Copy link

I've just seen that v0.9.6.0 has been released. F-Droid only has 0.9.5.2. Could you update it. Thanks.

@jcgruenhage
Copy link
Collaborator

jcgruenhage commented Mar 29, 2017

Well, F-Droid builds the APK themselves, and that might take some days (or longer, if they need to update their library versions first again.)

Edit: They need to update the server again, I've just sent them a PR for the server to use the new library versions, but it could take some time again. Last time it took a while until they redeployed the server too.

Another edit: As expected, the build currently fails.

A third edit: They've merged my PR, so as soon as their server is redeployed, the application should build fine.

@LegoChicken
Copy link

Oh, I didn't know how it worked. Could you publish a binary then in github or XDA. Unfortunately I'm not setup to build (or have the time). Thanks

@ghost
Copy link

ghost commented Mar 29, 2017 via email

@jcgruenhage
Copy link
Collaborator

jcgruenhage commented Mar 29, 2017

@LegoChicken v0.9.6 doesn't contain new features for users anyway, so you don't loose anything by waiting. It just contains some crash reporting (Which we should make an encouraged opt-in as soon as possible, instead of that being active by default with no way to change that).

About uploading binaries elsewhere, I just use the binaries built by F-Droid for that too. That has the advantage that I don't have to maintain signing keys for building releases.

@jcgruenhage
Copy link
Collaborator

v0.9.6.0 has now been built by F-Droid, and so far there have been no reports of tagging issues among the ~500 songs that have been exportet so far.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants