2009-11-19 2 views
1

Я хотел бы добавить необычную функцию на веб-сайт, который позволит пользователю воспроизводить звук ... единственную выборочную заметку. Когда пользователь перемещает ползунок, звук будет подниматься или опускаться тонким образом (плавно). Таким образом, по мере того, как пользователь сместит кнопку вправо, звук будет подниматься в поле, когда он перемещается влево, он будет спускаться в поле (от сопрано до баса). Кто-нибудь знает, как это может быть достигнуто? Какой звуковой файл вы использовали бы и как бы вы могли воспроизводить его непрерывно (при нажатии кнопки) и изменении высоты тона (при перемещении ползунка)? Это не совсем конкретный язык - это может быть php или flex. Спасибо заранее. Simon ...Добавление скользящего звука на сайт

================================================================================================================================================== ====== Дополнительная информация

Похоже, что лучшим решением может быть что-то вроде C или C# или C++. К сожалению, у меня очень мало опыта в этих языках. Кто-нибудь сможет сказать мне, можно ли достичь этого в C? Спасибо.

ответ

0

Вам понадобится плагин на стороне клиента, чтобы сделать эту работу в браузере, Silverlight, Flex или Flash, скорее всего, станет вашим лучшим/единственным вариантом.

На веб-сайте с ограниченным доступом к оборудованию, что вы хотите сделать, будет сложно, если не невозможно. Лучше всего иметь много аудиофайлов (для каждой нужной вам ноты), а также управлять слайдом в другом файле.

Возможно, вы захотите использовать очередь и массив различных аудиофайлов.

Если следующий элемент из очереди отличается от первого, воспроизведите его, если очередь пуста, продолжайте воспроизведение последнего файла. Затем в событии «слайдер» вы ставите в очередь следующий файл.

Если вы используете собственное приложение, у вас будет больше контроля над звуковым оборудованием и, скорее всего, создаст этот эффект, не имея mp3 для каждой ноты/ступени, которую вы хотите воспроизвести.

+0

Спасибо за идеи ... Я не совсем согласен с идеей какого-либо конкретного технического решения. Не могли бы вы рассказать мне, что вы подразумеваете под «родным приложением». Я не думаю, что идея иметь отдельный звук для каждой ноты будет работать (так как звук должен скользить по каналам), и поэтому, если есть решение на другом языке, тогда это было бы здорово. Еще раз спасибо Simon ... – swiltshire

+0

Когда я сказал собственное приложение, я имел в виду exe-файл, который пользователь будет запускать локально. C++, C#, Java и т. Д., С прямым доступом к API Windows и аппаратным средствам. – Nate

0

Для достижения желаемого вам нужны специальные инструменты для обработки звука, к которым у большинства веб-приложений нет доступа. Предлагаю вам взглянуть на Flex и Alchemy. Алхимия позволяет вам называть c или C++, которые могут позволить вам использовать различные c-фильтры для преобразования звука.

Я знаю, что это не невозможно ... просто не так просто сделать :) Удачи.


Адриан

2

Есть эти парни «Sonoflash», которые делают очень интересные вещи с генерируемым звуком в чистом ActionScript3 - другими словами, отсутствие внешнего звукового файла необходимо.

Вот ссылка на интервью, которое сделал с ними Adobe Evangelist Райан Стюарт. Я подозреваю, что вы сможете получить то, что вам нужно, используя эту библиотеку AS3.

http://blog.digitalbackcountry.com/2009/09/sonoflash-easily-add-sound-to-your-flash-apps/

+0

+1 Это очень близко к тому, что я думал, что вы могли бы сделать с родным приложением, я не понимал, что теперь это возможно с Flash10. – Nate

0

Существует определенно не PHP решение, кроме вторя HTML для вызова на стороне клиента рутина.

Несомненно, вы можете использовать Flash или Flex .. но вы пробовали события JavaScript-мышки?

, например:

<img src="buttonImageFilename" 
onMouseDown="handlePress();return true;" 
onMouseUp="handleRelease();return true;" 
onMouseOut="handleRelease();return true;" 
onClick="return false;" 
> 

Честно говоря, это ошибки меня, когда вспышка брошено вокруг в качестве первого решения, поскольку объекта среды обертки обычно требуется, чтобы сделать это. (видели ли вы проблемы с флеш-памятью и процессором?)

Много раз для простых вещей JavaScript работает просто отлично.

+0

Что касается требований C#/C++ - что именно это связано с работой на веб-странице? Вы пытаетесь создать виджет на веб-странице или автономном приложении? Многие языки эмулируют синтаксис C, но, в частности, C обычно используется для приложений, а не для веб-страниц. –

Смежные вопросы