Радиатор поддерживает плагины (наконец ;-)

Скачать:

Radiator SDK - набор разработчика (28/04/2001 - 182 kB) - проверка плагина, пример плагина с исходниками, описание использования прямого доступа к порту с комментариями

Утилита командной строки Радиатора (01/10/2001 - 18 кБ) - пример программы с исходниками (Delphi 4.0)

Пример программы дистанционного управления Радиатором (30/09/2001 - 123 кБ) -пример программы с исходниками (Delphi 4.0)

Управление Радиатором с помощью глобальных комбинаций клавиш создал Алексей Хакимзянов (4 кБ)

bt8x8 плагин + драйвер  (вер 1.2 - самоустанавливающийся плагин + драйвер 179 кБ) - плагин создал Mike Crash 
Поддерживаемые карты: AVerMedia TVPhone98, AVerMedia TVPhone98 w/VCR, AIMS Extreme, Askey TView99, Hauppauge WinTV, LifeView FlyVideo98, PixelView PV878P+ 

bt8x8wdmfm плагин (ver 1.1 - 31/05/2001 - 14 кБ) - плагин создал Иван Усков (самые последние универсальные bt8x8 WDM-драйверы с поддержкой FM-режима доступны  с http://ivus.tele-kom.ru или здесь)
Поддерживаемые карты: AverMedia Phone 95, AverMedia Phone 98, AverMedia Phone 98 w/VCR, FlyVideo 98, Tekram M 205 PRO, Modular Technology MM100PCTV, Hauppauge WinTV Primio

 

GemTek PCI direct access plugin (ver. 1.1.2, 26/02/2002 - 5 kB) - plugin created by Alex Brukhoff
Supported card: GemTek PCI

Plugin for IRAssistant made by Elso Andras with source (118 kB)

RadioTrack II плагин (07/09/2001 - 5 кБ) - плагин с возможностью переключения моно/стерео создал Josef Kucera (веб страничка)
Поддерживаемая карта: AimsLab RadioTrack II

GemTek PCI плагин (вер. 1.04, 04/06/2001 - 82 кБ) - плагин создал Василий Зайцев
Поддерживаемая карта: GemTek PCI

SoundForte SF64-PCE плагин (вер. 1.00, 25/07/2001 - 23 кБ) - плагин создал Петр Клюшкин (веб страничка)
Поддерживаемая карта:
SoundForte RadioWave 64-E SF64-PCE

SoundForte SF64-PCR плагин (вер 1.03, 02/07/2001 - 58 кБ) - плагин создал Алексей Хакимзянов 
Поддерживаемая карта: SoundForte SF64-PCR

SoundForte SF16-FMR плагин (04/06/2001 - 17 кБ) - плагин создал Ladislav Palider (Kefa)
Поддерживаемая карта: SoundForte SF16-FMR

SoundForte SF16-FMR2 плагин (вер. 1.01, 02/07/2001 - 61 кБ) - плагин создал Алексей Хакимзянов 
Поддерживаемая карта: SoundForte SF16-FMR2

ProVideo 951 плагин (вер. 1.02, 30/09/2001 - 58 кБ) - плагин создал Алексей Хакимзянов 
Поддерживаемая карта: ProVideo 951 TV/FM Tuner

 


Директория плагинов:

Плагины должны находиться в поддиректории Радиатора Plugins (например c:\Program Files\Radiator\Plugins).
Если плагину необходимы какие-нибудь файлы, то они должны находиться там же. Если плагину необходимо сохранять свою конфигурацию, ПРЕДПОЧТИТЕЛЬНО ИСПОЛЬЗОВАТЬ файл plugins.ini в поддиректории Plugins.

Пункты должны быть сохранены в файле plugins.ini в следующей форме:
[имя модуля] ;например [sf16fmi] для плагина sf16fmi.dll
параметр=значение ;например Port=$384

Как разработать свой собственный драйвер (плагин) для Радиатора:

Оригинальная идея принадлежит хорошо известному MikeCrash. Он создал свою собственную программу (AFM radio), которая была разработана для карт на базе BT878, но также могла работать с плагинами для других плат.

Через некоторое время, мы создали первое предложение нового интерфейса плагинов, который включил большее количество функций и возможностей.

Интерфейс плагинов Радиатора строго основан на приведенном здесь стандарте.

Интерфейс:

Здесь приведен список функций и процедур, которые экспортирует плагин Радиатора.
Фраза Радиатор пока не использует. означает, что хотя пока Радиатор не использует эти функции, они планируется к реализации в следующих версиях.

Требуется во всех плагинах Описание
функция GetModuleName: PChar; stdcall; Экспортирует имя модуля. Не должна быть пустой, чтобы Радиатор смог распознать плагин.
функция GetModuleInfo: Cardinal; stdcall; Возвращает информацию о возможностях плагина. Результатом будет постоянная "поддержки модуля" ORed:
например FM_TUNE or FM_MUTEUNMUTE
тоже самое, что и FM_TUNE + FM_MUTEUNMUTE
Результатом будет 1 + 4 = 5.
функция HWInit: Boolean; stdcall; Инициализация "железа".
функция HWDeInit: Boolean; stdcall; Деинициализация "железа".

 

Не обязательны Описания
функция GetModuleComment: PChar; stdcall; Описание, копирайт и т.д.
процедура TuneFreq (Freq: LongInt); stdcall; Matches FM_TUNE. Частота в кГц (88.2 МГц -> 88200 кГц).
процедура TuneFreqMuted (Freq: LongInt); stdcall; Matches FM_TUNEMUTED. Частота в кГц (88.2 МГц -> 88200 кГц).
процедура SetMute (Mute: Boolean); stdcall Matches FM_MUTEUNMUTE.
функция ScanStation (DirectionUp:Boolean; FreqToSearchFrom: LongInt): LongInt; stdcall
Радиатор использует начиная с версии 1.6.1.0.
Matches FM_SCANSTATION. Параметры:
направление (вверх по диапазону - True или вниз по диапазону - False) и текущая частота, откуда начинать искать. Возвращает новую частоту.
функция GetVolume: Word; stdcall;
Радиатор пока не использует.
Matches GETVOLUME.
процедура SetVolume (Left,Right: Word); stdcall;
Радиатор пока не использует.
Matches FM_SETVOLUMEBYVALUE.
процедура VolumeUpDown(Step: Integer); stdcall; Matches FM_SETVOLUMEUPDOWN.
процедура SetBass(Bass: Word); stdcall;
Радиатор пока не использует.
Matches FM_BASSTREBLE.
функция GetBass: Word; stdcall;
Радиатор пока не использует.
Matches FM_BASSTREBLE.
процедура SetTreble(Treble: Word); stdcall;
Радиатор пока не использует.
Matches FM_BASSTREBLE.
функция GetTreble: Word; stdcall;
Радиатор пока не использует.
Matches FM_BASSTREBLE.
функция IsStereo: Boolean; stdcall;
Радиатор пока не использует.
Matches FM_ISSTEREO.
процедура SetStereo (Stereo: Boolean); stdcall; Matches FM_SETSTEREO.
функция GetSignal: Word; stdcall; Matches FM_GETSIGNAL.
процедура ConfigurationDialog; stdcall; Matches FM_CONFIGURATIONDIALOG.

 

Функции, используемые для прямого доступа к порту:

Прямой доступ к порту осуществляется с помощью dlportio.dll, который устанавливается вместе с Радиатором. НЕ ИСПОЛЬЗУЙТЕ НИ ВАШИ СОБСТВЕННЫЕ ДРАЙВЕРЫ, НИ ПРЯМЫЕ АССЕМБЛЕРНЫЕ КОМАНДЫ ПОРТА - ЭТО НЕНУЖНО И ЛИШНЕЕ. Доступ к порту с помощью команд ассемблера не работает под NT.

Путь установки плагинов по умолчанию - ПУТЬ_РАДИАТОРА+ПУТЬ_ПЛАГИНОВ (например в c:\Program Files\Radiator\Plugins
Dlportio.dll всегда находится в директории ПУТЬ_РАДИАТОРА, где к нему можно обращаться.

функция GetPortByte(Address : Word) : Byte;
процедура SetPortByte(Address : Word; Data : Byte);
функция GetPortWord(Address : Word) : Word;
процедура SetPortWord(Address : Word; Data : Word);
функция GetPortDWord(Address : Word) : Longword;
процедура SetPortDWord(Address : Word; Data : Longword);
функция OpenDriver: Boolean;
процедура CloseDriver;

Постоянные "поддержки модуля" :

Постоянная Десятичное значение Описание
FM_TUNE= 1 shl 0; 1 Поддержка установки частоты.
FM_TUNEMUTED= 1 shl 1; 2 Поддержка установки частоты с отключенным звуком. Звук будет отключен, но частота будет установлена. Затем просто включите звук.
FM_MUTEUNMUTE= 1 shl 2; 4 Поддержка отключения/включения звука.
FM_GETVOLUME= 1 shl 3; 8 Поддержка функции GetVolume.
FM_SETVOLUMEBYVALUE= 1 shl 4; 16 Поддержка установки громкости "цифровой" установкой величины.
FM_SETVOLUMEUPDOWN= 1 shl 5; 32 Поддержка увеличения и уменьшения громкости дискретными шагами (так Радиатор работает сейчас).
FM_BASSTREBLE= 1 shl 6; 64 Поддержка низких и высоких частот.
FM_ISSTEREO= 1 shl 7; 128 Поддержка идентификации стерео.
FM_SETSTEREO= 1 shl 8; 256 Принудительная установка стерео или моно.
FM_GETSIGNAL= 1 shl 9; 512 Станция настроена/не настроена.
FM_AMRANGE= 1 shl 10; 1024 Поддержка AM диапазона (пока не реализована в Радиаторе).
FM_RDS= 1 shl 11; 2048 Поддержка RDS - все равно пока не реализована ;-).
FM_SCANSTATION= 1 shl 12; 4096 Поддержка сканирования - параметры:
направление (вверх по диапазону - True или вниз по диапазону - False) и текущая частота, откуда начинать искать. Возвращает новую частоту.
FM_CONFIGURATIONDIALOG= 1 shl 16; 65536 Поддержка диалога конфигурации.

В набор разработчика включен образец плагина sf16fmi вместе с исходным кодом на Delphi (Object Pascal), так что вы можете посмотреть его.

Как сделать плагин доступным для других пользователей Радиатора:

Пришлите его мне miroslav@flesko.cz и я выложу его для скачивания :-)



Посетителей с 14/02/1999
Статистика

Сделано в Республике Чехия. © 1999 - 2006 Miroslav Fleљko
Любые комментарии и советы: miroslav@flesko.cz
Главный сайт на flesko.cz / Зеркало на FortuneCity  
Последнее обновление: 26/02/02 14:48

... назад на главную страницу ...