Как известно штатными средствами воспроизвести звук в Javascript невозможно. Это конечно странно. Ни в одном из языков программирования с 1994 года ( когда я впервые попробовал что то напрограммировать на компьютере ) я не встречал такой ситуации, что нельзя вопроизвести хотя бы элементарные бипы. Но вот Javascript к сожалению так.
Готовых решений для воспроизведения звуков в Javascript не так уж и много. И единственное законченное, готовое к использованию, на момент написания этой статьи, это SoundManager 2 .
Опишу преимущества SoundManager 2.
1. SoundManager 2 — это полностью бесплатный законченный программный продукт.
Это означает, что его очень просто включить в вашу разработку и он сразу будет работать. Не нужно никаких танцев с бубнами. Лицензия продукта BSD License, оригинальная с включенным третьим пунктом. Это может наложить некие ограничения для использования SoundManager2 в коммерческих продуктах, но в целом это всё же бесплатный продукт, забывать об этом не стоит.
2. Поставка SoundManager 2 включает несколько версий.
Они различаются размерами и возможностями. Версия для разработчика с дебаггером весит 102 килобайта, минимальная версия для готового приложения, сжатая gzip = 10kb. Дебаггер действительно очень полезен при первом знакомстве с SoundManager 2.
3. У SoundManager 2 на удивление внятная документация.
Для бесплатного продукта документация просто супер. Есть готовые примеры, есть пошаговые туториалы, есть описания объектов и функций. Единственный недостаток – нет русского перевода. Но недостаток относительный. Всё понятно и так.
4. Широкая совместимость.
Разработчик SoundManager 2 заявляет поддержку :
SoundManager 2 brings reliable cross-platform audio to JavaScript. HTML5 Audio() support, Flash 8/9 fallback — works on iPad, iPhone (iOS 4), Palm Pre and Android
Главное чтобы на этой платформе была полноценная поддержка Flash 8 или 9. А это означает, что используя библиотеку можно создавать полноценные кроссплатформенные сайты. SM2 используют уже такие проекты Last.FM, Opera, SoundCloud и др.
Мне же SoundManager 2 понравился, я его уже использовал в паре проектов, впечатления сугубо положительные.