音频数据 解析播放

This commit is contained in:
Daisy 2023-12-19 18:41:51 +08:00
parent a461ae99df
commit 158c37a69e

View File

@ -26,7 +26,7 @@ class CallTalk {
IframeInfo? iframe; //
var growableList;
LockMonitoringPage callOut = const LockMonitoringPage();
late FlutterSoundPlayer _player;
FlutterSoundPlayer _audioPlayer = FlutterSoundPlayer();
CallTalk._init() {
iframe = IframeInfo();
@ -53,13 +53,12 @@ class CallTalk {
//
if (bb[61] == 1) {
//
_player = FlutterSoundPlayer();
_initPlayer();
//
Uint8List g711Data = G711Decoder().decodeG711uLaw(bb);
_initializeAudioPlayer();
await _playAudio(g711Data);
// 711Uint8List
Uint8List rawData = G711Decoder().decodeG711uLaw(bb);
_playRawData(rawData);
}
//
else {
@ -190,14 +189,18 @@ class CallTalk {
}
}
Future<void> _initPlayer() async {
await _player.openPlayer();
Future<void> _initializeAudioPlayer() async {
await _audioPlayer.openPlayer();
}
Future<void> _playAudio(Uint8List audioData) async {
await _player.startPlayer(
fromDataBuffer: audioData,
codec: Codec.pcm16WAV,
Future<void> _playRawData(Uint8List rawData) async {
await _audioPlayer.startPlayer(
fromDataBuffer: rawData,
codec: Codec.pcm16,
whenFinished: () {
//
print("Playback finished");
},
);
}
}