-
Notifications
You must be signed in to change notification settings - Fork 6k
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
ID3Decoder IllegalArgumentException: 1 > 0 #2239
Comments
I think the ID3 data in the file is technically in violation of the ID3 spec. According to the spec a PRIV frame should look like:
However the file contains a PRIV frame that's completely empty apart from the header. Given the spec, I think there must always be at least one byte following the header (i.e. the $00 terminator on the owner identifier). That aside, I think the parsing code we have will fail anyway if there's no private data, and fixing that issue will happen to "fix" playback of this file as well. So I'll do that. Thanks! |
Actually, the parsing code handles the case of zero length private data fine. I'm not sure it's worth spending time fixing this when it's only a single file that's been found to be affected. If you're aware of a tag editor that's being used to generate lots of these files then please let us know, and we'd consider a workaround. For the affected user, you can advise them to simply upload their mp3 file to http://tagmp3.net/ and then download the resulting file without changing any of the data. This resolves the issue with the file. |
Here is one more strange file https://www.dropbox.com/s/6sxf1evitta9zed/05e67b82888bff.mp3?dl=0
|
A user just sent me a file that errors but can be played normally by other players like google music.
I tested it on a
Nexus 5X with Android 7.1.1 and ExoPlayer 2.1.0 and 2.1.1
The reporting user uses a
Moto G3, Android 6.0 with ExoPlayer 2.1.0
Its 100% reproducible. I sent a problematic file via mail.
The exception that is logged is
The text was updated successfully, but these errors were encountered: