New this release: the audio engine! You can import audio files, and play them with a new Audio plugin.
Except, it's complicated. Bear with me.
Encoding Ogg Vorbis and AAC
First of all, Internet Explorer and Safari only support AAC sounds (.m4a), and everything else supports Ogg Vorbis (.ogg). So your sounds must be in both formats to play everywhere. Construct 2 will encode all PCM .wav and FLAC files you import to .ogg for you.
Windows 7 includes its own AAC encoder. If you're on Windows 7, Construct 2 will also encode all PCM .wav and FLAC files to .m4a for you. We're allowed to use Windows 7's encoder without having to get a license. However, to encode AAC on XP and Vista, we need to include an encoder with Construct 2. This means we need to get a license and pay royalties and fees. We're working on that, but it's some way away. (Apple and Microsoft like to make life difficult for us by refusing to support Ogg Vorbis, which is a free format.) It's also unlikely the free edition will include an AAC encoder for XP and Vista, because we'd still be liable for royalties. It can come with a licensed version though.
So, if you're on XP or Vista, you'll have to encode .m4a files yourself for the time being. A quick google for 'AAC encoder' should turn up something. Once encoded, you can import the .m4a files in to Construct 2. Alternatively, you can just accept that Internet Explorer and Safari users won't have any sound.
It turns out browser support for HTML5 audio right now is pretty bad. As a result the Audio object only has two actions: Play, and Set looping. With that, I seem to already have hit the edge of HTML5 audio support. So, we're going to have to wait for browser support to improve before any extra features get added.
What's wrong? For starters, some browsers don't properly cache audio files. Often in a game, the same sound will be playing twice at the same time (e.g. two explosion sounds that happen in quick succession).
On Chrome and Firefox, even if the sound is already downloaded, playing the second 'overlapping' sound will download the entire sound from the server again. That's right, the explosion sound is already sitting there on your computer, but the second explosion sound will probably happen 2-3 seconds later after it's downloaded exactly the same file all over again from the server. However, once it's downloaded its second copy of the file, it will play up to two sounds at the same time from cache. But then if you play a third simultaneous sound, it'll download a third copy... and so on. IE9, Opera and Safari seem to properly cache sounds.
Edit 31st July: it looks like I was wrong here. When running on a live server, audio files do cache properly. It looks like a problem with the way the browser talks to C2's local HTTP server. More details in the forum.
Secondly, Chrome and Firefox don't loop sounds. Safari can loop, but with gaps of silence in between. IE9 and Opera can loop OK. As you can imagine, around about here I got disheartened and gave up trying to support more features.
What do mobile browsers do? I've not tested it myself, but I've heard support is even worse.
Since Chrome and Firefox aren't caching audio properly, sound files are not pre-loaded. The first time a sound is played, it will download it from the server, while your game is running. This will mean your first sound effects are all delayed. Not great. I'll try and come up with some way of working around this in a future build.
Time to chill out
I've been working really hard lately, and more recently, going a bit mad over trying to get audio to work properly in browsers. It's been getting a bit intense so I need some time off to relax and de-stress. I'm going to take a week or so break. I won't be online some of that time either, but hopefully I'll be back on top of bugs and questions soon enough. If this build turns out to be seriously broken, I won't be around, so you'll probably have to uninstall and go back to r49 for a bit (don't forget to back up your projects as always). Once I'm back I'll try and sort out any problems as quickly as possible, as always :)
Anyways, here's to hoping everything works! :)