Amateur Radio Station R9AL


О программе

LPT-light
- визуализационный плагин к WinAmp, который предназначен для управления светомузыкой. Его можно использовать на дискотеке, на вечеринках или дома, для создания световых эффектов.


Системные требования


Аппаратная часть

Как собрать аппаратную часть устройства подробно описано в статье "Восьмиканальный автомат световых эффектов на базе ПК"
рис.1 Макет аппаратной части с использованием универсальной платы коммутации.

Установка

Для установки необходимо поместить файл LeoLPT.dll в папку с плагинами WinAmp. Обычно это папка "C:\Program Files\Winamp\Plugins\". А файлы smport.sys, smport.vxd в каталог "C:\Windows\system\" для Windows 9x или в каталог "C:\Winnt\system32\" для Windows 2000. Затем нужно запустить WinAmp, нажать на него правой кнопкой мыши и в меню выбрать "Options -> Preferences..." Выбрать закладку "Visualization" и в окне "Visualization plug-ins" выбрать "Leo's LPT-lights plugin!". Дальше кнопочка "Close". При запуске плагин создаст папку "C:\lptprg\". Не удаляйте ее!!! В ней будет два файла: "leoopt.ini" - не трогать ни в коем случае и "default.prg" - об этом файле подробнее читайте ниже.

Работа с плагином

Плагин при запуске свернется в левый верхний угол экрана. Чтоб его развернуть, необходимо нажать "Разверн.", для свертывания плагина - "Свернуть".
Окно плагина всегда находится поверх остальных окон, чтобы это отменить, нужно дважды кликнуть по свободной области плагина (он изменит цвет).

Все изменения в плагине сохраняются при его выключении или по нажатию кнопки "Сохранить". Измененные настройки, можно сбросить, используя кнопку "Сбросить". Но! После нажатия кнопки "Сохранить", кнопка "Сбросить" востановит последнее сохранение.
"Памятка" нужна для того, чтобы помнить, какой канал (а их всего восемь) к какой лампочке относится. Путем выбора номера канала в поле "заменить на" и нажатия правой мышкой на один из черных (по умолчанию) квадратиков можно поменять номер канала. А путем нажатия левой кнопки мышки на один из черных (по умолчанию) квадратиков можно поменять его цвет.
Галочки "Включить" нужны для проверки лампочек. Если поставить галочку "Включить" под одной из лампочек, она будет гореть постоянно. Галочка "Инверсия" влияет на всю программу вцелом. Лампочки, которые должны гореть - погаснут, и наоборот.

В разделе "Программа" настраивается работа лампочек по программе. Во-первых, в поле "Программа" выбирается сама программа. После первого включения плагина по умолчанию это как раз файл "default.prg". Галочка "Всегда по программе" заставит лампочки срабатывать по программе даже во время проигрывания музыки (если эта галочка снята, то лампочки срабатывают по программе, только если музыка остановлена). При установке галочки "Случайно" плагин каждый раз будет выбирать из заданной программы случайную строчку. Поле "Скорость" влияет на скорость выполнения программы. Программу легко написать самому. Для этого нужно создать текстовый документ и переименовать его из "Текстовый документ.txt" (это имя по умолчанию) в "любое имя.prg". Затем нужно открыть его в блокноте (или другом текстовом редакторе). В первую строчку можно вписать значение скорости или оставить эту строчку пустой. Если вписать значение скорости, то при загрузке этой программы поле "Скорость" изменится на заданное. Если оставить эту строчку пустой, то скорость останется по умолчанию. Все последующие строчки - сама программа. Вот, например, программа "default.prg":

  100
  10000000
  01000000
  00100000
  00010000
  00001000
  00000100
  00000010
  00000001
  00000010
  00000100
  00001000
  00010000
  00100000
  01000000
  10000000
  01000000
  00100000
  00010000
  00001000
  00000100
  00000010
  00000001

В первой строчке скорость 100. Далее идет программа - любое количество строк. Но! В каждой строке ровно 8 символов (8 каналов), и они равны или 0 или 1 или 2.

0 - выключить соответствующую лампочку,
1 - включить,
2 - оставить без изменения.

Можно так же написать в строчку 8 английских букв "r" - тогда плагин случайно зажгет или погасит лампочки (r - первая буква слова random - с английского - случайно).
В разделе "Звук" настраивается работа лампочек под музыку. Музыка анализируется по частотам. В WinAmp'е эти частоты разбиваются на 576 полос (0 полоса - самые низкие частоты, 575 полоса - самые высокие). Каждую миллисекунду WinAmp высчитывает уровень каждой полосы и посылает эти рассчеты плагину. В плагине всего 8 каналов (номера их, кстати, подписаны внизу в строчке "Кан"). Соответственно эти 576 полос нужно как-то делить на 8 каналов. Для более гибкой настройки можно выбрать, какие полосы к какому каналу буду относиться. Для этого сделаны поля "С" - с какой полосы и "По" - по какую полосу.
Если значение поля "С" будет больше значения поля "По", данный канал вообще будет отключен.
Если галочка "Дин" - динамично убрана:
Плагин принимает значения полос, суммирует значения полос выбранные для данного канала, и, если эта сумма будет больше чем значение поля "Пик" - лампочка загорится!
Если стоит галочка "Д\Н" - делить\не делить, то плагин принимает значения полос, суммирует значения полос выбранные для данного канала, делит его на количество выбранных полос, и, если результат будет больше чем значение поля "Пик" - лампочка загорится!
Если стоит галочка "По 1", то плагин принимает значения полос, выбирает из выбранных полос полосу с максимальным значением, и, если это значение будет больше чем значение поля "Пик" - лампочка загорится!
Поля "Буф" и "Мин" значения не имеют. Другие сочетания галочек и значений полей приведут к случайному результату - экспериментируйте!
Если галочка "Дин" - динамично стоит:
Вступают в силу поля "Буф" и "Мин".
В этом случае значение поля "Пик" рассчитывается динамично.
Поле "Буф" - буфер - количество ячеек буфера. Плагин принимает значения полос, суммирует значения полос выбранные для данного канала, записывает их в первую ячейку буфера, все остальные ячейки сдвигаются на одну, а последняя стирается, затем плагин суммирует все ячейки буфера и делит сумму на количество ячеек (находит среднее арифметическое), предположим X. Плагин принимает значения полос, суммирует значения полос выбранные для данного канала, предположим Y. Затем сравнивает X и Y, если Y > X - лампочка загорится! Поле "Мин" - минимальное значение буфера. Если поле "Мин" установлено равным 50, то общее среднее арифметическое буфера X = X + 50.
Кстати, если динамично рассчитанное значение поля "Пик" будет больше значения выставленного в случае без галочки "Дин", поле "Пик" позеленеет :-)
Другие сочетания галочек и значений полей опять же приведут к случайному результату - экспериментируйте!

Нижнее левое поле - состояние лампочек.
Нижнее среднее поле - состояние драйвера.



Файлы:



От автора:

"Идея СДЕЛАТЬ этот плагин возникла у меня после того, как я не нашел ничего похожего в интернет. Тем более, что различные аппаратные аналоги, которые ты можешь купить в магазинах, стоят очень дорого... Я сел, попыхтел немного, и вот: на свет родился LeoLPT. Я испытывал его на школьной дискотеке. Все были более чем довольны! "



Горин Лев Борисович
pink__kitten@mail.ru





Copyright © R9AL 2004 Все права защищены

Рейтинг@Mail.ru Яндекс цитирования