diff options
author | henrika <henrika@webrtc.org> | 2019-09-06 13:45:11 +0200 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2019-09-09 08:10:41 +0000 |
commit | 4d6b2691bd5d3b9bcdf3c11ac9cf5544e65f9d25 (patch) | |
tree | 164104875c200bc857126fdc555562ef935879e4 /examples | |
parent | 81a08a7feb7c8752ac95e1a19e6766019127d92a (diff) | |
download | webrtc-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.java | 30 |
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(); } |