Skip to content

Conversation

@ayufan
Copy link
Owner

@ayufan ayufan commented Aug 4, 2025

Includes the #184.

@ayufan ayufan force-pushed the debian-trixie-support branch 3 times, most recently from a3011f9 to 58cc373 Compare August 4, 2025 15:10
@ayufan ayufan force-pushed the debian-trixie-support branch from 58cc373 to e426a09 Compare August 4, 2025 15:26
@ajn142
Copy link

ajn142 commented Sep 8, 2025

Is the only thing preventing this from being merged the build errors with Bullseye? It looks like that's related to 9df363e requiring libdatachannel 0.23.2, requiring libsrtp 2.7, which requires cmake 3.21, which isn't present in bullseye.

@ajn142
Copy link

ajn142 commented Sep 9, 2025

Is the only thing preventing this from being merged the build errors with Bullseye? It looks like that's related to 9df363e requiring libdatachannel 0.23.2, requiring libsrtp 2.7, which requires cmake 3.21, which isn't present in bullseye.

If I’ve followed that case correctly, would it be sufficient to limit the version pinning of libdatachannel to Bookworm and Trixie, which can support it with make >= 3.21, and allow Bullseye to compile with any old version of libdatachannel, as before?

@mryel00
Copy link
Contributor

mryel00 commented Oct 13, 2025

In my opinion, Bullseye should not be a blocker and support should just get dropped, if supporting it is a hassle. Best would be a separate branch with a working legacy version.

But currently there is a different blocker. WebRTC is not working. This is due to the removal of sendTime. This results in just the key frames getting shown.

sender->startRecording();
}

void sendTime()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do not remove sendTime. If you remove it, WebRTC won't work and the client will only show the keyframes.

@ayufan
Copy link
Owner Author

ayufan commented Oct 13, 2025 via email

@mryel00
Copy link
Contributor

mryel00 commented Oct 24, 2025

We just found another issue. Chromium based browsers and the OrcaSlicer Browser (no idea what that's based on), cannot connect to the WebRTC stream. Firefox based browsers work without problem.

The error I get, after applying this fix I mentioned above, is as follows:

Unchecked runtime.lastError: The message port closed before a response was received.
webrtc:129 OperationError: Failed to execute 'setRemoteDescription' on 'RTCPeerConnection': Failed to parse SessionDescription. a=msid: video Missing stream ID in msid attribute.
    at webrtc:109:21

Without this PR applied it's still working on Bookworm. The problem exists on Bookworm and Trixie.

@mryel00
Copy link
Contributor

mryel00 commented Oct 25, 2025

As you can see in the Mainsail PR mainsail-crew/mainsail#2276, a fix is rather simple and you just need to explicitly set the stream ID to a non empty string.

We have no idea why this happens just with the newer libdatachannel version, as e.g. the master and main branch work without problems, and it's just this PR breaking it with an empty string.

edit: To be specific, each time you call webrtc_add_video, you currently set the last argument to "". Replacing it by "stream" should fix the error.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants