midicontrols

Открытая группа MIDI управляет для чтения

Описание

пример

midicontrolsObject = midicontrols возвращает объект, который слушает все средства управления на вашем MIDI-устройстве по умолчанию.

Вызовите midiread с объектом возвратить значения средств управления на вашем MIDI-устройстве. Если вы вызываете midiread прежде чем управление перемещено, midiread возвращает начальное значение вашего midicontrols объект.

пример

midicontrolsObject = midicontrols(controlNumbers) слушает средства управления, заданные controlNumbers на вашем MIDI-устройстве по умолчанию.

пример

midicontrolsObject = midicontrols(controlNumbers,initialValues) задает initialValues сопоставленный с controlNumbers.

пример

midicontrolsObject = midicontrols(___,'MIDIDevice',deviceName) задает MIDI-устройство ваш midicontrols объект слушает, с помощью любого из предыдущих синтаксисов.

пример

midicontrolsObject = midicontrols(___,'OutputMode',mode) указывает диапазон значений, возвращенных midiread и принятый как initialValues для midicontrols и как controlValues для midisync.

Примеры

свернуть все

Создайте midicontrols возразите и считайте значение управления по умолчанию.

midicontrolsObject = midicontrols
midiread(midicontrolsObject)
midicontrolsObject = 

midicontrols object: any control on 'BCF2000'

ans =

     0

Переместите любое управление в свое MIDI-устройство. Используйте midiread возвращать новое значение последнего перемещенного управления.

midiread(midicontrolsObject)
ans =

    0.3810

Используйте midiid идентифицировать имя вашего MIDI-устройства и заданного управления. Переместите управление MIDI, которое вы хотите идентифицировать.

[controlNumber,deviceName] = midiid;
Move the control you wish to identify; type ^C to abort.
Waiting for control message...

Создайте объект, который отвечает на управление, которое вы задали.

midicontrolsObject = midicontrols(controlNumber);

Переместите ваш, выбрал управление MIDI, и затем используйте midiread возвращать его новое значение.

midicontrolsObject = midiread(midicontrolsObject);
ans =

    0.4048

Определите контрольные числа четырех различных средств управления на вашем MIDI-устройстве.

[controlNumber1,~] = midiid;
[controlNumber2,~] = midiid;
[controlNumber3,~] = midiid;
[controlNumber4,~] = midiid;

controlNumbers = [controlNumber1,controlNumber3;...
                  controlNumber2,controlNumber4]
Move the control you wish to identify; type ^C to abort.
Waiting for control message... done
Move the control you wish to identify; type ^C to abort.
Waiting for control message... done
Move the control you wish to identify; type ^C to abort.
Waiting for control message... done
Move the control you wish to identify; type ^C to abort.
Waiting for control message... done

controlNumbers =

        1081        1085
        1082        1087

Создайте midicontrols объект, который слушает ваши заданные средства управления. Задайте начальное значение для всех средств управления.

initialValue = 0.5;
midicontrolsObject = midicontrols(controlNumbers,initialValue);

Переместите одни из своих заданных средств управления, и затем считайте последнее значение всех ваших заданных средств управления.

midiread(midicontrolsObject)
ans =

    0.0873    0.5000
    0.5000    0.5000

Определите контрольные числа двух различных средств управления на вашем MIDI-устройстве.

[controlNumber1,~] = midiid;
[controlNumber2,~] = midiid;

controlNumbers = [controlNumber1,controlNumber2];
Move the control you wish to identify; type ^C to abort.
Waiting for control message... done
Move the control you wish to identify; type ^C to abort.
Waiting for control message... done

Создайте midicontrols объект, который слушает ваши заданные средства управления. Задайте начальное значение для всех средств управления.

initialValue = 12;
midicontrolsObject = midicontrols(controlNumbers,initialValue,'OutputMode','rawmidi');

Переместите одни из своих заданных средств управления, и затем считайте последнее значение всех ваших заданных средств управления.

midiread(midicontrolsObject)
ans =

    63    12

