MIDI-выход в UnityC#

Место общения программистов C#
Ответить
Anonymous
 MIDI-выход в Unity

Сообщение Anonymous »

Я пытаюсь создать простое программное обеспечение для подключения к устройству вывода MIDI в Windows в Unity и отправки MIDI-данных.

Чтобы не изобретать велосипед заново, я начал с использования C# Midi Toolkit в CodeProject, созданного с поддержкой .NET 2.0.

Проблема, с которой я столкнулся, заключается в том, что он отлично работает в редакторе Unity, но затем
не работает в автономной сборке Windows.

Вот базовый звуковой код подключения/воспроизведения:

Код: Выделить всё

    // Log devices
int deviceCount = OutputDevice.DeviceCount;
for (int i = 0; i < deviceCount; i++)
{
Debug.Log(string.Format("Detected MIDI Device with ID {0}:{1}", i, OutputDevice.GetDeviceCapabilities(i).name));
}
deviceID = 1;
Debug.Log(string.Format("Connected to {0}", deviceID));
// Connect to device
device = new OutputDevice(deviceID);
// Play Middle C
device.Send(new ChannelMessage(ChannelCommand.NoteOn, 0, note, 127));
И в автономной сборке я получаю следующее исключение:


OutputDeviceException: указанный дескриптор устройства недействителен.


Я просмотрел исходный код и заметил, что библиотека использует
дескрипторы Win32 для winmm.dll, я подумал, что это может быть имеете какое-то отношение к этому, но не знаете, куда двигаться дальше.

Может ли кто-нибудь дать представление о том, как к этому подойти? Я, вероятно, рассмотрю альтернативы, созданные специально для Unity, но мне интересно узнать, почему что-то подобное вообще не работает.

Подробнее здесь: https://stackoverflow.com/questions/490 ... t-in-unity
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»