Go Back   DriverHeaven.net > Forums > Hardware and Related Topics > kX Project Audio Driver Support Forum > In Russian

Notices

Reply
 
LinkBack Thread Tools Display Modes
Old Mar 12, 2007, 08:24 AM   #1 (permalink)
serg_ssa
DriverHeaven Newbie
 
Join Date: Mar 2007
Posts: 6
serg_ssa is on a distinguished road

Частичный обход MasterVolume - ЛЕГКО!!!

Доброго времени суток!
Необходима помощь в простом вопросе. Хочу сделать чтобы на моей SB Live 5.1(emu10k) на одном из выходов всегда бы было 100% громкости и регулировка MasterVolume его не затрагивала (нужно для выхода звука на телек).
Я попытался просто подправить код epilog в DSP, но при компиляции получил
error S100: unknown character '('
На форуме прочел:
Quote:
You cannot use constant values (other than 0x0) as the R register in Dane (the DSP Editor). This can only be done in C++
В С++ не силен, да и компилятора нет.
Можно ли мой вопрос решить стандартными средствами DSP не прибегая к написании на с++ собственных плагинов?

Last edited by serg_ssa; Mar 16, 2007 at 07:20 AM. Reason: сам догадайся
serg_ssa is offline   Reply With Quote
Old Mar 14, 2007, 12:49 PM   #2 (permalink)
Max M.
d/h member-shmember
 
Max M.'s Avatar
 
Join Date: Dec 2002
Location: from the edge of the deep green sea
Posts: 2,190
Max M. is on a distinguished road

>Можно ли мой вопрос решить стандартными средствами DSP

ну... как вариант:
отказаться от использования master в принципе (то есть оставить его по дефолту и забыть что такой вообще существует). а уровни крутить соответсвенно повесив перед эпилогом отдельные регуляторы в любой нужной конфигурации

Last edited by Max M.; Mar 14, 2007 at 12:55 PM.
Max M. is offline   Reply With Quote
Old Mar 14, 2007, 07:04 PM   #3 (permalink)
Crazytu
DriverHeaven Newbie
 
Join Date: Feb 2007
Location: Ukraine
Posts: 6
Crazytu is on a distinguished road

