Ściszanie dźwięku

0

Witam wszystkich!
Mam pewnien problem. Chciałabym, aby po kliknięciu na jeden guzik głośność dźwięków w komputerze spadała do połowy a czułość mikrofonu wzrastała. Regulowanie tego za pomocą tej ikonki głośniczka, koło zegarka w Windowsie mi nie odpowiada. Chcę to robić za jednym kliknięciem.
Znalazłam na stronie coś takiego

WaveOutSetVolume(0, $FFFFFFF)

ale nie wiem co dalej. Może mi ktoś napisać to co powinno być w OnClick Buttona?
Proszę o pomoc

0

WaveOutSetVolume(0, $FFFFFFF)
$FFFFFFF to masz zapis hexadecymany dźwięku czyli musisz dać połowe tego co jest.... jaK? zapewne WaveOutGetVolume(...) ale jak dokładnie to Ci nie powiem bo nie mam teraz Delphi

0

Pisalem juz posty ale nikt mi nie pisal :( wiesz moze jak regylowac glosnosc Line-In ale na nagrywaniu bo do karty TV mi potrzebne takie soc ;)

0

LukaStrz Ja wiem, że jest to zapis HEX. On działa. Ale nie wiem jak mam przerobić to na głośność na poziomie poiwdzmy 20% i w tym samym czasie podgłośnić mikrofon na maxa :(

0

//wycofuje sie z tego pomyslu 0,2* - nie pomylslalem ;)

ze mam dobry dzien to:
adjust the volume of audio in devices:
http://www.swissdelphicenter.ch/torry/showcode.php?id=690

set the volume for the microphone/ mute it
http://www.swissdelphicenter.ch/torry/showcode.php?id=1204

ewentualnie jeszcze tu:
http://www.greatis.com/delphicb/tips/lib/others-setsoundvolume.html
i tu
http://www.greatis.com/delphicb/tips/lib/others-getsoundvolume.html

0

procenty robisz tak: $FFFFFF*0.2 - to da na 20%

jasne, potem jeden kanał będzie ledwie słychać, a drugi będzie walił na full ;] sprawdź sobie, co szesnastkowo wychodzi dla np.: 30% :>

volume := new_volume or new_volume shl 16;

new_volume to word, volume to coś czterobajtowego (np.: integer).

0

Hej ludzie! Przecież to łatwizna! Ja mam w Seba Media Pack ( www.seba.media.prv.pl ) głośność w ten sposób:

WaveOutSetVolume(0, $88888888); jest na połowę

Zróbmy tak. Ustalmy głośność od 1 do 16:

1 - WaveOutSetVolume(0, $00000000); {nic nie słychać}
2 - WaveOutSetVolume(0, $11111111); {coś jest}
3 - WaveOutSetVolume(0, $22222222); {jest więcej}
4 - WaveOutSetVolume(0, $33333333); 
5 - WaveOutSetVolume(0, $44444444); 
6 - WaveOutSetVolume(0, $55555555); 
7 - WaveOutSetVolume(0, $66666666); 
8 - WaveOutSetVolume(0, $77777777); {pół głośności}
9 - WaveOutSetVolume(0, $88888888); 
10 - WaveOutSetVolume(0, $99999999); 
11 - WaveOutSetVolume(0, $AAAAAAAA); 
12 - WaveOutSetVolume(0, $BBBBBBBB); 
13 - WaveOutSetVolume(0, $CCCCCCCC); 
14 - WaveOutSetVolume(0, $DDDDDDDD); 
15 - WaveOutSetVolume(0, $EEEEEEEE); 
16 - WaveOutSetVolume(0, $FFFFFFFF); {jest na maxa}

Parę słów wyjaśnień. Nie może być procent przez * 0.2 ponieważ pierwsze cztery cyfry są na kanał lewy, drugie na prawy, jak już to tak: $FFFF * 0.2 a potem FFFF * 0.2 ale jak się to da + to doda a nie połączy, więc mój sposób jest lepszy... :)
A co do mikrofonka no to nie wiem....

1 użytkowników online, w tym zalogowanych: 0, gości: 1