Adds app whitelabling feature from kmountainflower site dumps

This commit is contained in:
Your Name
2026-07-07 10:00:16 +00:00
parent b8d624343b
commit ea1bc88a70
54 changed files with 585 additions and 71 deletions
+6 -5
View File
@@ -6,6 +6,7 @@ import 'package:audio_session/audio_session.dart';
import 'package:http/http.dart' as http;
import 'package:just_audio/just_audio.dart';
import 'generated/app_config.dart';
import 'live_info_business_object.dart';
class KryzAudioHandler extends BaseAudioHandler with SeekHandler {
@@ -16,16 +17,16 @@ class KryzAudioHandler extends BaseAudioHandler with SeekHandler {
);
}
static const String streamUrl = 'https://kryz.out.airtime.pro/kryz_a';
static const String streamUrl = AppConfig.streamUrl;
static const String mediaId = 'kryz-live-stream';
static const String _liveInfoEndpoint = 'http://kryz.airtime.pro/api/live-info';
static const String _liveInfoEndpoint = AppConfig.metadataUrl ?? '';
static const Duration _liveInfoTimeout = Duration(seconds: 8);
static const Duration _metadataRefreshInterval = Duration(seconds: 20);
static const MediaItem _defaultMediaItem = MediaItem(
id: mediaId,
title: 'KRYZ Live Stream',
artist: 'KRYZ Radio',
title: AppConfig.defaultTitle,
artist: AppConfig.defaultArtist,
album: 'Live',
extras: <String, dynamic>{
'isLive': true,
@@ -52,7 +53,7 @@ class KryzAudioHandler extends BaseAudioHandler with SeekHandler {
MediaItem(
id: mediaId,
title: current.displayTitle,
artist: subtitle.isEmpty ? 'KRYZ Radio' : subtitle,
artist: subtitle.isEmpty ? AppConfig.defaultArtist : subtitle,
album: 'Live',
extras: <String, dynamic>{
'isLive': true,