Fixed sending of player session id and reinstalled player aec
This commit is contained in:
@@ -246,7 +246,7 @@ static void event_handler(enum ua_event ev, struct bevent *event, void *arg)
|
|||||||
len = re_snprintf(event_buf, sizeof event_buf, "sndfile dump,%r", &data);
|
len = re_snprintf(event_buf, sizeof event_buf, "sndfile dump,%r", &data);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (!pl_strcmp(&module_event, "player sessionid")) {
|
if (!pl_strcmp(&module_event, "player: sessionid")) {
|
||||||
len = re_snprintf(event_buf, sizeof event_buf, "player sessionid,%r", &data);
|
len = re_snprintf(event_buf, sizeof event_buf, "player sessionid,%r", &data);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -628,6 +628,12 @@ class BaresipService: Service() {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (ev[0] == "player sessionid") {
|
||||||
|
playerSessionId = ev[1].toInt()
|
||||||
|
Log.d(TAG, "got player sessionid $playerSessionId")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
if (ev[0] == "recorder sessionid") {
|
if (ev[0] == "recorder sessionid") {
|
||||||
recorderSessionId = ev[1].toInt()
|
recorderSessionId = ev[1].toInt()
|
||||||
Log.d(TAG, "got recorder sessionid $recorderSessionId")
|
Log.d(TAG, "got recorder sessionid $recorderSessionId")
|
||||||
@@ -829,16 +835,38 @@ class BaresipService: Service() {
|
|||||||
if (am.mode != MODE_IN_COMMUNICATION)
|
if (am.mode != MODE_IN_COMMUNICATION)
|
||||||
am.mode = MODE_IN_COMMUNICATION
|
am.mode = MODE_IN_COMMUNICATION
|
||||||
call!!.status = "connected"
|
call!!.status = "connected"
|
||||||
if (recorderSessionId != 0) {
|
if (playerSessionId != 0) {
|
||||||
if (aecAvailable) {
|
if (aecAvailable) {
|
||||||
val aec = AcousticEchoCanceler.create(recorderSessionId)
|
val aec = AcousticEchoCanceler.create(playerSessionId)
|
||||||
if (aec != null)
|
if (aec != null) {
|
||||||
if (!aec.getEnabled()) {
|
if (!aec.getEnabled()) {
|
||||||
aec.setEnabled(true)
|
aec.setEnabled(true)
|
||||||
if (aec.getEnabled())
|
if (aec.getEnabled())
|
||||||
Log.d(TAG, "aec is enabled")
|
Log.d(TAG, "aec is enabled")
|
||||||
|
else
|
||||||
|
Log.w(TAG, "Failed to enable AEC")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
Log.w(TAG, "Failed to create AEC")
|
||||||
|
}
|
||||||
|
playerSessionId = 0
|
||||||
|
}
|
||||||
|
if (recorderSessionId != 0) {
|
||||||
|
if (aecAvailable) {
|
||||||
|
val aec = AcousticEchoCanceler.create(recorderSessionId)
|
||||||
|
if (aec != null) {
|
||||||
|
if (!aec.getEnabled()) {
|
||||||
|
aec.setEnabled(true)
|
||||||
|
if (aec.getEnabled())
|
||||||
|
Log.d(TAG, "aec is enabled")
|
||||||
|
else
|
||||||
|
Log.w(TAG, "Failed to enable AEC")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
Log.w(TAG, "Failed to create AEC")
|
||||||
|
}
|
||||||
if (agcAvailable) {
|
if (agcAvailable) {
|
||||||
val agc = AutomaticGainControl.create(recorderSessionId)
|
val agc = AutomaticGainControl.create(recorderSessionId)
|
||||||
if (agc != null)
|
if (agc != null)
|
||||||
@@ -1604,6 +1632,7 @@ class BaresipService: Service() {
|
|||||||
var agcAvailable = AutomaticGainControl.isAvailable()
|
var agcAvailable = AutomaticGainControl.isAvailable()
|
||||||
private val nsAvailable = NoiseSuppressor.isAvailable()
|
private val nsAvailable = NoiseSuppressor.isAvailable()
|
||||||
private var btAdapter: BluetoothAdapter? = null
|
private var btAdapter: BluetoothAdapter? = null
|
||||||
|
private var playerSessionId = 0
|
||||||
private var recorderSessionId = 0
|
private var recorderSessionId = 0
|
||||||
|
|
||||||
fun requestAudioFocus(ctx: Context): Boolean {
|
fun requestAudioFocus(ctx: Context): Boolean {
|
||||||
|
|||||||
Reference in New Issue
Block a user