I can’t get MP3 audio to play on Windows using the Sound class. Works fine on macOS. WAV files play fine on Windows, but not MP3. I get no error, the audio just doesn’t play, and .IsPlaying immediately returns False.
Is this supposed to work? I tried it on two PCs (Windows 10 and Windows 7). I searched the Xojo forum and Feedback and didn’t find anything relevant (well, one issue back in 2015 where MP3 playing was broken, but later fixed).
Does MP3 work in the Sound class/object in Windows for anyone else?
Note that I’ve tried this in several Xojo version back to 2017r1.1 with no luck.
These are audio recordings of verbal instructions. There are dozens of them. I’m storing them in a SQLite db (along with images) for easy organization/distribution and to keep the end user from messing with them. They were originally WAV files that I converted to MP3 to save space (along with the original BMP images converted to PNG). Makes a big difference when dealing with dozens of audio and hundreds of image files.
The MP3s play fine in other Windows apps, just not Xojo’s.
Many MP3 players just ignore the metadata tags. It’s hard to say why Xojo chokes on it without knowing what library it uses to play media.
Permute clearly has a bug if it’s creating badly-formatted tags. You should let them know. Especially since it’s a paid piece of software.
I don’t know if you really want to try and create a Xojo tag analyzer/repair tool, there’s plenty free ones out there. However, if you’re really keen…
I just used Mp3Tag - one of the greatest (albeit windows only) shareware programs for mass tagging and editing of any tagged media. You could fix all your mp3’s in one click.
At first I tried using MoviePlayer to play the files, which worked in Windows, but wouldn’t on Mac. Aaarg! Cross-platform my ass! This past year or so has led me to understand “cross” in cross-platform as its alternate meaning.
After reviewing some of the Tag code, I just went with Mp3Tag to strip all tags from all files and re-import them into the db. Everything now works as I had initially designed it.