Add multi-resolution playback support

This commit is contained in:
2026-04-15 11:42:13 +08:00
parent 146f05388e
commit 6eb0baf16e
7 changed files with 337 additions and 48 deletions

View File

@@ -62,12 +62,26 @@ class SettingsProvider with ChangeNotifier {
return "rtmp://${uri.host}:1935/live";
}
String playbackUrl(String roomId) {
String playbackUrl(String roomId, {String? quality}) {
final uri = Uri.parse(_baseUrl);
final normalizedQuality = quality?.trim().toLowerCase();
if (kIsWeb) {
return uri.replace(path: '/live/$roomId').toString();
return uri
.replace(
path: '/live/$roomId',
queryParameters:
normalizedQuality == null || normalizedQuality.isEmpty
? null
: {'quality': normalizedQuality},
)
.toString();
}
return "$rtmpUrl/$roomId";
if (normalizedQuality == null || normalizedQuality.isEmpty) {
return "$rtmpUrl/$roomId";
}
return "$rtmpUrl/$roomId/$normalizedQuality";
}
ThemeMode _themeModeFromString(String value) {