Примите, что вашим MIDI-устройством является Behringer BCF2000. Введите этот синтаксис в командной строке MATLAB®:

setpref midi DefaultDevice BCF2000
Эта настройка сохраняется через сеансы работы с MATLAB. Вы не должны устанавливать его снова, если вы не хотите изменить свое устройство по умолчанию.

Примите, что ваше MIDI-устройство является Behringer BCF2000 и имеет контроль с идентификационным номером 1001. Создайте midicontrols объект, который слушает контрольное число 1001 на вашем устройстве Behringer BCF2000.

midicontrolsObject = midicontrols(1001,'MIDIDevice','BCF2000');

Входные параметры

свернуть все

Контрольные числа MIDI-устройства, заданные как целое число или массив целых чисел. Используйте midiid в интерактивном режиме идентифицировать контрольные числа вашего устройства. Смотрите Контрольные числа MIDI-устройства для усовершенствованного объяснения как controlNumbers определяются.

Если вы задаете controlNumbers как пустой вектор, [ ], затем midicontrols объект отвечает на любое управление на вашем MIDI-устройстве.

Пример: 1081

Типы данных: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Начальные значения средств управления MIDI, заданных как скаляр или массив тот же размер как controlNumbers. Если вы задаете initialValues как скаляр, все средства управления заданы controlNumbers присвоены то значение.

Значение, сопоставленное с вашими средствами управления MIDI, не может быть определено, пока вы не перемещаете управление MIDI. Если вы задаете начальное значение, сопоставленное с вашим управлением MIDI, начальное значение возвращено midiread функция до управления MIDI перемещена.

  • Если OutputMode задан как 'normalized', затем начальные значения должны быть в области значений [0,1]. Фактические начальные значения квантуются и могут немного отличаться от начальных значений, заданных когда ваш midicontrols объект создается.

  • Если OutputMode задан как 'rawmidi', затем начальные значения должны быть целыми числами в области значений [0,127]

Пример: 0.3

Пример: [0,0.3,0.6]

Пример 5

Пример: [5;15;20]

Типы данных: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Имя MIDI-устройства, присвоенное производителем устройств или хостовой операционной системой, заданной как строка. Заданный deviceName может быть подстрока точного имени вашего устройства. Если вы не задаете deviceName, MIDI-устройство по умолчанию используется. Смотрите Набор MIDI-устройство По умолчанию для примера определения MIDI-устройства по умолчанию.

Если вы не устанавливаете MIDI-устройство по умолчанию, хостовая операционная система выбирает устройство по умолчанию незаданным способом. Как лучшая практика, используйте midiid чтобы идентифицировать имя устройства, вы хотите.

Пример: 'MIDIDevice','BCF2000 MIDI 1'

Типы данных: char | string

Режим вывода для MIDI управляет значением, заданным как 'normalized' или 'rawmidi'.

  • 'normalized' — Значения вашего управления MIDI нормированы. Если ваш midicontrols объект вызван midiread, затем значения в области значений [0,1] возвращены.

  • 'rawmidi' — Значения вашего управления MIDI не нормированы. Если ваш midicontrols объект вызван midiread, затем целочисленные значения в области значений [0,127] возвращены.

Пример: 'OutputMode','normalized'

Пример: 'OutputMode','rawmidi'

Типы данных: char | string

Выходные аргументы

свернуть все

Объект, который слушает средства управления на MIDI-устройстве.

Больше о

свернуть все

Контрольные числа MIDI-устройства

MATLAB задает MIDI device control numbers как (MIDI Channel Number) × 1000 + (MIDI Controller Number).

  • MIDI Channel Number является каналом передачи что ваше использование устройства, чтобы отправить сообщения. Это значение находится в области значений 1–16.

  • MIDI Controller Number является номером, присвоенным отдельному управлению на вашем MIDI-устройстве. Это значение находится в области значений 1–127.

Ваше MIDI-устройство определяет значения MIDI Channel Number и MIDI Controller Number.

Введенный в R2016a