如何使用JAVA中的JMF控制MP3音频量



我正在使用JMF播放mp3音频文件。它正在播放,但我不知道如何控制其卷?我正在使用

Player audioPlayer = Manager.createRealizedPlayer(url);
audioPlayer.start();

请参阅 Player.getGainControl()

获取控制此Playe R的音频增益的对象。如果此播放器没有GainControl,则getGainControl返回null。例如,如果Player不播放音频数据,则getGainControl可能会返回null

GainControl上:

GainControl是操纵音频信号增益的接口。

获得和增益度量

增益是应用于音频信号的乘法值,该值修改了信号的振幅。此接口允许在分贝中指定增益或使用0.0和0.0和0.0之间的浮点值指定的增益1.0。

我以这种方式在Android上做到了。

audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
        final int maxVolume = audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
        int curVolume = audioManager.getStreamVolume(AudioManager.STREAM_MUSIC);

        SeekBar volumecontrol = (SeekBar) findViewById(R.id.seekBar);
        volumecontrol.setMax(maxVolume);
        volumecontrol.setProgress(curVolume);
        volumecontrol.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
            @Override
            public void onProgressChanged(SeekBar seekBar, int progress, boolean fromuser) {
                audioManager.setStreamVolume(AudioManager.STREAM_MUSIC,progress, 0);
            }
            @Override
            public void onStartTrackingTouch(SeekBar seekBar) {
            }
            @Override
            public void onStopTrackingTouch(SeekBar seekBar) {
            }
        });

相关内容

  • 没有找到相关文章

最新更新