19:59:13 Discovering body for 'mercator-talks' in bxl1-test-3/nerdland 19:59:13 Found chunky-turnip-23 (stream_count:0, host:10.10.100.16) 19:59:13 Pairing with chunky-turnip-23 at 10.10.100.16 19:59:14 Pairing OK — cert 726 bytes 19:59:14 AppState: entering .streaming — host:10.10.100.16 app:mercator-talks body:node-b961f1c8 serverCert:726B 19:59:14 StreamingView: appeared — launching session (host:10.10.100.16 app:mercator-talks 1080x1920 20000kbps cert:726B) 19:59:14 MicRelay: microphone permission granted 19:59:15 MicRelay: started — host:10.10.100.16 sampleRate:48000 channels:1 frameSamples:960 udp:47995 19:59:15 [ObjC] HydraStreamSession: startWithHost host=10.10.100.16 app=mercator-talks 1080x1920 20000kbps cert=726B 19:59:15 [ObjC] HydraStreamSession: presenting StreamFrameViewController (dispatching to main)... 19:59:15 [ObjC] StreamManager: main START — host=10.10.100.16 app=mercator-talks httpsPort=47984 19:59:15 [ObjC] StreamManager: crypto ready — making serverinfo HTTPS to 10.10.100.16:47984... 19:59:15 Stream: VC presented — Moonlight connecting to host 19:59:15 StreamingView: disappeared 19:59:15 StreamingView: disappeared due to modal — session still running 19:59:15 [ObjC] HydraStreamSession: StreamFrameViewController presented — StreamManager running 19:59:15 [ObjC] StreamManager: serverinfo done — statusCode=200 pairStatus=1 state=SUNSHINE_SERVER_FREE appVersion=7.1.431.-1 19:59:15 [ObjC] StreamManager: serverCodecModeSupport=1835777 (from serverinfo: 1835777) 19:59:15 [ObjC] StreamManager: making applist HTTPS... 19:59:15 [ObjC] StreamManager: applist done — statusCode=200 19:59:15 [ObjC] StreamManager: applist has 2 apps 19:59:15 [ObjC] StreamManager: resolved appID='593751559' for app='mercator-talks' 19:59:15 [ObjC] StreamManager: server IDLE — launching app appID=593751559... 19:59:15 [ObjC] StreamManager: /launch HTTPS request starting (appID=593751559, timeout=60s)... 19:59:16 [ObjC] StreamManager: /launch response — statusCode=200 gameSession=1 19:59:16 [ObjC] StreamManager: /launch OK — gameSession=1 sessionUrl=rtspenc://10.10.100.16:48010 19:59:16 [ObjC] StreamManager: launch/resume OK — sessionUrl=rtspenc://10.10.100.16:48010 — dispatching LiStartConnection to main queue 19:59:16 Stream: stage — platform initialization 19:59:16 [ObjC] StreamManager: [main queue] creating VideoDecoderRenderer + Connection (VPN=NO)... 19:59:16 Stream: stage — name resolution 19:59:16 [ObjC] StreamManager: [main queue] Connection enqueued — LiStartConnection will run on bg thread 19:59:16 Stream: stage — audio stream initialization 19:59:16 [ObjC] Connection: acquiring initLock (host=10.10.100.16 VPN=NO)... 19:59:16 Stream: stage — RTSP handshake 19:59:16 [ObjC] Connection: initLock acquired — calling LiStartConnection... 19:59:16 [ObjC] [C] RTSP port: 48010 19:59:16 [ObjC] [C] Initializing platform... 19:59:16 [ObjC] ClStageStarting: stage=1 name=platform initialization 19:59:16 [ObjC] Stage starting: platform initialization (hydraStageStarted block SET) 19:59:16 [ObjC] ClStageComplete: stage=1 name=platform initialization 19:59:16 [ObjC] [C] done 19:59:16 [ObjC] [C] Resolving host name... 19:59:16 [ObjC] ClStageStarting: stage=2 name=name resolution 19:59:16 [ObjC] Stage starting: name resolution (hydraStageStarted block SET) 19:59:16 [ObjC] ClStageComplete: stage=2 name=name resolution 19:59:16 [ObjC] [C] done 19:59:16 [ObjC] [C] Initializing audio stream... 19:59:16 [ObjC] ClStageStarting: stage=3 name=audio stream initialization 19:59:16 [ObjC] Stage starting: audio stream initialization (hydraStageStarted block SET) 19:59:16 [ObjC] ClStageComplete: stage=3 name=audio stream initialization 19:59:16 [ObjC] [C] done 19:59:16 [ObjC] [C] Starting RTSP handshake... 19:59:16 [ObjC] ClStageStarting: stage=4 name=RTSP handshake 19:59:16 [ObjC] Stage starting: RTSP handshake (hydraStageStarted block SET) 19:59:17 [ObjC] [C] Audio port: 48000 19:59:17 [ObjC] [C] Video port: 47998 19:59:17 [ObjC] [C] Control port: 47999 19:59:17 [ObjC] ClStageComplete: stage=4 name=RTSP handshake 19:59:17 Stream: stage — control stream initialization 19:59:17 [ObjC] [C] done 19:59:17 Stream: stage — video stream initialization 19:59:17 [ObjC] [C] Initializing control stream... 19:59:17 Stream: stage — input stream initialization 19:59:17 [ObjC] ClStageStarting: stage=5 name=control stream initialization 19:59:17 Stream: stage — control stream establishment 19:59:17 [ObjC] Stage starting: control stream initialization (hydraStageStarted block SET) 19:59:17 [ObjC] ClStageComplete: stage=5 name=control stream initialization 19:59:17 [ObjC] [C] done 19:59:17 [ObjC] [C] Initializing video stream... 19:59:17 [ObjC] ClStageStarting: stage=6 name=video stream initialization 19:59:17 [ObjC] Stage starting: video stream initialization (hydraStageStarted block SET) 19:59:17 [ObjC] ClStageComplete: stage=6 name=video stream initialization 19:59:17 [ObjC] [C] done 19:59:17 [ObjC] [C] Initializing input stream... 19:59:17 [ObjC] ClStageStarting: stage=7 name=input stream initialization 19:59:17 [ObjC] Stage starting: input stream initialization (hydraStageStarted block SET) 19:59:17 [ObjC] ClStageComplete: stage=7 name=input stream initialization 19:59:17 [ObjC] [C] done 19:59:17 [ObjC] [C] Starting control stream... 19:59:17 [ObjC] ClStageStarting: stage=8 name=control stream establishment 19:59:17 [ObjC] Stage starting: control stream establishment (hydraStageStarted block SET) 19:59:17 [ObjC] ClStageComplete: stage=8 name=control stream establishment 19:59:17 Stream: stage — video stream establishment 19:59:17 [ObjC] [C] done 19:59:17 Stream: stage — audio stream establishment 19:59:17 [ObjC] [C] Starting video stream... 19:59:17 [ObjC] ClStageStarting: stage=9 name=video stream establishment 19:59:17 [ObjC] Stage starting: video stream establishment (hydraStageStarted block SET) 19:59:17 [ObjC] ClStageComplete: stage=9 name=video stream establishment 19:59:17 [ObjC] [C] done 19:59:17 [ObjC] [C] Starting audio stream... 19:59:17 [ObjC] ClStageStarting: stage=10 name=audio stream establishment 19:59:17 [ObjC] Stage starting: audio stream establishment (hydraStageStarted block SET) 19:59:17 [ObjC] ArInit: sampleRate=48000 channels=2 streams=1 coupledStreams=1 samplesPerFrame=240 19:59:18 [ObjC] [C] Received first video packet after 400 ms 19:59:18 [ObjC] ArInit: audio output override=none (hasExternalOutput=1) 19:59:18 [ObjC] ClStageComplete: stage=10 name=audio stream establishment 19:59:18 Stream: stage — input stream establishment 19:59:18 [ObjC] [C] done 19:59:18 [ObjC] [C] Starting input stream... 19:59:18 [ObjC] ClStageStarting: stage=11 name=input stream establishment 19:59:18 [ObjC] Stage starting: input stream establishment (hydraStageStarted block SET) 19:59:18 [ObjC] ClStageComplete: stage=11 name=input stream establishment 19:59:18 [ObjC] [C] done 19:59:18 Stream: connectionStarted — all stages complete, video rendering 19:59:18 [ObjC] connectionStarted — all stages complete (hydraConnectionStartedCallback SET) 19:59:18 [ObjC] Connection: LiStartConnection returned 0 — releasing initLock 19:59:18 MicRelay: engine configuration changed — reinstalling tap 19:59:18 MicRelay: tap reinstalled — sampleRate:48000 channels:1 19:59:19 Tick: streaming (self-service) — not interfering 19:59:24 Tick: streaming (self-service) — not interfering 19:59:27 [ObjC] [C] Received first audio packet after 9000 ms 19:59:27 [ObjC] [C] Initial audio resync period: 500 milliseconds 19:59:29 Tick: streaming (self-service) — not interfering 19:59:30 MicRelay: first packet sent — opusBytes:228 rtpBytes:240 19:59:34 Tick: streaming (self-service) — not interfering 19:59:39 Tick: streaming (self-service) — not interfering 19:59:44 Tick: streaming (self-service) — not interfering 19:59:49 Tick: streaming (self-service) — not interfering 19:59:54 Tick: streaming (self-service) — not interfering 19:59:59 Tick: streaming (self-service) — not interfering 20:00:04 [ObjC] HydraStreamSession: stop() called — sending /cancel + dismissing VC 20:00:04 [ObjC] [C] Stopping input stream... 20:00:04 [ObjC] [C] done 20:00:04 [ObjC] [C] Stopping audio stream... 20:00:04 StreamingView: appeared — launching session (host:10.10.100.16 app:mercator-talks 1080x1920 20000kbps cert:726B) 20:00:04 Stream: start() ignored — modal already presented (SwiftUI re-appear race) 20:00:04 StreamingView: disappeared 20:00:04 StreamingView: disappeared due to modal — session still running 20:00:04 [ObjC] [C] ENet wait interrupted 20:00:04 [ObjC] [C] Control stream connection failed: 4 20:00:04 [ObjC] [C] done 20:00:04 [ObjC] [C] Stopping video stream... 20:00:04 [ObjC] [C] done 20:00:04 [ObjC] [C] Stopping control stream... 20:00:04 [ObjC] [C] ENet peer acknowledged disconnection 20:00:04 [ObjC] [C] done 20:00:04 [ObjC] [C] Cleaning up input stream... 20:00:04 [ObjC] [C] done 20:00:04 [ObjC] [C] Cleaning up video stream... 20:00:04 [ObjC] [C] done 20:00:04 [ObjC] [C] Cleaning up control stream... 20:00:04 [ObjC] [C] done 20:00:04 [ObjC] [C] Cleaning up audio stream... 20:00:04 [ObjC] [C] done 20:00:04 [ObjC] [C] Cleaning up platform... 20:00:04 [ObjC] [C] done 20:00:07 MicRelay: tap watchdog — no audio in 2s, reinstalling 20:00:07 MicRelay: tap reinstalled — sampleRate:48000 channels:1