Reoo88 commited on
Commit
daa404f
·
verified ·
1 Parent(s): 438da7d

Keep FFmpeg on TikTok format change: splice into same RTMPS so YouTube does not show loading

Browse files
Files changed (1) hide show
  1. relay.py +16 -0
relay.py CHANGED
@@ -853,6 +853,22 @@ class Sender:
853
  pass
854
  raise SourceStalled('انقطع تدفق المصدر منذ %.0f ث (FFmpeg ما زال حيًا، '
855
  'ويوتيوب يبقى على آخر ثانية وصلته)' % (now - _fresh))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
856
  rc = p.poll()
857
  if rc is not None:
858
  if sess['format_changed']:
 
853
  pass
854
  raise SourceStalled('انقطع تدفق المصدر منذ %.0f ث (FFmpeg ما زال حيًا، '
855
  'ويوتيوب يبقى على آخر ثانية وصلته)' % (now - _fresh))
856
+ if sess.get('format_changed') and p.poll() is None:
857
+ sess['format_changed'] = False
858
+ self.log(user, '[RELAY] تغيّر شكل المصدر؛ إعادة توصيل تيك توك على نفس FFmpeg — لا قطع يوتيوب')
859
+ attached=None
860
+ for _try in range(3):
861
+ attached = self._try_reattach(user, p, bridge, sess, stop, refresh,
862
+ read_timeout, retries, response, pump)
863
+ if attached:
864
+ response, pump = attached
865
+ break
866
+ if stop.is_set() or p.poll() is not None:
867
+ break
868
+ time.sleep(1.0)
869
+ if attached:
870
+ continue
871
+ raise FormatChanged()
872
  rc = p.poll()
873
  if rc is not None:
874
  if sess['format_changed']: