package com.dowse.base.audio; import com.dowse.base.audio.AudioCapturer; /* loaded from: ds_base_2.0.9_23030112.aar:classes.jar:com/dowse/base/audio/DSAudioManager.class */ public class DSAudioManager implements AudioCapturer.OnAudioFrameCapturedListener { private static final String TAG = "DSAudioManager"; private static DSAudioManager instance; private AudioCapturer mAudioCapturer; private AudioPlayer mAudioPlayer; private DSCircleQueue mDSCircleQueue; public static DSAudioManager getInstance() { if (instance == null) { instance = new DSAudioManager(); } return instance; } private DSAudioManager() { this.mAudioCapturer = null; this.mAudioPlayer = null; this.mAudioCapturer = new AudioCapturer(); this.mAudioCapturer.setOnAudioFrameCapturedListener(this); this.mAudioPlayer = new AudioPlayer(); this.mDSCircleQueue = new DSCircleQueue(); } public boolean startCapture() { if (this.mAudioCapturer != null && !this.mAudioCapturer.isCaptureStarted()) { return this.mAudioCapturer.startCapture(); } return false; } public boolean stopCapture() { if (this.mAudioCapturer != null && this.mAudioCapturer.isCaptureStarted()) { return this.mAudioCapturer.stopCapture(); } return false; } public boolean startPlayer() { if (this.mAudioPlayer != null) { return this.mAudioPlayer.startPlayer(); } return false; } public boolean stopPlayer() { if (this.mAudioPlayer != null) { return this.mAudioPlayer.stopPlayer(); } return false; } public boolean play(byte[] pcmData) { if (this.mAudioPlayer != null) { return this.mAudioPlayer.play(pcmData, 0, pcmData.length); } return false; } @Override // com.dowse.base.audio.AudioCapturer.OnAudioFrameCapturedListener public void onAudioFrameCaptured(byte[] audioData) { if (this.mDSCircleQueue != null) { this.mDSCircleQueue.add(new DSAudioFrame(G711Alaw.encode(audioData))); } } public DSElement getAudioFrame(int readIndex) { DSElement element = null; if (this.mDSCircleQueue != null) { element = this.mDSCircleQueue.get(readIndex); } return element; } }