Skip to content
Snippets Groups Projects

webrtcsink: bring in signalling code from whipsink as a signaller

Merged Mathieu Duponchelle requested to merge meh/gst-plugins-rs:whipwebrtcsink into main

Took a crack at implementing a whip signaller for webrtcsink, using largely unmodified code from whipsink. This can't deprecate whipsink altogether yet because webrtcsink doesn't support encoded input streams yet (though I heard @thiblahute was working on that :)), but can still be useful regardless.

I tested against https://github.com/meetecho/simple-whip-server/, seems to work as expected :)

Example usage:

gst-launch-1.0 -e uridecodebin uri=file:///home/meh/Videos/spring-blender.mkv ! videoconvert ! whipwebrtcsink name=ws signaller::whip-endpoint="http://127.0.0.1:7080/whip/endpoint/room1234"

assuming an endpoint is available at this address ofc.

cc @tkanakamalla @arun :)

Edited by Mathieu Duponchelle

Merge request reports

Merge request pipeline #910461 passed

Merge request pipeline passed for 84a33ca7

Approval is optional

Merged by GStreamer Marge BotGStreamer Marge Bot 1 year ago (Jun 15, 2023 10:47pm UTC)

Merge details

  • Changes merged into main with 84a33ca7.
  • Deleted the source branch.

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Sebastian Dröge
  • Mathieu Duponchelle mentioned in merge request !1194 (merged)

    mentioned in merge request !1194 (merged)

  • added 92 commits

    • 58a12f6b...f00a1690 - 91 commits from branch gstreamer:main
    • 71d1b023 - webrtcsink: bring in signalling code from whipsink as a signaller

    Compare with previous version

  • Mathieu Duponchelle resolved all threads

    resolved all threads

    • Author Maintainer

      Thanks again for the rebase @tkanakamalla , I tested the updated version on my end and all still works as expected, I took the occasion to also update the README with testing instructions :) Merging now, do you think we should completely remove the whipsink from webrtchttp, and instead expose it as a simple alias for whipwebrtcsink in the webrtc plugin?

    • I think the alias makes sense since the newer implementation gives us encoded / raw streams, plus congestion control.

      IIRC @slomo had some thoughts around retaining the original implementation, but I might be misremembering/misrepresenting that.

    • If it's a full replacement that handles everything the previous elements handle, then let's get of the old ones :) I don't know if that's the case

    • Author Maintainer

      Yeah, that's why I wanted to wait for the encoded streams support as @arun said, now whipwebrtcsink is just a superset of whipsink feature-wise

    • Author Maintainer

      btw @arun note that you don't get congestion control with encoded streams, probably obvious but worth making explicit :)

      Edited by Mathieu Duponchelle
    • Please register or sign in to reply
  • added 1 commit

    • 49876cab - webrtcsink: bring in signalling code from whipsink as a signaller

    Compare with previous version

  • assigned to @meh and unassigned @gstreamer-merge-bot

  • added 1 commit

    • 17ffdcda - webrtcsink: bring in signalling code from whipsink as a signaller

    Compare with previous version

  • Author Maintainer

    Changed to set Taruntej as the author, makes more sense

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Please register or sign in to reply
    Loading