Mp3 playback in the fewest steps?
BlitzMax Forums/BlitzMax Programming/Mp3 playback in the fewest steps?
| ||
I need to create a program for other photographers in my community that lets them play mp3s in the background while displaying their images. This is not for profit. I've searched and searched these forums and have come across some monstrous threads with multiple explanations, but nothing is really clear. What is the easiest, most painless way to have mp3 playback in your program? Do I really need to download mods and install MinGW and change my computer's path variables and all that hassle? Can't Blitz just let me play mp3s? |
| ||
No, mp3 has patents attached to it and so is not `free` as such, so Max supports .ogg instead. And wav. But not mp3. you could perhaps make an mp3 loader/player, though, or use some module/library. Or you could find a free mp3 player program and send it commands or launch it from blitz? |
| ||
Hmm. My issue is this: I'm making this program for other people to use. It allows you to sequence your photographs and display them in a certain order while music plays in the background. Ideally, I would like the finished product to be a single exe that takes images and sounds that are sitting in its same folder and uses them in the show. So if I give this program to someone who is not a programmer and is not really computer savvy, how do I explain to them that they need to convert their mp3 files to ogg files? They won't know what I'm going on about and they'll just go and use a different program that can play mp3s, like Pro Show. |
| ||
MaxMod lets you play MP3s. Do a forum search. |
| ||
So does BASS, FMod and IrrKlang. |
| ||
Yeah, I'm trying to get maxmod to run as we speak. When I try to build the modules, all I get is this: "Can't find interface for module brl.Openalaudio" I unzipped the maxmod.mod folder into my Blitzmax\mod folder. Is this right? I now also have MinGW installed and set up properly. |
| ||
Oh yeah, you need OpenAL too. You can install OpenAL, grab the two DLLs (which it installs to the Windows/system32 folder) and put them in your blitz program folder, then uninstall OpenAL. http://connect.creativelabs.com/openal/Downloads/oalinst.zip So does BASS, FMod and IrrKlang. ...and none of them are free. |
| ||
...and none of them are free. They are if your not selling your program. |
| ||
Ok, I installed openal, found the two dlls and put them in my Blitzmax\ folder ... is that right? It still gives me the error when I try to build modules. |
| ||
It still gives me the error. Not surprising, since those DLLs won't solve that particular problem. :-) You need to have the latest BlitzMax installed. What version are you running? I thought the OpenAL stuff was only in 1.30. Did you build those specific modules, or just do "Build Modules" from the IDE? |
| ||
I haven't used Blitz in a while, so in the IDE, I went to check under Help/About Blitzmax, but it just says "About" and doesn't give me any version info. Argh. So I don't know what version I'm using, but I'll go download blitz again to be sure. |
| ||
And remember, if you intend building any modules, we assume you have installed and set up MinGW? :-) |
| ||
You need to have the latest BlitzMax installed. What version are you running? I used OpenAL for Buzzword and that was nearly two years ago so I reckon 1.26 at least had OpenAL support.I thought the OpenAL stuff was only in 1.30. I haven't used Blitz in a while, so in the IDE, I went to check under Sounds like you're using version 1.18 and some updates since the Help/about box was broken in that version.Help/About Blitzmax, but it just says "About" and doesn't give me any version info. Argh. So I don't know what version I'm using, but I'll go download blitz again to be sure. Install 1.30, do what I said above, and it'll work. :) |
| ||
Yup, I've got MinGW all set up. And I installed Blitz 1.3. Alright, we've made progress. Thank you very much guys. But we're not quite there yet. I'm trying to get the sample maxmod code to work, but it only seems to work on 1 out of every 3 mp3 files. It gives me unhandled memory exception errors on all other mp3s. Is there a required bitrate? And I guess they can't be variable bitrate mp3s, huh. |
| ||
Not sure on that as I've always used OGG format myself, but variable bitrate OGGs work just fine. Are you setting the audio driver to "openAL" or "Directsound"? |
| ||
Ok, so 128kbps, 160 and 192 work alright, but an mp3 at 224 gives me an unhandled exception error. Well this is awesome that it's mostly working, but there's going to be 1 out of 10 people that's going to try to use their song and the bitrate will be too high and they'll come to me saying "Your program doesn't work!" |
| ||
Oh, sorry. Wasn't aware of that bug/limitation. I think REDi (the MaxMod guy) will have to take over from here... :/ Alternatively, try using MaxMod 1.27 in the meantime. Its a slightly different beast to MaxMod 2 Beta 4. |
| ||
Oh, and using OpenAL versus Directsound didn't seem to make any difference. I would like cross-platform usability, so should I stick with openAl? |
| ||
Well, nothing to stop you using DirectSound on Windows and OpenAL on Mac. Although the DirectSound/Vista combo can be a bit crackly on some hardware setups by all accounts so might be better to stick to OpenAL. |
| ||
The problem: Even if your program is free, you are still liable for royalties to the MP3 licensing board... it's the distribution that they want to get payed for, regardless of whether or not you charged anything for your work. |
| ||
Well alright then. I accept that risk. If my program somehow SOMEHOW gets popular enough to draw their attention and they ask for royalties, I will have become well known enough through the whole ordeal for the cost to have been worth the risk. But All I plan on doing is distributing this to a handful of friends in my local photography club who don't want to pay the $130 for ProShow Gold. |
| ||
Hi I take it your using the original maxmod? as maxmod2 doesnt have openal support. MaxMod(1) has a couple of known issues with the ACM MP3 decoder stuff, I would suggest trying the maxmod2 beta if possible, the MP3 support is far superior. ;) Or even go the BASS/FMOD/whatever route, if your not selling your project it doesnt really matter. as for the MP3 licensing stuff, if your writing an application it costs $0.75 USD per unit sold, and for games it costs a one off payment of $2500 USD (per title), but you don't have to pay anything until you shift 5000 units ($0.50 USD per unit), so IMHO its not that bad really. |
| ||
Ah, in version 2, mp3 playback is seekable? As in, I can play from any point in the mp3 file? That's what I'm looking for. Alright, I put the maxmod2.mod folder in the blitzmax\mod folder and deleted the old maxmod.mod. But now in the IDE, "Build Modules" is grayed out. What could be doing that, I wonder? The IDE always does this and I never understand why. It's really frustrating. Just build the modules, please Mr IDE! My system path has this on the end: ;D:\MinGW\bin\ and that's the proper spot. What else does it need? |
| ||
Now when you say "the mp3 support is far superior", do you mean that I will be able to find out the length of the MP3s, or maybe have the ability to play from a random point in the mp3? Yes and yes ;) But I wouldn't bother just yet if your happy with maxmod1, I'll be releasing another maxmod2 beta soon with some major changes over the current beta. |
| ||
and for games it costs a one off payment of $2500 USD (per title), but you don't have to pay anything until you shift 5000 units ($0.50 USD per unit), so IMHO its not that bad really. That applies even if the games are freeware. And the 5,000 is by distribution, not sales. Even a crappy game can get 5,000 downloads in a day or two if it gets a mention or review on a popular gaming blog. |
| ||
That applies even if the games are freeware. And the 5,000 is by distribution, not sales. Even a crappy game can get 5,000 downloads in a day or two if it gets a mention or review on a popular gaming blog. And keep in mind: If you have a 30-minute demo of your game, and the game is pretty decent and gets a (not unusual) ~1% conversion rate (1% of the people who try your game end up buying it) it means that by the time you've 'distributed' your 5,000 copies and would be required to pay the $2500 licence, you've only really sold 50 of them. Unless you have more than $50 profit on each game sold, you're on the hook for more money than you made at that point. |
| ||
My system path has this on the end: ;D:\MinGW\bin\ and that's the proper spot. What else does it need? You also need to create a new system environment variable named MINGW, which points to your root MinGW folder, e.g. D:\MinGW. |
| ||
That applies even if the games are freeware. And the 5,000 is by distribution, not sales. Even a crappy game can get 5,000 downloads in a day or two if it gets a mention or review on a popular gaming blog Apparently its Which i suppose explains why lame hasnt been shut down. |
| ||
Apparently its free for open source and/or free software... You are confusing software and games. The MP3 licensing info is VERY explicit on the differences between licensing for software and for games:http://www.mp3licensing.com/royalty/games.html For games, cost of the game is not an issue and it goes strictly by distributed copies not sales. |
| ||
Yes there is different licenses for applications and games (and no I'm not confused as to what software is ;), but the point is they don't actually chase free/open source projects for licenses, whatever type of software you are writing (even if its a third party mp3 decoder) as long as you dont profit from it. do a google search for free mp3 software, do you really think they all pay a license fee and give us the software for nothing? The MP3 licensing info is VERY explicit I wouldn't say that. *EDIT* let me reiterate that... open source software should have a license, but if you don't you wont be chased. |
| ||
the point is they don't actually chase free/open source projects for licenses, Actually, Thomson is famous for doing just that. However, the previous reply was only because you quoted me and took it out of context when I was clearly discussing games only ;) |
| ||
This thread has taught us the consequences of large amounts of alcohol on the brain, hik. ;) |
| ||
What about using MCI? (if your program is Win only, of course) You probably won't have to pay anything (you're not implementing MP3 deconding on your program, just using the codecs/SDK already available on Windows). But don't take my word for it, I'm just guessing here :) |