YouTube come destinazione pubblica, non Match Live TV.

Non propone più il link MLTV per sessioni YouTube; la pagina /live
reindirizza a YouTube; il relay verso YouTube si riavvia al connect.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-04 07:25:07 +02:00
parent 9fd4d865b3
commit 1d67459bbe
12 changed files with 163 additions and 9 deletions

View File

@@ -13,6 +13,7 @@ class StreamSession {
this.shareUrl,
this.youtubeWatchUrl,
this.youtubeBroadcastId,
this.youtubeReady = false,
this.privacyStatus = 'public',
this.qualityPreset = '720p_30_2.5mbps',
this.targetBitrate = 2500000,
@@ -32,6 +33,7 @@ class StreamSession {
final String? shareUrl;
final String? youtubeWatchUrl;
final String? youtubeBroadcastId;
final bool youtubeReady;
final String privacyStatus;
final String qualityPreset;
final int targetBitrate;
@@ -62,6 +64,7 @@ class StreamSession {
shareUrl: json['share_url'] as String?,
youtubeWatchUrl: json['youtube_watch_url'] as String?,
youtubeBroadcastId: json['youtube_broadcast_id'] as String?,
youtubeReady: json['youtube_ready'] as bool? ?? false,
privacyStatus: json['privacy_status'] as String? ?? 'public',
qualityPreset: json['quality_preset'] as String? ?? '720p_30_2.5mbps',
targetBitrate: json['target_bitrate'] as int? ?? 2500000,

View File

@@ -5,7 +5,10 @@ import 'package:share_plus/share_plus.dart';
import 'models/stream_session.dart';
String? watchShareUrl(StreamSession session) {
return session.shareUrl ?? session.youtubeWatchUrl ?? session.watchPageUrl;
if (session.platform == 'youtube') {
return session.youtubeWatchUrl ?? session.shareUrl;
}
return session.shareUrl ?? session.watchPageUrl;
}
String watchShareLabel(StreamSession session) {

View File

@@ -121,6 +121,13 @@ class WebsocketService {
_ref.read(sessionProvider.notifier).applyCommand('resume_stream');
}
break;
case 'youtube_ready':
_ref.read(sessionProvider.notifier).updateYoutubeLinks(
youtubeWatchUrl: data['youtube_watch_url'] as String?,
shareUrl: data['share_url'] as String?,
youtubeBroadcastId: data['youtube_broadcast_id'] as String?,
);
break;
default:
break;
}