Enable AEC and AGC

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
camera2
Leo Ma 9 years ago
parent 6c44514793
commit e75f2f1b74

@ -3,19 +3,22 @@ package net.ossrs.yasea;
import android.content.Context;
import android.media.AudioManager;
import android.media.AudioRecord;
import android.media.audiofx.AcousticEchoCanceler;
import android.media.audiofx.AutomaticGainControl;
import com.github.faucamp.simplertmp.RtmpHandler;
import com.seu.magicfilter.utils.MagicFilterType;
import java.io.File;
import java.io.IOException;
/**
* Created by Leo Ma on 2016/7/25.
*/
public class SrsPublisher {
private AudioRecord mic;
private static AudioRecord mic;
private static AcousticEchoCanceler aec;
private static AutomaticGainControl agc;
private boolean aloop = false;
private Thread aworker;
@ -67,6 +70,20 @@ public class SrsPublisher {
return;
}
if (AcousticEchoCanceler.isAvailable()) {
aec = AcousticEchoCanceler.create(mic.getAudioSessionId());
if (aec != null) {
aec.setEnabled(true);
}
}
if (AutomaticGainControl.isAvailable()) {
agc = AutomaticGainControl.create(mic.getAudioSessionId());
if (agc != null) {
agc.setEnabled(true);
}
}
if (!mCameraView.startCamera()) {
mEncoder.stop();
return;
@ -237,6 +254,18 @@ public class SrsPublisher {
mic.release();
mic = null;
}
if (aec != null) {
aec.setEnabled(false);
aec.release();
aec = null;
}
if (agc != null) {
agc.setEnabled(false);
agc.release();
agc = null;
}
}
public void switchMute() {

Loading…
Cancel
Save