如何控制麦克风的音量??大家帮帮我,不然没饭吃了??(89分)

  • 主题发起人 主题发起人 zhucp
  • 开始时间 开始时间
Z

zhucp

Unregistered / Unconfirmed
GUEST, unregistred user!
如何控制麦克风的音量??大家帮帮我,不然没饭吃了??
 
麦克风也也接在声卡的输出口吗?这方面的资料网上很多
<url>http://www.ccw.com.cn/search/theme/ThemeFile.asp?ThemeID=323</url>
 
如何控制麦克风的音量??大家帮帮我,不然没饭吃了

有没有控制麦克风的音量的程序delphi ,,我找了很多没有啊,都是控制扬声器音量的,
我知道在Delphi中有个MMSystem单元文件中可以调用,但我不知道使用哪 些,如何用。
 
好象不能使用应用层API,而要使用系统层API,如:GetDevCaps 之类。
 
打开MMSYSTEM.sys找找看看,里面全是windows的媒体函数
 
//摘自superggh的文章,懒得写了

三个TrackBar的属性设置:Max:=255;Frequency:=16;

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComCtrls, mmsystem;

type
TForm1 = class(TForm)
TrackBar1: TTrackBar;
TrackBar2: TTrackBar;
TrackBar3: TTrackBar;
procedure TrackBar1Change(Sender: TObject);
procedure TrackBar2Change(Sender: TObject);
procedure TrackBar3Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;


var
Form1: TForm1;

implementation

{$R *.DFM}

//音量控制
procedure TForm1.TrackBar1Change(Sender: TObject);
var
t,v:Longint;
begin

// if a=0 then
Exit;
t:=TrackBar1.Position;
v:=(t shl 8)or(t shl 24);
waveOutSetVolume(0,v);
end;


//左声道控制
procedure TForm1.TrackBar2Change(Sender: TObject);
var
t,v:Longint;
begin

t:=TrackBar2.Position;
waveOutGetVolume(0,@v);
v:=v and $ffff0000 or (t shl 8);
waveOutSetVolume(0,v);
end;


//右声道控制
procedure TForm1.TrackBar3Change(Sender: TObject);
var
t,v:Longint;
begin

t:=TrackBar3.Position;
waveOutGetVolume(0,@v);
v:=v and $0000ffff or (t shl 24);
waveOutSetVolume(0,v);
end;


//获得当前音量值
procedure TForm1.FormCreate(Sender: TObject);
var
v:longint;
begin

waveOutGetVolume(0,@v);
TrackBar2.Position:=hi(v);
TrackBar3.Position:=hi(v shr 16);
if hi(v)>hi(v shr 16) then

TrackBar1.Position:=hi(v)
else

TrackBar1.Position:=hi(v shr 16);
end;


end.



函数说明:

waveOutSetVolume
第一个参数是波形文件输出设备标识符;
第二个参娄是音量大小。这是一个32位的整数,低16位表示左声道的音量,
高16位表示右声道的音量。

waveOutGetVolume
第一个参数是波形文件输出设备标识符;
第二个参数是一个32位整数的指针。
 
ding
wave out ?????????????
如何控制麦克风的音量
 
在WINDOWS里有这样的设置功能
所以也是可以的 了
至于怎么用我就不知道了,我路过,帮你顶吧
 
没饭吃我最同情了。
你到我的FTP上去下载一个控件。已经封装了很多对音频设备的操作。
ftp://user:fhert@come.meibu.com
在程序资料,组件中,AMixer.rar
用它来控制音量,几行代码就搞定了。
 
http://www.swaysoft.com/developer/srcdetail.asp?flag=2&amp;id=159
音量控制程序SmartVolume
看看这个安不安你用吧
 
后退
顶部