Announcement

Collapse
No announcement yet.

Lennart Poettering Announces New Project: casync

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Originally posted by caligula View Post

    Maybe this gives some idea. Possible with Pulseaudio, but does this work with alsa+dmix:

    1. boot your computer
    2. system loads, initializes alsa, pulseaudio, bluetooth, and sets the builtin sound card as default
    3. click the firefox icon and start the browser
    4. play a youtube video, sound comes from big speakers connected to internal sound card
    5. decide you want to listen to the video via bluetooth headphones. Turn on the headphones.
    6. headphones appear as secondary device in volume control, pulseaudio knows you prefer them so it automatically switches all audio currently playing (the youtube video) to bluetooth headphones.
    7. start a game. sound goes to headphones right from the start. doesn't matter if the game uses alsa/pulse interface
    8. decide you want to share the game sounds with everyone else. Turn off headphones.
    9. pulse automatically switches back to internal sound card and sound playback continues from bigger speakers

    So this really is possible without pulseaudio?
    Never tried to achieve that, but I would be surprised if it's not possible. Whether it's possible or not with just alsa alone or not, it would definitely be possible to arrange this. by writing a simple sound management software that detects when new devices are plugged in/out and makes alsa switch the default audio device when that happens. I've been thinking about writing such a software for a while now, but been too lazy cus I don't really need it, I pretty much don't use headphones in the first place. There's definitely no need for a huge clunky piece of crapware like pulseaudio to achieve this, pulseaudio is orders of magnitude more complicated and redundant than it needs to be to achieve these kinds of things.

    Look at all the shit pulseaudio does https://upload.wikimedia.org/wikiped...io-diagram.svg all the shit that can go wrong...

    You'd be lying if you told me you need all that shit. Pulseaudio is like a fully furnished 3 story house with a garage but it's owners pretty much only use the garage part. Why install all these redundant complicated useless features and functions when all you need is a tiny subset of it?

    I should probably write that audio management software, my biggest reason for not testing this all out right now is cus I've been having some wrist problems lately so I can't code D: I'm scared about getting carpal tunnel syndrome or something if I push it too much.

    Comment


    • Originally posted by rabcor View Post

      Never tried to achieve that, but I would be surprised if it's not possible. Whether it's possible or not with just alsa alone or not, it would definitely be possible to arrange this. by writing a simple sound management software that detects when new devices are plugged in/out and makes alsa switch the default audio device when that happens. I've been thinking about writing such a software for a while now, but been too lazy cus I don't really need it, I pretty much don't use headphones in the first place. There's definitely no need for a huge clunky piece of crapware like pulseaudio to achieve this, pulseaudio is orders of magnitude more complicated and redundant than it needs to be to achieve these kinds of things.

      Look at all the shit pulseaudio does https://upload.wikimedia.org/wikiped...io-diagram.svg all the shit that can go wrong...

      You'd be lying if you told me you need all that shit. Pulseaudio is like a fully furnished 3 story house with a garage but it's owners pretty much only use the garage part. Why install all these redundant complicated useless features and functions when all you need is a tiny subset of it?
      You do realize that Pulseaudio is modular, right? If you use pulse enabled apps only, the application layer interfaces directly with PA. I don't use libao, libxine, arts, or libgnome, but I'm sure those users appreciate those emulations. If you don't use them, they don't even need to be loaded. I only use the alsa layer for apps that still rely on alsa, but that's a minority of apps. Next, on the middle layer, I don't use OSS, but isn't it obvious that it needs to interface with some backend tech? Either OSS or ALSA. I don't use RTP either but I use the network tunnels and few other plugins.

      Basically what you said is that the use case I described can't be done with alsa+dmix right now. So, at least for me pulse solves this use case. I don't want to rewrite that from scratch. The next thing I need is network tunnels and I don't want to rewrite that either.

      Comment


      • Ramblings about Pulseaudio :

        1. It lacks useful user visible features such as an equalizer or mix to mono.
        I can add a mix to mono item by creating a sink in a config file but that's Unix sysadmin task and it's boring to have to look it up on the web every time.

        2. I'm knowledgeable enough to disable or remove ALSA and Pulseaudio to install OSSv4 instead, if I really want to. But how to set up Pulseaudio + OSS? That was a few years ago but I didn't go far looking it up. It's likely a distro's job but it's such an uncommon set up. Didn't want to spend days searching very small corners of the web and writing config files.

        Comment


        • Originally posted by Krejzi View Post

          Not sure why this matters at all. I'm from SE Europe and I'll leave it at that.
          Because I believe you're from Slovenia, just like me. There's some guys I know (not too well) running a computer service business called Krejzi (or at least they used to).

          Comment


          • Originally posted by debianxfce View Post

            Firefox works with pulseaudio only, so your scenario is stupid. Play Team Fortress, pulseaudio did crash the game two year ago. Use the top command and realize how you waste cpu time with pulseaudio.
            I could have said 'any browser' instead. It doesn't really matter. I haven't noticed this wasted cpu time - which process exactly would add to the cpu load?

            Comment


            • subscribed, this seems like a very interesting thread

              Comment


              • firefox is patched in gentoo to work just fine with alsa standalone.

                Comment


                • Years later and debianxfce is still the same uneducated troll turd posting the same stupid memes, failing to explain how the fuck a multimedia framework (Gstreamer) can be used as a replacement for a sound server (PulseAudio).

                  PS: Firefox is NOT using more RAM than Chrome. That's just some more lies and slander from the uneducated one.

                  Comment


                  • Originally posted by unixfan2001 View Post
                    PS: Firefox is NOT using more RAM than Chrome. That's just some more lies and slander from the uneducated one.
                    Firefox slowly moving to Rust also shows much more promise than Chrome with its terrible build process.

                    Comment


                    • Originally posted by caligula View Post

                      Firefox slowly moving to Rust also shows much more promise than Chrome with its terrible build process.
                      Actually, when it comes to the build process they're both sort of terrible. Just in different ways.
                      Yes, running "mach build" is straightforward (idiosyncratic error messages aside), but try extending mach and you will age 10 years in 10 minutes.

                      @debianxfce

                      Only complete and utter idiots tout their ability to write in one single programming language. There's a place for Rust, just as there is a place for Javascript, just as there is a place for C/C++. I wouldn't want to write a video game in Rust (it's certainly possible, albeit I prefer OOP for that. Even lousy OOP like the one found in C++), just as I wouldn't want to write memory sensitive code in C or C++, just as I wouldn't want to write browser extensions in anything but Javascript (ES6/TS).

                      There's a reason most build systems are written in Python and most microservices are written in Go, too.

                      I use all of these languages (and some more esoteric ones, like Haskell) to great success. Real programmers™ actually know that all of these languages have a reason to exist and make the best out of leveraging them for specific use-cases.

                      Comment

                      Working...
                      X