4 ms·
> . Writing something like http://www.audiotool.com/ http://www.audiotool.com/ to operate Sorry but in terms of holding the tempo the browser is still not acc
by aikah 12y ago
> . Writing something like http://www.audiotool.com/ http://www.audiotool.com/ to operate
Sorry but in terms of holding the tempo the browser is still not accurate.Audio Synthesis is only one part of the problem.Flash is bloody accurate in term of sequencing and playing sounds at the right time.The browser is just not.that's why Flash sequencers are possible,but WebAPI ones arent.
- leviathant 12y agoOh, believe me, I know. That was my first and foremost complaint. When I was ranting about this back then, I decided to put my money where my mouth was by recreating a Roland/Boss drum machine in the browser - http://www.bitrotten.com/dr110 http://www.bitrotten.com/dr110 - I was also a bit rusty on my CSS & Javascript, and it was a good excuse to brush up there. There were a few annoyances I ran into along the way, but what leaves the concept dead in the water was the completely unstable clock. The only browser at the time that came even close to stable was Firefox, on a fairly speedy machine. Having proved my point (to myself) that Javascript wasn't ready, I've basically abandoned that project as something to revisit later as audio capabilities of web browsers become more robust. It's still easily a decade and a half behind Flash on that front.
- deleted 12y ago[deleted]
- stuartmemo 12y agoI disagree. I made a drum machine that, while has a few bugs (the beat url), tempo isn't one of them. Even when switching tabs. http://beatpetite.com http://beatpetite.com As an aside, the drum sounds themselves are generate using the web audio api.
- leviathant 12y agoNice! I'll have to take a look at this when I got home. It's been a while since I put my drum machine together, I'm looking forward to seeing how you approached tempo.
- aikah 12y agoThe tempo IS totally off,do you want me to record the output of your app and post it here? i've been developing audiosoftware for 10 years,trust me I tried with Web techs.The tempo is never accurate.Your sequencer doesnt hold a steady 120 BPM.
- stuartmemo 12y agoYes, please do! Would love the feedback. Are you using Chrome?
- nitrogen 12y agoThe tempo is very jittery for me in Firefox for Linux. Also, you might want to go a bit easier on history.pushState() :-). I had a heck of a time getting back here.
- stuartmemo 12y agoYeah, as I mentioned above, I don't think Firefox performance is quite there yet. Haha, good point! Thanks for the feedback!
- leviathant 12y agoI don't think I can edit my other comment, so here's a new reply: The tempo's jittery for me, and the audio's dropping here and there, just with a single row of 16th note hihats. It also totally destroys the back button, flooding the browser history. I'm running Windows 8.1, Firefox 30, 16gb RAM, i7-2600@3.4ghz (it's my HD video & multitrack audio editing machine) I'm not even switching tabs. Doesn't appear to even display in IE11, although to be fair, I just opened my DR-110 up and, while it renders, and most of the buttons are functional, the knobs are not, and no audio plays back. Playback of beatpetite seems steadier in Chrome, but as I typed that, I got an audio hiccup. The visuals are noticeably jerky. Again comparing to my DR-110, it's pretty clear I'm using a different approach to the audio playback because I'm getting seriously weird glitches on my playback. And the CSS buttons don't quite line up on mine in Chrome the way it does in the other two browsers. I wouldn't spend too much time chasing a solid tempo down. That's essentially out of your control.
- stuartmemo 12y agoThis is great feedback, thank you! Yeah, I think Firefox isn't quite up to the job yet. But I think Chrome's performance is indicative that it is possible. I'm using the technique described in this article, but with a web worker, meaning that the clock doesn't stop when changing tabs. http://www.html5rocks.com/en/tutorials/audio/scheduling/ http://www.html5rocks.com/en/tutorials/audio/scheduling/
- leviathant 12y agoAwesome, thanks for sharing. This definitely looks like the way to go in the future, and with any luck, the abilities of the various browsers will catch up.