关于java声音处理与播放

本文介绍了一种使用Java实现音频播放及音量控制的方法。利用AudioFormat和DataLine API设置播放参数,并通过FloatControl调整Master Gain来改变音量大小。

       最近公司要求用java做个视频播放与声音控制功能, 视频是从服务器取得(服务器是用c++开发的)这里涉及到socket编程就不说了(不属于本章谈论范围),和多线程技术。刚开始在google搜的时候,这方便不多,就java 声音播放,和java 声音处理,对于视频声音的大小控制却不多。再这里简单写下相关代码。

写道
AudioFormat linearFormat = new AudioFormat(AudioFormat.Encoding.PCM_SIGNED,48000,16,2,4,48000,false);
DataLine.Info info = new DataLine.Info(SourceDataLine.class, linearFormat);
// 指定されたデータライン情報に一致するラインを取得します
line = (SourceDataLine)AudioSystem.getLine(info);
// 指定されたオーディオ形式でラインを開きます
line.open(linearFormat);
//这里用的MASTER_GAIN,当然你也可以用VOLUME根据设备支持而来,一般用//MASTER_GAIN经过多次调试得出结果VOLUME某些设备部支持
FloatControl control = (FloatControl)line.getControl(FloatControl.Type.MASTER_GAIN);
// ラインでのデータ入出力を可能にします
line.start();

     对于声音的大小我们可以通过    control.getMaximum(); control.getMinimum() 这样就可以去我们的滑动条进行关联了,最后通过setValue(),和getValue()进行对声音值的设定。

    如果有什么不对请批评指教,

                                        我的msn:flyingandrunning@hotmail.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值