Fix freeze YouTube al cambio punteggio: PNG atomica e relay stabile
rsvg scrive su .tmp poi rename; il feeder ignora PNG parziali. YouTube relay: no doppio avvio, reconnect RTMP; overlay restart solo dopo 3 miss. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -86,8 +86,15 @@ module Streams
|
||||
end
|
||||
|
||||
if running?(session.id)
|
||||
Rails.logger.warn("[OverlayRelay] _air non attivo, restart session=#{session.id}")
|
||||
misses = redis.incr(overlay_air_miss_key(session.id)).to_i
|
||||
redis.expire(overlay_air_miss_key(session.id), 120)
|
||||
return if misses < 3
|
||||
|
||||
redis.del(overlay_air_miss_key(session.id))
|
||||
Rails.logger.warn("[OverlayRelay] _air non attivo dopo #{misses} tentativi, restart session=#{session.id}")
|
||||
stop(session)
|
||||
else
|
||||
redis.del(overlay_air_miss_key(session.id))
|
||||
end
|
||||
|
||||
start(session)
|
||||
@@ -181,6 +188,10 @@ module Streams
|
||||
redis.get(format(REDIS_KEY, session_id))
|
||||
end
|
||||
|
||||
def overlay_air_miss_key(session_id)
|
||||
format("overlay_relay:air_miss:%s", session_id)
|
||||
end
|
||||
|
||||
def process_alive?(pid)
|
||||
Process.kill(0, pid.to_i)
|
||||
true
|
||||
|
||||
Reference in New Issue
Block a user