Пример реализации интеграции с редактором элементов (Samplitude)¶
Во вложении данного раздела размещены все необходимые библиотеки, демо приложение, библиотека плагина.
Библиотека DigispotIP.dll¶
Реализует непосредственную связь с МДБ и обратно с помощью библиотеки DigispotLink.dll.
Библиотека DigispotLink.dll¶
Данная библиотека Win32 dll, экспортирующая несколько методов:
Метод Initialize
Предназначен для инициализации основных параметров
typedef void (+stdcall *CallbackEventMethod)(BSTR result);
typedef void (+stdcall *Initialize)(char* server_host_name, char* client_host_name, char* host, int port, CallbackEventMethod callback_event_method);
Параметры метода:
server_host_name - идентификатор хоста сервера (МДБ)
client_host_name - идентификатор хоста клиента (Samplitude)
host - адрес хоста сервера для подключения
port - порт хоста сервера для подключения
callback_event_method - делегат на метод, обрабатывающий все приходящие от сервера сообщения. Параметр void* result - строка BSTR в формате XML.
Метод OpenFromDigispot
Предназначен для выбора одного из существующих элементов МБД и открытия элементов звуковых файлов на редактирование в Samplitude.
В качестве результата возвращает XML структуру по выбранным элементам, строка типа BSTR.
typedef BSTR (+stdcall *OpenFromDigispot)();
Метод SaveInDigispot
Предназначен для добавления или обновления элементов звуковых файлов в МДБ. Параметром bstr_value передается XML структура с описанием элементов звуковых файлов.
typedef void (+stdcall *SaveInDigispot)(BSTR bstr_value);
Пример XML структуры обмена данными¶
<ELEMENTS>
<MediaElem>
<ID dt="i4">0</ID>
<FONO_INFO>
<Type dt="i4">3</Type>
<FileName>\AUDIODB\Track01.mp3</FileName>
<dbID dt="i4">0</dbID>
<FONO_STRING_INFO>
<Name>01. Track</Name>
<Artist></Artist>
<Author></Author>
<Album></Album>
<Category></Category>
<Comment></Comment>
</FONO_STRING_INFO>
</FONO_INFO>
</MediaElem>
<MediaElem>
<ID dt="i4">0</ID>
<FONO_INFO>
<Type dt="i4">3</Type>
<FileName>\AUDIODB\Track02.mp3</FileName>
<dbID dt="i4">100</dbID>
<FONO_STRING_INFO>
<Name>02. Track</Name>
<Artist></Artist>
<Author></Author>
<Album></Album>
<Category></Category>
<Comment></Comment>
</FONO_STRING_INFO>
</FONO_INFO>
</MediaElem>
...
</ELEMENTS>
Описание приложения Example.exe¶
Данное приложение демонстрирует работу с помощью библиотеки DigispotLink.dll с МДБ. Приложение представляет собой MDI интерфейс с тремя основными функциями:
Создание нового набора элементов (кнопка New)
Получение набора элементов из МДБ (кнопка Open)
Сохранение текущего набора элементов в МДБ
Установка и настройка плагина¶
Библиотека плагина LinkServer.dll должна находиться в коренной папки Digispot. Для подключения плагина необходимо настроить vid файл следующим образом:
Добавить в конец файла следующие строки:
Подключаем библиотеку плагина:
CREATE_NET_WND_PLUGIN LinkServerPlug LinkServer.dll LinkServer.Plugin
Устанавливаем визуальное размещение плагина (левая панель, вкладка с именем "Link Server"):
SET_VIEW_TAB_OBJ VIEW_T1 LinkServerPlug "Link Server"
Указываем файл с параметрами сервера для подключений:
INIT_EVENT_SERVER linkserver.xml
Создать и положить рядом с vid файлом файл linkserver.xml. Содержимое файла:
<EVENT_SERVER HOST="LINKSERVER_HOST">
<CLIENTS>
<TCP ADDR="SRV" TYPE="SERVER" IP="0.0.0.0" PORT="7601" PROTOCOL="XML" />
</CLIENTS>
</EVENT_SERVER>
Для работы Example.exe порт должен быть обязательно 7601
Установка и настройка демонстрационной версии DJin¶
Порядок действий:
1. Установить дистрибутив демонстрационной версии DJin djindemosetup.exe следуя инструкциям мастера.
2. После установки в коренную папку приложения DJin (C:\Program Files\Digispot II DEMO\DJin) скопировать библиотеку плагина LinkServer.dll
3. Добавить в папку SYSTEM (C:\Program Files\Digispot II DEMO\DJin\SYSTEM) файлы LinkServerDemo.vid и linkserver.xml
4. Запустить программу DJin
5. После загрузки приложения необходимо изменить текущий файл конфигурации, с помощью пункта меню "File->Select configuration…" необходимо указать конфигурацию LinkServer Demo. После выбора приложение будет перезагружено.
6. Если все было выполнено правильно, то в левой части должна появиться вкладка плагина "Link Server". Теперь можно запускать и использовать демо приложение Example.exe.