Fixes multiple streams in a row being dead.

This commit is contained in:
SergeantPanda 2025-04-15 07:44:08 -05:00
parent 02b5fb6fc0
commit 5bb6539586
2 changed files with 9 additions and 3 deletions

View file

@ -571,9 +571,6 @@ class StreamManager:
# Reset retry counter to allow immediate reconnect
self.retry_count = 0
# Reset tried streams when manually switching URL
self.tried_stream_ids = set()
# Also reset buffer position to prevent stale data after URL change
if hasattr(self.buffer, 'reset_buffer_position'):
try:

View file

@ -288,6 +288,15 @@ def change_stream(request, channel_id):
# Use the service layer instead of direct implementation
result = ChannelService.change_stream_url(channel_id, new_url, user_agent)
# Get the stream manager before updating URL
stream_manager = proxy_server.stream_managers.get(channel_id)
# If we have a stream manager, reset its tried_stream_ids when manually changing streams
if stream_manager:
# Reset tried streams when manually switching URL via API
stream_manager.tried_stream_ids = set()
logger.debug(f"Reset tried stream IDs for channel {channel_id} during manual stream change")
if result.get('status') == 'error':
return JsonResponse({
'error': result.get('message', 'Unknown error'),