Вверх ↑
Ответов: 273
Рейтинг: 29
#1: 2012-08-30 01:20:04 ЛС | профиль | цитата
Доступа к SVN нет, да и не работал ни разу с такими хранилищами, да и нужны ли кому мои исправления?
Смысл исправлений:
BASS_Init принимал номер инициализируемого девайса только из свойства, теперь принимает из потока, со входа данных и из свойства
BASS_Device добавлен запрос количества и названий звуковух. Я раньше уже выкладывал такой компонент на mmsystem, теперь переписал под API BASS.dll
архив(2кб)
Прошу повнимательней присмотреться к ini файлу - я исправил типы данных в соответствии с ожидаемыми потоками, но хз, точно ли это, инфу по крупицам доставал, да и Dilma расставил типы почему-то совсем по другому, так что может у меня и не совсем правильно, хз.

Пример использования этих компонентов:
Облегченный вариант Rain.zip(12кб)
Полный Rain.zip(14.6Mb)

Если кратко:
Читаем ini, инициализируем устройство, номер которого нашли, играем.
Одновременно сканируем список устройств, и заносим их в меню.
При клике по устройству, сохраняем его номер в ini и закрываемся. При следующем старте работаем уже на другом устройстве.

Костыль конечно, но сменить устройство налету никак не получалось, даже после чтения мана к bass и шаманством с разными неочевидными вещами.

Также, особо внимательные найдут там еще один костыль, призванный обойти непонятную фишку bass_volume - оно регулирует системную громкость вместо громкости потока библиотеки. Решение простое - домножаем громкость каждого канала на громкость канала master, и выкидываем bass_volume.

Что касается качества схемы - знаю, но программа пилилась несколько лет назад и по быстрому, сейчас только исправил master-канал и переключение звуковух.
карма: 0

0