After lots and lots of waiting and trying out multiple different things regarding single window recording in #OBS  on #Wayland  running #labwc  there is now a solution in place I can work with.

I wrote a wrapper script (see here) that does the following things when added as #pipemenu in labwc and I click the menu entry to create the output.

  • Add a virtual output
  • Use wlr-randr to set the geometry
  • Use swaybg to set the wallpaper
  • Send an update signal to a custom #Waybar module
  • I can now start #OBS and can add a #PipeWire screen recording and select the output (I have to do it blindly by just moving the cursor outside my actual display, because there is no menu, but that’s fine).

    For what I’m doing the performance of the OBS preview is fast enough so I simply move the cursor over to the virtual output and use it ā€œinside OBSā€.

    When I’m done, I invoke the script again, by clicking the remove entry which is dynamically shown if the output is active.

  • Remove the output
  • Remove ā€œthe output’s swaybg instanceā€
  • Send an update signal to a custom Waybar instance
  • Until individual-window recording will be possible this is a good workaround.

    #JustLinuxThings #ModernLinuxProblems #SharingIsCaring #scripting #Luanti #MinetestGame

    //cc @whynothugo (thanks) @LXQt (thanks, too)

    Index of /projects/virtual-output-casting-wrapper-script

    Listing for this section of this website.