Why do we get this error "Start signal not receive...
# ask-ai
r
Why do we get this error "Start signal not received" on Egress? Btw I am using Javascript server SDK
t
Thanks for reaching out, Shreyansh. I'm an AI assistant and I'm here to help. Give me a moment while I research this topic.
It looks like you're encountering the "Start signal not received" error in LiveKit Egress. This happens when the process is set up to wait for a
START_RECORDING
signal from a Chrome browser, but that signal doesn’t come through within the expected time. This is connected to the
awaitStartSignal
option in your Web Egress configuration. Let’s walk through some common causes and how you can address them: • Causes: ◦ The browser might not be loading the target URL where the
START_RECORDING
signal is supposed to come from. ◦ There could be a script error or a misconfiguration stopping the
console.log("START_RECORDING")
command from running. ◦ The signal might be misspelled, like
start_recording
,
START-RECORDING
, or
StartRecording
. • Resolutions: ◦ Make sure your web app is correctly triggering the
START_RECORDING
signal by including
console.log("START_RECORDING")
at the right spot in your code. ◦ Double-check that
awaitStartSignal
is set to
true
in your Web Egress request configuration. ◦ Take a look at your browser and network logs to ensure the page loads properly and there are no JavaScript errors blocking the signal. ◦ Try manually opening the egress URL in a browser to see if the page behaves as expected and sends the correct signal. If you want, I’m here to help you through any of these steps or answer any other questions you might have! Sources: rpc/egress.psrpc.go | packages/livekit-server-sdk/src/EgressClient.ts | src/main/kotlin/io/livekit/server/EgressServiceClient.kt | livekit-api/src/services/egress.rs
r
First of all I am using composite for recording And second, I call the LiveKit API for recording, right from the backend and not frontend
t
It looks like the "Start signal not received" error in LiveKit composite recording happens when the egress service doesn’t catch the
START_RECORDING
signal from the rendering web page as the recording starts. This usually occurs right after the
StartRoomCompositeEgress
API is called from the backend. Let’s walk through some common causes and how we can address them: • Causes: ◦ The
custom_base_url
might be invalid or unreachable (if you’re using one). ◦ There could be something in the recording template stopping the
START_RECORDING
console log from showing up. ◦ The layout specified in the request might be invalid or not supported. • Resolutions: ◦ Make sure your custom recording template (if applicable) properly logs
START_RECORDING
to the console once rendering is ready. ◦ Double-check that the layout you’re specifying in the API request is valid and supported by your template. ◦ Confirm that the egress service can load and run the page within the expected time. If you’re still running into this issue, taking a look at the browser logs from the headless Chrome instance used by the egress service can be really helpful to see if the page loaded correctly and the signal was sent. Please feel free to reach out if you want me to help you dig deeper! Sources: Custom recording templates | LiveKit Docs | livekit/livekit_egress.twirp.go | Egress API | LiveKit Docs | src/main/kotlin/io/livekit/server/EgressServiceClient.kt