fix:(对讲铃声)调整路由页面昵称;调整铃声播放逻辑

This commit is contained in:
liyi 2025-06-12 16:35:55 +08:00
parent ceb889c3a3
commit c0b2114683
4 changed files with 22 additions and 10 deletions

View File

@ -516,7 +516,7 @@ abstract class Routers {
static const String doubleLockLinkPage = '/doubleLockLinkPage'; //
static const String starChartPage = '/starChartPage'; //
static const String starChartTalkView = '/starChartTalkView'; //
static const String h264WebView = '/h264WebView'; //
static const String h264View = '/h264View'; //
static const String imageTransmissionView =
'/imageTransmissionView'; //()
static const String permissionGuidancePage =
@ -1192,7 +1192,7 @@ abstract class AppRouters {
GetPage<dynamic>(
name: Routers.starChartTalkView, page: () => const TalkViewPage()),
GetPage<dynamic>(
name: Routers.h264WebView, page: () => TalkViewNativeDecodePage()),
name: Routers.h264View, page: () => TalkViewNativeDecodePage()),
//
GetPage<dynamic>(
name: Routers.imageTransmissionView,
@ -1202,6 +1202,6 @@ abstract class AppRouters {
name: Routers.permissionGuidancePage,
page: () => PermissionGuidancePage()),
//
// GetPage<dynamic>(name: Routers.h264WebView, page: () => H264WebView()), // webview播放页面
// GetPage<dynamic>(name: Routers.h264View, page: () => H264WebView()), // webview播放页面
];
}

View File

@ -16,14 +16,22 @@ class AudioPlayerManager {
// AudioPlayer
final AudioPlayer _audioPlayer = AudioPlayer();
//
bool _isPlaying = false;
//
Future<void> playRingtone() async {
if (_isPlaying) {
log(text: 'Ringtone is already playing.');
return;
}
try {
await _audioPlayer.setReleaseMode(ReleaseMode.loop);
await _audioPlayer.play(AssetSource('ring1.mp3'));
_isPlaying = true;
log(text: 'Ringtone started playing.');
} catch (e) {
_isPlaying = false;
log(text: 'Error playing ringtone: $e');
}
}
@ -31,12 +39,12 @@ class AudioPlayerManager {
//
Future<void> stopRingtone() async {
try {
// ReleaseMode
_audioPlayer.setReleaseMode(ReleaseMode.loop);
await _audioPlayer.stop();
_isPlaying = false;
log(text: 'Ringtone stopped.');
} catch (e) {
_isPlaying = false;
log(text: 'Error stopping ringtone: $e');
}
}
@ -45,8 +53,10 @@ class AudioPlayerManager {
Future<void> pauseRingtone() async {
try {
await _audioPlayer.pause();
_isPlaying = false;
log(text: 'Ringtone paused.');
} catch (e) {
_isPlaying = false;
log(text: 'Error pausing ringtone: $e');
}
}
@ -54,8 +64,10 @@ class AudioPlayerManager {
Future<void> resumeRingtone() async {
try {
await _audioPlayer.resume();
_isPlaying = true;
log(text: 'Ringtone resumed.');
} catch (e) {
_isPlaying = false;
log(text: 'Error resuming ringtone: $e');
}
}

View File

@ -41,9 +41,6 @@ class UdpTalkExpectHandler extends ScpMessageBaseHandle
final TalkExpectResp talkExpectResp = scpMessage.Payload;
if (talkExpectResp != null) {
//
//test:使
playRingtone();
// print('收到预期音视频数据回复,scpMessage:$scpMessage');
//
startChartManage.stopTalkExpectMessageTimer();
@ -66,6 +63,8 @@ class UdpTalkExpectHandler extends ScpMessageBaseHandle
talkStatus.setAnsweredSuccessfully();
// ping
startChartManage.startTalkPingMessageTimer();
} else if (talkStatus.status != TalkStatus.answeredSuccessfully) {
playRingtone();
}
AppLog.log(
'视频画面需要旋转:${talkExpectResp.rotate},画面宽高:${talkExpectResp.width}-${talkExpectResp.height}');
@ -97,6 +96,7 @@ class UdpTalkExpectHandler extends ScpMessageBaseHandle
talkExpectResp.width == 640 &&
talkExpectResp.height == 480)) {
Get.toNamed(Routers.imageTransmissionView);
return;
}
if (startChartManage
@ -104,7 +104,7 @@ class UdpTalkExpectHandler extends ScpMessageBaseHandle
.videoType
.contains(VideoTypeE.H264)) {
Get.toNamed(
Routers.h264WebView,
Routers.h264View,
);
} else {
Get.toNamed(

View File

@ -430,7 +430,7 @@ class StartChartManage {
// 使H264MJPEG
if (isH264) {
Get.toNamed(
Routers.h264WebView,
Routers.h264View,
);
} else if (isMJpeg) {
Get.toNamed(