Processing:Библиотеки/Sound/Класс Sound: различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) Нет описания правки |
Нет описания правки |
||
Строка 4: | Строка 4: | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
=Класс Sound<ref>[https://processing.org/reference/libraries/sound/Sound.html processing.org - Sound]</ref>= | =Класс Sound<ref>[https://processing.org/reference/libraries/sound/Sound.html processing.org - Sound]</ref>= | ||
Строка 10: | Строка 10: | ||
==Класс== | ==Класс== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
Sound | Sound | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 28: | Строка 28: | ||
==Синтаксис== | ==Синтаксис== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
Sound(parent) | Sound(parent) | ||
Sound(parent, sampleRate, outputDevice, inputDevice, volume) | Sound(parent, sampleRate, outputDevice, inputDevice, volume) | ||
Строка 35: | Строка 35: | ||
==Параметры== | ==Параметры== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
parent – как правило, используется «this». Тип данных – PApplet. | parent – как правило, используется «this». Тип данных – PApplet. | ||
sampleRate – частота дискретизации, используемая движком для синтеза звука (по умолчанию – «44100»). Тип данных – int. | sampleRate – частота дискретизации, используемая движком для синтеза звука (по умолчанию – «44100»). Тип данных – int. | ||
Строка 45: | Строка 45: | ||
==Пример== | ==Пример== | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
import processing.sound.*; | import processing.sound.*; | ||
Sound s; | Sound s; | ||
Строка 97: | Строка 97: | ||
|Высота логотипа издателя для schemaNewsArticle=45 | |Высота логотипа издателя для schemaNewsArticle=45 | ||
}} | }} | ||
{{Навигационная таблица/ | {{Навигационная таблица/Портал/Processing}} |
Текущая версия от 11:58, 20 мая 2023
Содержание | Среда разработки Processing | Справочник языка Processing | Библиотеки | Примеры | Режимы программирования |
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Класс Sound[1]
Класс
Sound
Описание
Класс Sound позволяет настраивать глобальные свойства для синтеза и проигрывания звука – вроде устройства для вывода данных, частоты дискретизации и общей громкости для выходных аудиоданных. Информацию о доступных устройствах ввода и вывода данных можно получить при помощи функции Sound.list().
Методы
- list() – печатает и возвращает информацию о доступных аудиоустройствах, а также о количестве имеющихся у них входных/выходных каналов.
- sampleRate() – считывает или задает внутреннюю частоту дискретизации для движка синтеза звука.
- inputDevice() – выбирает устройство (звуковую карту), которое нужно использовать для считывания входных аудиоданных при помощи объекта AudioIn.
- outputDevice() – выбирает устройство (звуковую карту), которому нужно отправить выходные аудиоданные, сгенерированные при помощи библиотеки Sound.
- volume() – задает общую громкость для выходных аудиоданных, сгенерированных при помощи библиотеки Sound.
Синтаксис
Sound(parent)
Sound(parent, sampleRate, outputDevice, inputDevice, volume)
Параметры
parent – как правило, используется «this». Тип данных – PApplet.
sampleRate – частота дискретизации, используемая движком для синтеза звука (по умолчанию – «44100»). Тип данных – int.
outputDevice – ID устройства (например, звуковой карты), на котором нужно проиграть звук. Тип данных – int.
inputDevice – ID устройства (например, звуковой карты), звук которого необходимо использовать в качестве входных данных. Тип данных – int.
volume – общая громкость выходных аудиоданных, сгенерированных при помощи библиотеки Sound (по умолчанию – «1.0»). Тип данных – float.
Пример
import processing.sound.*;
Sound s;
void setup() {
size(200, 200);
// запускаем два осциллятора, генерирующих синусный сигнал,
// но с немного разными частотами, чтобы получить красивый «бит»:
SinOsc sin = new SinOsc(this);
sin.play(200, 0.2);
sin = new SinOsc(this);
sin.play(205, 0.2);
// создаем объект Sound,
// чтобы глобально контролировать звук выходящих аудиоданных:
s = new Sound(this);
}
void draw() {
// подгоняем вертикальное перемещение
// курсора мышки к изменению громкости:
float amplitude = map(mouseY, 0, height, 0.4, 0.0);
// вместо того, чтобы менять громкость у каждого осциллятора
// по отдельности, меняем общую громкость выходных аудиоданных,
// генерируемых библиотекой Sound:
s.volume(amplitude);
}
См.также
Внешние ссылки
Примеры на Processing | |
---|---|
Основы |
|
Продвинутые графические эффекты |
|
Примеры из сторонних библиотек |