aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorhenrika <henrika@webrtc.org>2019-09-06 13:45:11 +0200
committerCommit Bot <commit-bot@chromium.org>2019-09-09 08:10:41 +0000
commit4d6b2691bd5d3b9bcdf3c11ac9cf5544e65f9d25 (patch)
tree164104875c200bc857126fdc555562ef935879e4 /examples
parent81a08a7feb7c8752ac95e1a19e6766019127d92a (diff)
downloadwebrtc-4d6b2691bd5d3b9bcdf3c11ac9cf5544e65f9d25.tar.gz
Adds setAudio[Track/Record]StateCallback interfaces to the Java ADM
Bug: webrtc:10950 Change-Id: Ifa7bd7eb003bf97812ce0dfa5a0192ee8955419c Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/151648 Reviewed-by: Alex Glaznev <glaznev@webrtc.org> Commit-Queue: Henrik Andreassson <henrika@webrtc.org> Cr-Commit-Position: refs/heads/master@{#29107}
Diffstat (limited to 'examples')
-rw-r--r--examples/androidapp/src/org/appspot/apprtc/PeerConnectionClient.java30
1 files changed, 30 insertions, 0 deletions
diff --git a/examples/androidapp/src/org/appspot/apprtc/PeerConnectionClient.java b/examples/androidapp/src/org/appspot/apprtc/PeerConnectionClient.java
index 1602c9b27b..593a8b3b9e 100644
--- a/examples/androidapp/src/org/appspot/apprtc/PeerConnectionClient.java
+++ b/examples/androidapp/src/org/appspot/apprtc/PeerConnectionClient.java
@@ -75,7 +75,9 @@ import org.webrtc.VideoTrack;
import org.webrtc.audio.AudioDeviceModule;
import org.webrtc.audio.JavaAudioDeviceModule;
import org.webrtc.audio.JavaAudioDeviceModule.AudioRecordErrorCallback;
+import org.webrtc.audio.JavaAudioDeviceModule.AudioRecordStateCallback;
import org.webrtc.audio.JavaAudioDeviceModule.AudioTrackErrorCallback;
+import org.webrtc.audio.JavaAudioDeviceModule.AudioTrackStateCallback;
/**
* Peer connection client implementation.
@@ -501,12 +503,40 @@ public class PeerConnectionClient {
}
};
+ // Set audio record state callbacks.
+ AudioRecordStateCallback audioRecordStateCallback = new AudioRecordStateCallback() {
+ @Override
+ public void onWebRtcAudioRecordStart() {
+ Log.i(TAG, "Audio recording starts");
+ }
+
+ @Override
+ public void onWebRtcAudioRecordStop() {
+ Log.i(TAG, "Audio recording stops");
+ }
+ };
+
+ // Set audio track state callbacks.
+ AudioTrackStateCallback audioTrackStateCallback = new AudioTrackStateCallback() {
+ @Override
+ public void onWebRtcAudioTrackStart() {
+ Log.i(TAG, "Audio playout starts");
+ }
+
+ @Override
+ public void onWebRtcAudioTrackStop() {
+ Log.i(TAG, "Audio playout stops");
+ }
+ };
+
return JavaAudioDeviceModule.builder(appContext)
.setSamplesReadyCallback(saveRecordedAudioToFile)
.setUseHardwareAcousticEchoCanceler(!peerConnectionParameters.disableBuiltInAEC)
.setUseHardwareNoiseSuppressor(!peerConnectionParameters.disableBuiltInNS)
.setAudioRecordErrorCallback(audioRecordErrorCallback)
.setAudioTrackErrorCallback(audioTrackErrorCallback)
+ .setAudioRecordStateCallback(audioRecordStateCallback)
+ .setAudioTrackStateCallback(audioTrackStateCallback)
.createAudioDeviceModule();
}