Spaces:
Running
Running
Commit History
12 days ago
-
Classify RTMPS filter timeouts as output failures Running
Verified signatureKeep YouTube output timeouts on the ingest-recovery path instead of switching a healthy TikTok FLV source to HLS.1057ee9
17 days ago
-
v2.45: port dual ingest and probed canvas fixes
Arena.ai Agent7ea6aba
18 days ago
-
v2.42 start supervisor: recover a stuck YouTube start by restarting the sender (fresh dual ingest) after 150s unconfirmed, max 3 attempts
Verified signaturec343d8e
19 days ago
-
v2.41 dual simultaneous YouTube ingest (primary+backup tee fan-out)
Verified signaturefe77a7a -
relay-v2.40-avfill-splice: apply On-validated A/V fill splice fix fleet-wide
Verified signatureOperator-approved fleet rollout of the On trial: sequence headers stamped 0 no longer consume the splice bias, bridge operations are serialized, fill writes are deadline-bounded, and the watchdog no longer shields a stalled/inflated fill.a9631e4
26 days ago
-
v2.37-fill-span: bound watchdog fill exemption + pump renewal by whole fill episode (fill_until)
Verified signature7983ecc -
Renew stdin write deadline while gap-filling (v2.36-fill-renewal)
Verified signature30b1d21 -
Post-fill/reattach seam credit for write deadline (v2.35-seam-credit)
Verified signatureee814e6 -
Keyframe-gated resume + fill-credit write deadline (v2.34-keyframe-gate)
Verified signaturec201b90 -
Persistent room format lock + fill/swap-aware write deadline (v2.33-format-lock-fillguard)
Verified signature9d0318c -
Exact copy of Reoo88/On @ 826bfe0 (relay-v2.32-gap-filler)
Verified signaturece0ef24
-
تنظيف مسار Kick: حذف كل ما لا أثر له والإبقاء على ما يغيّر سلوكًا فعليًا
agentخيارات FFmpeg (مُقاسة على ffmpeg 7.1.5): - حذف -http_persistent 1 : افتراضي مفكّك HLS أصلًا true ⇒ بلا أثر - حذف -m3u8_hold_counters 10 : الافتراضي 1000، فكانت قيمتي تُضعف الصلابة لا تزيدها - حذف -max_reload 1000 و -http_multiple 1 : بلا أثر عملي أمام حارس المشروع - إبقاء -seg_max_retry 2 وحده: افتراضي FFmpeg صفر، فأول عثرة CDN كانت تقتل الجلسة كود زائد محذوف: - kick_source.label() بلا أي استعمال - app.source_referer() بلا أي استعمال - حقل viewers الذي لا يقرأه أحد - مرشّح الـmaster 'auto': يناقض قاعدة الجودة الثابتة (قفز ABR = تجميد) وزائد أصلًا لأن كل رصد يجلب روابط طازجة - relay.headers_blob أُعيدت إلى أصلها حرفيًا (تعديلي كان بلا أثر) - youtube_manager يستعمل kick_source.profile_url بدل تكرار تقطيع البادئة النتيجة: relay.py سطران وظيفيان فقط مشروطان بـplatform=='kick'، و12 ملفًا من ملفات المشروع لم تُمس إطلاقًا. test_kick: 48/48 شاملة الحيّ، وبقية الاختبارات مطابقة لخط الأساس حرفيًا.b578771 -
إضافة Kick: رصد ونقل إلى نفس قناة اليوتيوب بنسخ مباشر بلا إعادة ترميز للصورة
agent- kick_source.py: وحدة مستقلة ترصد قنوات Kick (Amazon IVS) وتُرجع نفس عقد رصد تيك توك - كل جودات Kick هي H.264+AAC ⇒ المسار -c:v copy: صفر إعادة ترميز وصفر حمل CPU - نُسلّم FFmpeg رابط جودة ثابتة لا الـmaster، فلا قفزات ABR تُجمّد صورة يوتيوب - سلّم بديل كامل + روابط طازجة كل رصد + امتصاص عثرة API واحدة - relay.py: صلابة HLS خاصة بكيك معلّقة على platform=='kick' فقط - youtube_manager.py: Referer ووصف الحدث حسب المنصة - مسار تيك توك غير ممسوس: نفس نتائج الاختبارات قبل وبعد - test_kick.py: 40 اختبارًا + اختبار حيّ اختياري عبر FFmpeg8ea1575
-
full parity with Reoo88/On dd3ad8ef
Verified signature50594d5
-
Stop YouTube app flash: lock first canvas, eval=frame, no copy-recovery.
On deployPK/layout hops pad into the size already latched. Never return to copy on the same event (new SPS). Not a 720 squash.7a47fa3 -
Use Tktktk engine as-is (copy-first, PK matchgop on first canvas).
On deployNo resolution upscale. Same relay as Reoo88/Tktktk ef356f0.d6fd944 -
Lock first YouTube canvas; stop app flash on PK.
On deployDo not reconnect at a new size. Pin the first picture, sticky matchgop, and do not hop back to COPY. Viewers no longer need to force-close the YouTube app.ecb535b
-
v2.12-matchgop: copy-first; on YouTube noData/gopSizeLong switch THIS publisher to same-size closed GOP 2s (not default 720). Cuts live by operator request.
Verified signaturecd90dad -
v2.11: LIGHT→COPY only after 90s stable light + verified copy output; rollback to light if out=0 (do not clear sticky on H264 label)
Verified signature0ed9a41 -
stall watchdog: do not fake last-byte on TikTok reattach; cap swapping skip at SOURCE_STALL_TIMEOUT (measured 40-57s freeze)
Verified signature252aff3
-
Revert Prayer-Time-Bot to 0be4ca683e2a (user: 0pe4ca6) — H264 FLV copy, no HEVC origin fallthrough
Verified signaturee4951d8 -
Prayer: copy same quality first; transcode at source size never upscale; one-shot match if YouTube GOP rejects copy
Verified signature36f588a -
Restore pre-today engine (daa404f/246dbb4/f6039fb); 5 concurrent relays/events; auto+fixed720 fallback
Verified signature047a82a -
Unfreeze: kill copy when out_time frozen 12s; do not reset source timer on reattach HTTP
Verified signature345f857 -
Fix COPY_RECOVERY out=0: 720-class H264 first, 12s zero-output start stall, abort to light after 2 misses
Verified signature1a94051 -
Copy-first architecture: light fallback not fixed720; hysteresis 45s; relay_state in UI; no MediaMTX
Verified signature9c84a2f -
Keep light sticky across H264 and sender recycle; persist force_light on the event
Verified signature25b3b93 -
Hybrid engine: H264 copy first; light ultrafast 1800k GOP 2s only when copy ingest fails (max 1 on cpu-basic)
Verified signature1f5c6f6 -
Keep FFmpeg on TikTok format change: splice into same RTMPS so YouTube does not show loading
Verified signaturef6039fb -
Real YouTube loading fix: never delay copy reconnect once the event is live; dump_extra on H264 copy IDR
Verified signature6f6c26e -
Copy-first: prefer 720-class H264 over 640 blips; retry reattach 3x before killing FFmpeg; cache /health 2s; spawn cooldown
Verified signatured8243b3 -
Copy-first: reattach TikTok into the same FFmpeg on stall/format flap; never auto-transcode on dimension flap
Verified signature1e71f1c -
Copy-first: retry 403 when a YouTube slot frees; restart copy on noData with live source; hide stale FFmpeg errors
Verified signaturef4b8a91
-
copy H264 even if flap sticky; FLAP_LIMIT=4. Measured: 2x fixed720 = 86-93% cpu-basic quota
Verified signature0cdc183 -
do not auto-transcode a declared H.264 source (cpu-basic copy path)
Verified signaturedc1a60e -
health: send_mode+youtube fields; skip 1440p on 2nd concurrent (cpu-basic measured)
Verified signature4ebb425
-
Keep the YouTube FFmpeg session across TikTok silence by splicing a new FLV.
Reconnect drops the second file header and keeps DTS monotonic so viewers are not cut when a signed URL expires or the source stalls.19962d1 -
Do not end the supervisor Event on FFmpeg teardown.
_teardown used stop.set() to wake the pump; sender_loop treated that as account stop, occupied a new FFmpeg, and flashed YouTube. Stall still kills the process via force_stop; the thread reconnects on the same slot.62a7a42
-
Sync full Tktktk engine (relay-v2.9-confirm) onto this Space.
Independent per-broadcaster relays, concurrency cap 5, confirm-before-exit on idle offline, tests included. Space identity (title On) kept. Do not enable OAuth automation here and on Tktktk against the same YouTube channel.9c10fcb
-
copy the full relay project into this test Space + the three lab-verified fixes (format guard on, timestamp-reset detector, optional audio map)
QA17fefbc