chore: fix windows playback not working for loop back ipv4

This commit is contained in:
Kingkor Roy Tirtho 2024-07-05 15:32:18 +06:00
parent 7dd76d24c3
commit 359b918e6b
2 changed files with 7 additions and 8 deletions

View File

@ -47,18 +47,16 @@ import 'package:timezone/data/latest.dart' as tz;
import 'package:window_manager/window_manager.dart'; import 'package:window_manager/window_manager.dart';
Future<void> main(List<String> rawArgs) async { Future<void> main(List<String> rawArgs) async {
WidgetsFlutterBinding.ensureInitialized();
if (runWebViewTitleBarWidget(rawArgs)) {
return;
}
final arguments = await startCLI(rawArgs); final arguments = await startCLI(rawArgs);
AppLogger.initialize(arguments["verbose"]); AppLogger.initialize(arguments["verbose"]);
AppLogger.runZoned(() async { AppLogger.runZoned(() async {
final widgetsBinding = WidgetsFlutterBinding.ensureInitialized(); final widgetsBinding = WidgetsFlutterBinding.ensureInitialized();
if (runWebViewTitleBarWidget(rawArgs)) {
return;
}
await registerWindowsScheme("spotify"); await registerWindowsScheme("spotify");
tz.initializeTimeZones(); tz.initializeTimeZones();

View File

@ -12,6 +12,7 @@ import 'package:media_kit/media_kit.dart' as mk;
import 'package:spotube/services/audio_player/playback_state.dart'; import 'package:spotube/services/audio_player/playback_state.dart';
import 'package:spotube/services/sourced_track/sourced_track.dart'; import 'package:spotube/services/sourced_track/sourced_track.dart';
import 'package:spotube/utils/platform.dart';
part 'audio_players_streams_mixin.dart'; part 'audio_players_streams_mixin.dart';
part 'audio_player_impl.dart'; part 'audio_player_impl.dart';
@ -28,7 +29,7 @@ class SpotubeMedia extends mk.Media {
}) : super( }) : super(
track is LocalTrack track is LocalTrack
? track.path ? track.path
: "http://${InternetAddress.anyIPv4.address}:$serverPort/stream/${track.id}", : "http://${kIsWindows ? "localhost" : InternetAddress.anyIPv4.address}:$serverPort/stream/${track.id}",
extras: { extras: {
...?extras, ...?extras,
"track": switch (track) { "track": switch (track) {
@ -42,7 +43,7 @@ class SpotubeMedia extends mk.Media {
@override @override
String get uri => track is LocalTrack String get uri => track is LocalTrack
? (track as LocalTrack).path ? (track as LocalTrack).path
: "http://${InternetAddress.anyIPv4.address}:$serverPort/stream/${track.id}"; : "http://${kIsWindows ? "localhost" : InternetAddress.anyIPv4.address}:$serverPort/stream/${track.id}";
factory SpotubeMedia.fromMedia(mk.Media media) { factory SpotubeMedia.fromMedia(mk.Media media) {
final track = media.uri.startsWith("http") final track = media.uri.startsWith("http")