Можно. Например так - вместо стандартного Epilog`а повесь k1lt из набора PRO FX - у тебя вообще мастер секция пустая будет :-) Назначь соответствующие выхода, а входа скоммутируй как тебе надо например через MX6. Это как вариант можно и по другому исхитрится. Пробуй, в конце концов всегда можно сбросить настройки и вернутся в стандарт... :-)
Crazytu is offline   Reply With Quote
Old Mar 15, 2007, 03:13 AM   #4 (permalink)
serg_ssa
DriverHeaven Newbie
 
Join Date: Mar 2007
Posts: 6
serg_ssa is on a distinguished road

Quote:
Originally Posted by Crazytu View Post
k1lt из набора PRO FX - у тебя вообще мастер секция пустая будет :-) Назначь соответствующие выхода, а входа скоммутируй как тебе надо например через MX6
Сейчас именно так и настроено + прикрутил для регулирования громкостей свой 4-х канальный регулятор (по типу St Vol).
Проблема в том, что у меня мультимедийная клава, с которой громкость всегда все и меняли. А колонки у меня Sven (большие такие с регулятором громкости на тыльной стороне правой колоноки) и расположены сверху в труднодоступном месте.
Поэтому сейчас в игрухах громкость регулировать не получается ПРОСТО НИКАК!!! (((((
Нужно срочно что-то делать либо менять k1lt на epilog, чего не очень охота.

ЗЫ.
Достал VC6. Demo откомпилировал. Думаю ее подправить так, чтобы регулировала только выходы (для начала только Anog Rear) в соответствии с уровнем MasterL и MasterR. Те хочу чтобы основной микшер системы был завязан на Demo. Возможно ли сие?
__________________
<NULL>
serg_ssa is offline   Reply With Quote
Old Mar 15, 2007, 08:11 AM   #5 (permalink)
Max M.
d/h member-shmember
 
Max M.'s Avatar
 
Join Date: Dec 2002
Location: from the edge of the deep green sea
Posts: 2,190
Max M. is on a distinguished road

>Те хочу чтобы основной микшер системы был завязан на Demo. Возможно ли сие?

нет. тебе надо именно взять исходники эпилога и править его
(можно просто вытащить его в отдельную папку и компилировать в отделную дллку по типу демо)

>чтобы регулировала только выходы (для начала только Anog Rear) в >соответствии с уровнем MasterL и MasterR

Не, мастер уровень регулируется напрямую драйвером - тебе соответсвенно надо найти в коде эпилога о место где этот мастер уровень применяется к тому выходу (da_epilog.cpp) который ты хочешь переделать и заменить там MasterL/MasterR на 0x7FFFFFFF.
Max M. is offline   Reply With Quote
Old Mar 16, 2007, 04:10 AM   #6 (permalink)
serg_ssa
DriverHeaven Newbie
 
Join Date: Mar 2007
Posts: 6
serg_ssa is on a distinguished road

Quote:
нет. тебе надо именно взять исходники эпилога и править его
с этого и начинал, но там есть код
Code:
        #define EPILOG_SOURCE
	#include "legacy/prepare.h"
	begin_microcode("epilog");
        #include "da_epilog.cpp"
	end_microcode();

	#include "legacy/process.h"
	begin_microcode("epilog");
        #include "da_epilog.cpp"
Без этого кода компилируется без ошибок, но не пашет.
Это и понятно, ведь не обрабатывается код в da_epilog.cpp
Code:
         control_gpr(MasterL,0x7fffffff,"MasterL");
	input(out0,"out0");
	control_gpr(out0vol,0x20000000,"out0vol");
	OP(MACS,tmpl,C_0,out0,out0vol);
         OP(MACS,tmpl,C_0,tmpl,MasterL);
         OP(MACINTS,KX_OUT(0),C_0,tmpl,C_10);
OP(...) - опять же макрос, описанный гдето в prepare.h, process.h или их инклудах.
Эти макросы бы каким-то образом получить, чтобы понять каким собственно образом происходит общение плагина с драйвером для регулирования уровня системного миксера.

Можно конечно и в плагине отслеживать сообщения MM_MIXM_LINE_CHANGE / MM_MIXM_CONTROL_CHANGE и вызывать GetVolume, SetVolume и т.п. Но это уже будет совсем "НЕ АЙС"
__________________
<NULL>
serg_ssa is offline   Reply With Quote
Old Mar 16, 2007, 07:15 AM   #7 (permalink)
serg_ssa
DriverHeaven Newbie
 
Join Date: Mar 2007
Posts: 6
serg_ssa is on a distinguished road

exclamation

Свершилось!
Оказалось что прикрутить миксер системы можно ооочень просто, причем на любой плагин со слайдерами!
В консоле KX есть команда ma, которая за это и отвечает. (спасибо Russ!)
Я на свой 4-х канальный регулятор (стоит перед k1lt) повесил регулировку двух стеревыходов через системный миксер, а два остальных выхода регулируются только через плагин (что мне и было нужно).

Всем громаднейший респект и спасибо форуму за поддержку!!!
__________________
<NULL>
serg_ssa is offline   Reply With Quote
Old Mar 16, 2007, 10:09 AM   #8 (permalink)
Max M.
d/h member-shmember
 
Max M.'s Avatar
 
Join Date: Dec 2002
Location: from the edge of the deep green sea
Posts: 2,190
Max M. is on a distinguished road

>В консоле KX есть команда ma, которая за это и отвечает. (спасибо Russ!)

ага, я как-раз вчера вспомнил - не успел написать...
кстати - они, эти настройки через ma, сохраянются при перезагрузке?
Max M. is offline   Reply With Quote
Old Mar 19, 2007, 02:11 AM   #9 (permalink)
serg_ssa
DriverHeaven Newbie
 
Join Date: Mar 2007
Posts: 6
serg_ssa is on a distinguished road

Нет не сохраняются, но это просто решается запуском при автозагрузке коммандного файла вместо стандартного ярлычка kxmixer.exe
Code:
kxmixer.exe --startup --once 
kxctrl.exe -ma 0 stVol vol1 vol2 0x7FFFFFFF 
kxctrl.exe -ma 4 demo volL1 volR1 0x7FFFFFFF 
start kxmixer.exe
чтобы консоли небыло видно можно запускать его с помощью hidcon.exe


Одно неудобство при этом всеже имеется, но это относится также и ко всем другим плагинам.
Вопрос в синхронизации регистров микрокода и контролов плагина.
Напр. происходит изменения одного из регистров в микрокоде (значения уровня громкости или параметра "DOO" как в k1lt), вызванного вне диалога плагина. В этом случае соответствующие слайдеры диалога плагина свое значение не меняют. Но при этом его меняют если диалог закрыть и снова открыть.

Сейчас пытаюсь победить через событие ON_WM_TIMER
__________________
<NULL>
serg_ssa is offline   Reply With Quote
Old Mar 19, 2007, 04:10 AM   #10 (permalink)
Max M.
d/h member-shmember
 
Max M.'s Avatar
 
Join Date: Dec 2002
Location: from the edge of the deep green sea
Posts: 2,190
Max M. is on a distinguished road

>вопрос в синхронизации регистров микрокода и контролов плагина.

ну это естественно
Max M. is offline   Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump




 

 
Powered by: vBulletin
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
SporeHeaven skin by Allan "Zardon" Campbell, for Electronic Arts. vBulletin implementation by Craig '5320' Humphreys

All times are GMT -5. The time now is 03:38 PM. Copyright ©2008 DriverHeaven.net