我本以为这会是一件容易做到的事情,但没有任何谷歌搜索找到任何解决方案。
我为客户端编写了一个全屏运行的应用程序,允许用户翻阅教育书籍,以帮助教孩子们阅读。到目前为止,一切都很好。所显示材料中的一些短语会被读回给用户,并且到目前为止一切顺利。通常,这些声音是在系统音量下读取的。 (即,以任何音量播放任何其他系统声音。)
然而,客户现在希望用户能够调节程序中的音量。我有 UI 和处理端,但我很难以有意义的方式调整正在播放的剪辑的音量。现在我有一个时髦的设置,其中包括读取剪辑的原始增益,然后针对每个剪辑向上或向下调整增益。虽然这确实可以调节音量,但它似乎并没有相对于系统音量进行调节——所有声音都比系统音量安静得多。
所以,我的问题确实是:您建议如何控制程序中的音量?我所有的研究都没有发现任何有意义的结果,这对我来说这意味着这有点困难甚至不可能,但这似乎不对。
哦,详细信息:我正在将 WAV 作为 AudioInputStreams 读取,并将它们作为 java.sound.sampled.Clip 播放。我使用 FloatControl.Type.MASTER_GAIN 控制增益。 (不支持 FloatControl.Type.VOLUME。)我一直在使用 Java 1.4。
您还可以查看是否有旧版本的 Java Media Framework (JMF) 支持 Java 1.4...它可能为您提供更丰富的音频处理环境。
除此之外,您说您陷入了 1.4...您可能会看到是否有任何方法可以升级到 Java 5 或 6,尽管您可能想先在本地计算机上测试其中任何一个,看看它们是否有效实际上可以帮助任何人。
我想最后一个建议是找到一些 Java 游戏开发网站并在那里发布您的问题;我认为他们会想出解决办法......尽管你也可以在那里得到很多“升级你的jvm”回复。 :-)
祝你好运。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)