JavaScript:Библиотеки/p5.sound/Класс p5.Gain

Материал из Онлайн справочника
Перейти к навигации Перейти к поиску

Перевод: Максим Кузьмин (Cubewriter) Контакты:</br>* Skype: cubewriter</br>* E-mail: cubewriter@gmail.com</br>* Максим Кузьмин на freelance.ru
Проверка/Оформление/Редактирование: Мякишев Е.А.


Pixel Art Mini Meow Animated.gif Черновик


Класс p5.Gain [1]

Описание

Это класс для изменения общей громкости звука. Он используется, как правило, для создания микшеров звука.

Чтобы использовать эту функцию, нужно подключить библиотеку p5.sound. Для этого в заголовок своего файла «index.html» впишите следующее:

<script language="javascript" type="text/javascript" src="path/to/p5.sound.js"></script>

Синтаксис

new p5.Gain()

Параметры

  • setInput() – подключает источник звука к объекту p5.Gain
  • connect() – отправляет получившиеся данные объекту из библиотеки p5.sound или объекту из Web Audio API
  • disconnect() – отключает объект p5.Gain от всех «выходов»
  • amp() – задает уровень громкости для аудиоданных, выходящих из объекта p5.Gain

Возвращаемое значение

Пример

№1

 1 // В этом скетче мы загрузим два звуковых файла
 2  // и сделаем так, чтобы громкость одного файла
 3  // увеличивалась по мере уменьшения громкости другого, и наоборот: 
 4 
 5  var sound1, sound2;
 6  var gain1, gain2, gain3;
 7 
 8  function preload(){
 9  soundFormats('ogg', 'mp3');
10  sound1 = loadSound('../_files/Damscray_01');
11  sound2 = loadSound('../_files/beat.mp3');
12  }
13 
14  function setup() {
15  createCanvas(400,200);
16 
17  // создаем «главный» усилитель,
18  // к которому подключим оба звуковых файла:
19  gain3 = new p5.Gain();
20  gain3.connect();
21 
22  // настраиваем проигрывание «sound1»:
23  sound1.rate(1);
24  sound1.loop();
25  sound1.disconnect(); // отключаем «выход» объекта «sound1»
26 
27  gain1 = new p5.Gain();  // настраиваем объект «gain1»
28  gain1.setInput(sound1); // подключаем «sound1» ко «входу» «gain1»
29  gain1.connect(gain3);   // подключаем «выход» «gain1»
30                          // к «главному» усилителю
31 
32  sound2.rate(1);
33  sound2.disconnect();
34  sound2.loop();
35 
36  gain2 = new p5.Gain();
37  gain2.setInput(sound2);
38  gain2.connect(gain3);
39 
40  }
41 
42  function draw(){
43  background(180);
44 
45  // рассчитываем горизонтальное расстояние 
46  // между курсором мышки и правой стороной экрана:
47  var d = dist(mouseX,0,width,0);
48 
49  // подгоняем горизонтальную позицию курсора мышки
50  // к значениям для управления громкостью «sound1»:
51  var vol1 = map(mouseX,0,width,0,1);
52  var vol2 = 1-vol1; // когда «sound1» будет звучать громко,
53                     // «sound2» будет звучать тихо и наоборот
54 
55  gain1.amp(vol1,0.5,0);
56  gain2.amp(vol2,0.5,0);
57 
58  // подгоняем вертикальную позицию курсора мышки
59  // к значениям для управления «главной громкостью звука»:
60  var vol3 = map(mouseY,0,height,0,1);
61  gain3.amp(vol3,0.5,0);
62  }

№2

№3

См.также

Внешние ссылки