全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2155
推到 Plurk!
推到 Facebook!

我該如何控制 "麥克風" 的音量???

答題得分者是:hagar
AsureNick
一般會員


發表:10
回覆:10
積分:4
註冊:2007-03-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-04-03 14:48:23 IP:59.127.xxx.xxx 訂閱
各位前輩~

我請問一個問題...

當我想控制 "麥克風" 的音量,那我又該如何控制...

不是喇叭音量喔!!請各位前輩幫忙吧 ~~感謝~
編輯記錄
dllee 重新編輯於 2007-04-21 19:15:37, 註解 修改文章分類由 無 -> 問題, 提問時, 請記得選擇 [問題] 分類, 才能把分數給辛苦答題的會員, 謝謝您的配合‧‧
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-04-04 08:32:46 IP:59.124.xxx.xxx 未訂閱
參考:
http://groups.google.com.tw/group/borland.public.delphi.winapi/browse_thread/thread/c54e9f7ecc8e2bb0/85f9e081334aec93?lnk=st&q=microphone volume + delphi&rnum=3&hl=zh-TW#85f9e081334aec93

function GetWaveVolume: DWord;
var
Woc : TWAVEOUTCAPS;
Volume : DWord;
begin
if WaveOutGetDevCaps(WAVE_MAPPER, @Woc, sizeof(Woc)) =
MMSYSERR_NOERROR then
if Woc.dwSupport and WAVECAPS_VOLUME = WAVECAPS_VOLUME then
begin
WaveOutGetVolume(WAVE_MAPPER, @Volume);
Result := Volume;
end;
end;

procedure SetWaveVolume(const AVolume: DWord);
var
Woc : TWAVEOUTCAPS;
begin
if WaveOutGetDevCaps(WAVE_MAPPER, @Woc, sizeof(Woc)) =
MMSYSERR_NOERROR then
if Woc.dwSupport and WAVECAPS_VOLUME = WAVECAPS_VOLUME then
WaveOutSetVolume(WAVE_MAPPER, AVolume);
end;

procedure TForm1.Button2Click(Sender: TObject);
var
LeftVolume: Word;
RightVolume: Word;
begin
LeftVolume := StrToInt(Edit1.Text);
RightVolume := StrToInt(Edit2.Text);
SetWaveVolume(MakeLong(LeftVolume, RightVolume));
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
Caption := IntToStr(GetWaveVolume);
end;

AsureNick
一般會員


發表:10
回覆:10
積分:4
註冊:2007-03-07

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-04-10 13:27:29 IP:59.127.xxx.xxx 訂閱
版主 謝謝你的回覆:
我將你列表的程式執行一次....他是控制麥克風的嗎?
我輸入值...沒做用且取得的值也大的恐怖...
譬如:

edti1.text := 100 edit2.text := 100; 按下Button2無反應

當按下Button3則秀出6553700值,這代表什麼呢?

可否再請版主指點迷津?感激...

系統時間:2017-10-24 8:36:06
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!