我编写了一个用于控制音量的实用程序类,它的用法如下:
Audio.setMasterOutputVolume(0.5f);
Run Code Online (Sandbox Code Playgroud)
源代码在这里:https://github.com/Kunagi/ilarkesto/blob/master/src/main/java/ilarkesto/media/Audio.java
您可以复制和使用代码.
我知道这个问题已经很老了,但也许我的回答对其他人有帮助。我找到了一个有用的工具(下载链接位于页面底部)。使用此工具,您可以调整系统音量并执行许多其他操作(例如打开 CD 驱动器)。只需下载它并将 nircmd.exe 放在硬盘上的某个位置即可。然后编写以下内容来调整音量:
Runtime rt = Runtime.getRuntime();
Process pr = rt.exec(pathToNircmdexe + " setsysvolume 32767.5");
Run Code Online (Sandbox Code Playgroud)
这会将您的系统音量设置为 50。要设置音量,您需要选择 0 到 65535 之间的数字。如果您想使用 0 到 100 之间的数字,请使用以下方法。它将转换您想要的音量(通过使用简单的数学:D)
public void setSystemVolume(int volume)
{
if(volume < 0 || volume > 100)
{
throw new RuntimeException("Error: " + volume + " is not a valid number. Choose a number between 0 and 100");
}
else
{
double endVolume = 655.35 * volume;
Runtime rt = Runtime.getRuntime();
Process pr;
try
{
pr = rt.exec(nircmdFilePath + " setsysvolume " + endVolume);
pr = rt.exec(nircmdFilePath + " mutesysvolume 0");
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
Run Code Online (Sandbox Code Playgroud)
注意:遗憾的是这仅适用于 Windows,
“因为 Java 是跨平台的,所以它无法执行特定于平台的操作,例如更改音量或任何您想要控制操作系统的操作。您需要使用操作系统独特的 API 层来执行此操作。” 来源
| 归档时间: |
|
| 查看次数: |
12798 次 |
| 最近记录: |