Wayland. It comes up a lot: “Bug X fixed in the Plasma Wayland session.” “The Plasma Wayland session has now gained support for feature Y.” And it’s in the news quite …

  • @uis
    link
    08 months ago

    As long as it launches after pipewire

    Why? Why plasma nailed own screensharing to audio server? There already are wayland extensions for this.

    • @thalience
      link
      English
      78 months ago

      Pioewire handles audio and video pipelines between applications.

      • @uis
        link
        08 months ago

        So why Wayland instead of pipewire at all?

        • Ullebe1
          link
          fedilink
          78 months ago

          Because Pipewire only handles and understands media streams, so it can stream the output of a window or the whole desktop, but only because the Wayland compositor has already composed the windows and other data it gets from the application to a visual and hands the final result to Pipewire.

          • @uis
            link
            08 months ago

            Which goes back to oroginal question. Why pipewire if there are already wayland extensions?

            • Ullebe1
              link
              fedilink
              28 months ago

              Because it is convenient for programs to use Pipewire for screensharing, as those programs can then also use the same Pipewire support for all their audio and webcam needs. Also Pipewire is good at multiplexing the various media streams.

              • @uis
                link
                1
                edit-2
                8 months ago

                And what developers will hammer their apps to one sound server implementation? What is convenient here? Loosing interoperability? You always can use Wayland for screensharing, ALSA for sound and V4L2 for webcam.

                • Ullebe1
                  link
                  fedilink
                  4
                  edit-2
                  8 months ago

                  For the multiplexing, as I mentioned.

                  A V4L2 camera can only be opened by a single application at a time, but if that application is Pipewire, then Pipewire can allow multiple applications to make use of it simultaneously. Same thing with ALSA, it’s the reason sound servers exist at all, though I suspect you’re already familiar with that.

                  I also hear that ALSA has some support for multiple applications per device nowadays, though I understand it is much less pleasant to use than a fully featured sound server.

                  • @thalience
                    link
                    English
                    18 months ago

                    I also hear that ALSA has some support for multiple applications per device nowadays, though I understand it is much less pleasant to use than a fully featured sound server.

                    FYI

                    Many older sound chips had hardware support for mixing multiple streams, and so the alsa drivers for those happily allowed multiple apps to open and write to the /dev/snd/whatever device. Life was good and people got used to doing it this way.

                    Nowadays (since like 2000 lol), sound chips generally expect a single pre-mixed stream. So the sound device for those is exclusive open. The libalsa devs made it possible to have the first app to open the sound device act as the sound server for every other app that tries to open it later. But it was complicated and fragile and just a bad idea in retrospect.

                  • @uis
                    link
                    -1
                    edit-2
                    8 months ago

                    nowadays

                    What? Nowdays? Do you live in 2005?

                    To be fair v4l2 sometimes needs additional processing to allow multiple processes to use same webcam at same time. At least for those applications who use libv4l because I’ve seen mentions that this is because for some reason libv4l checks that camera is not in use.

                    Reading the fucking manual suggests that V4L2 is totally fine with multiple programs using same webcam without any workarounds, just only one program can set resolution and other stuff.

                    EDIT: found mentions of dmix in 2004. Will I find mention from 2003 to finish with round number? Also hardware mixing was in ALSA since creation, but it required hardware(thanks, cap).