Inno setup 如何在Inno设置中使用低音库静音音频(更改音量)

Inno setup 如何在Inno设置中使用低音库静音音频(更改音量),inno-setup,Inno Setup,此代码来自“暂停”,如何将其更改为“静音” 我应该换什么 const 低音采样环路=4; 低音\激活\停止=0; 低音_激活_播放=1; 低音_激活_暂停=2; 低音激活暂停=3; BASS_UNICODE=8000000美元; 低音配置语音流=5; 常数 #ifndef UNICODE EncodingFlag=0; #否则 EncodingFlag=BASS_UNICODE; #恩迪夫 类型 HSTREAM=DWORD; 函数BASS_Init(设备:LongInt;频率,标志:DWORD;

此代码来自“暂停”,如何将其更改为“静音”

我应该换什么

const
低音采样环路=4;
低音\激活\停止=0;
低音_激活_播放=1;
低音_激活_暂停=2;
低音激活暂停=3;
BASS_UNICODE=8000000美元;
低音配置语音流=5;
常数
#ifndef UNICODE
EncodingFlag=0;
#否则
EncodingFlag=BASS_UNICODE;
#恩迪夫
类型
HSTREAM=DWORD;
函数BASS_Init(设备:LongInt;频率,标志:DWORD;
win:HWND;clsid:Cardinal):BOOL;
外部低音_Init@files:bass.dll stdcall';
函数BASS_StreamCreateFile(mem:BOOL;f:string;offset1:DWORD;
偏移量2:DWORD;长度1:DWORD;长度2:DWORD;标志:DWORD):hs流;
外部低音_StreamCreateFile@files:bass.dll stdcall';
功能启动:BOOL;
外部低音_Start@files:bass.dll stdcall';
功能低音暂停:BOOL;
外部低音_Pause@files:bass.dll stdcall';
功能BASS_ChannelPlay(手柄:DWORD;重启:BOOL):BOOL;
外部低音_ChannelPlay@files:bass.dll stdcall';
函数BASS_SetConfig(选项:DWORD;值:DWORD):BOOL;
外部低音_SetConfig@files:bass.dll stdcall';
功能BASS_ChannelIsActive(句柄:DWORD):DWORD;
外部低音_ChannelIsActive@files:bass.dll stdcall';
无低音功能:BOOL;
外部低音_Free@files:bass.dll stdcall';
变量
声流:HSTREAM;
SoundCtrlButton:TNewButton;
程序SoundCtrlButtonClick(发送方:ToObject);
开始
机箱低音_通道激活(声音流)
低音_激活_播放:
开始
如果你停下来
SoundCtrlButton.标题:=
ExpandConstant({cm:SoundCtrlButtonCaptionSoundOn}');
结束;
低音\激活\暂停:
开始
如果你开始的话
SoundCtrlButton.标题:=
ExpandConstant(“{cm:SoundCtrlButtonCaptionSoundOff}”);
结束;
结束;
结束;
程序初始化;
开始
提取临时文件('tune.mp3');
如果BASS_Init(-144100,0,0,0)那么
开始
SoundStream:=BASS_StreamCreateFile(假,
ExpandConstant({tmp}\tune.mp3'),0,0,0,0,
编码标志或低音(采样循环);
BASS_SetConfig(BASS_CONFIG_GVOL_STREAM,2500);
低音/通道播放(声音流,假);
SoundCtrlButton:=TNewButton.Create(WizardForm);
SoundCtrlButton.Parent:=WizardForm;
SoundCtrlButton.Left:=8;
SoundCtrlButton.Top:=WizardForm.ClientHeight-
SoundCtrlButton.高度-8;
SoundCtrlButton.宽度:=40;
SoundCtrlButton.标题:=
ExpandConstant(“{cm:SoundCtrlButtonCaptionSoundOff}”);
SoundCtrlButton.OnClick:=@SoundCtrlButtonClick;
结束;
结束;
程序去初始化设置;
开始
自由低音;
结束;

要控制音量,请使用with
选项
设置为:

  • 对于“流”,例如使用
  • 用于“音乐”,例如使用创建
SoundCtrlButtonClick
替代了问题中相同命名函数的暂停/恢复实现

var
静音:布尔;
程序SoundCtrlButtonClick(发送方:ToObject);
开始
如果没有静音,那么
开始
如果BASS_SetConfig(BASS_CONFIG_GVOL_STREAM,0),则
开始
SoundCtrlButton.Caption:=“取消静音”;
静音:=真;
结束;
结束
其他的
开始
如果BASS_SetConfig(BASS_CONFIG_GVOL_STREAM,2500),则
开始
SoundCtrlButton.Caption:=“静音”;
静音:=假;
结束;
结束;
结束;

我不明白这个问题。是否只想将“暂停”文本更改为“静音”文本?或者您真的想实现“静音”功能,例如将卷设置为0%,而不是实际暂停媒体?但这对纯音频媒体(.mp3)没有意义,对吗不管怎样,你的代码对我有用向我们展示您的
[文件]
部分。您使用了什么
bass.dll
功能?
可以将音量设置为0%
“静音”功能吗?我使用
bass.dll
查看我的答案。但首先,您需要使您已经拥有的代码正常工作。你有一些问题。但这是另一个话题。这对我来说很有效。但我仍然不明白,“静音”纯音频媒体有什么意义。我从未见过。BB的设置调是暂停[按钮
音乐打开/音乐关闭
]——而RLD的停止[按钮
播放/静音
]。我要我的静音。抱歉要求他,他明白了D谢谢!