midicontrols

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

Синтаксис

midicontrolsObject = midicontrols
midicontrolsObject = midicontrols(controlNumbers)
midicontrolsObject = midicontrols(controlNumbers,initialValues)
midicontrolsObject = midicontrols(___,'MIDIDevice',deviceName)
midicontrolsObject = midicontrols(___,'OutputMode',mode)

Описание

пример

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.