Announcement

Collapse
No announcement yet.

PulseAudio Lands Much Better Support For FreeBSD - Audio Now Plays Correctly

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

  • #31
    Originally posted by dreich View Post

    The code is still added in the kernel making it more complex regardless.



    As previously stated, resampling is very common these days which makes it an integral part of the mixing "framework" and unfortunately part of the in-kernel implementation which increases the overall complexity.
    The code is much simpler, because there's no need for additional layers, daemons, libraries etc.

    Resampling is common? How often you see media (samples, streams) with sampling frequency other than 44100Hz?

    Comment


    • #32
      Originally posted by trasz View Post
      The code is much simpler
      Adding more code, no matter how simple it is, results in higher orders of complexity.


      Originally posted by trasz View Post
      Resampling is common? How often you see media (samples, streams) with sampling frequency other than 44100Hz?
      All the time.
      Also keep in mind that resampling, apart from sample rate conversions, also includes bit-depth conversions and all the above need to be done with floating-point precision.

      Comment


      • #33
        Originally posted by trasz View Post

        There are two fundamental differences between those two: first, ALSA is proprietary and mostly undocumented, which makes it harder for people to use it directly. Second, it's missing some basic functionality which needs to be patched over, as seen above.

        The network part of PulseAudio could make some sense, if it worked.
        Wth, ALSA is GPL. As for missing functionality, it has more than OSS does.

        Comment


        • #34
          Originally posted by dreich View Post

          Adding more code, no matter how simple it is, results in higher orders of complexity.




          All the time.
          Also keep in mind that resampling, apart from sample rate conversions, also includes bit-depth conversions and all the above need to be done with floating-point precision.
          Implementing mixing in the kernel instead of separate daemon, libraries etc results in orders of magnitude fewer lines of code - entire mixing and resampling code (sys/dev/sound/pcm/feeder_*.c) is about four thousand lines of code. It doesn't use floating-point, for obvious reasons. To compare, the hda(4) driver alone is eleven thousand.

          As for resampling - can you tell some more? Eg can you give me some example of weird sampling frequencies and sample widths in various samples and streams found on your system?
          Last edited by trasz; 20 January 2021, 11:16 AM.

          Comment


          • #35
            Originally posted by bug77 View Post

            Wth, ALSA is GPL. As for missing functionality, it has more than OSS does.
            Yes, ALSA is GPL, which changes exactly nothing when it comes to it being proprietary and largely undocumented.

            As for functionality: ALSA does have some features that OSS (probably) doesn't, like the ability to record lots of channels at the same time. On the other hand it's missing functionality actually important for everyday use, as explained above, and which has to be patched/worked around by PulseAudio.

            Comment


            • #36
              Originally posted by Lance View Post
              I have different experience. I used FreeBSD (GhostBSD) for Audio recordings and had far better Audio Quality than in Windows and Linux.
              Unbelievable! Any idea why?

              Comment


              • #37
                Originally posted by trasz View Post

                Implementing mixing in the kernel instead of separate daemon, libraries etc results in orders of magnitude fewer lines of code - entire mixing and resampling code (sys/dev/sound/pcm/feeder_*.c) is about four thousand lines of code. It doesn't use floating-point, for obvious reasons. To compare, the hda(4) driver alone is eleven thousand.

                As for resampling - can you tell some more? Eg can you give me some example of weird sampling frequencies and sample widths in various samples and streams found on your system?
                just from a quick glance in my ~Documents folder I have wav files going from 8000 to 22050 to 32000, 44100, 48000, 96000, in 8, 16, 24, and 32 bits.
                Also most video content on the internet is 48khz, not 44100.

                Comment


                • #38
                  Originally posted by trasz View Post
                  Yes, ALSA is GPL, which changes exactly nothing when it comes to it being proprietary and largely undocumented.
                  Ok, it's pretty clear by now you're either clueless or have a problem putting thoughts into words, but I'll bite once again.

                  How is a piece of GPL code proprietary? How is it undocumented when you have the source code available?
                  Just like OSS, ALSA provides an interface which you're free to implement however you want. You don't get more than one implementation simply because ALSA is geared towards Linux and, unlike OSS (which, incidentally, actually went proprietary at some point), never needed a complete rewrite.

                  Originally posted by trasz View Post
                  As for functionality: ALSA does have some features that OSS (probably) doesn't, like the ability to record lots of channels at the same time. On the other hand it's missing functionality actually important for everyday use, as explained above, and which has to be patched/worked around by PulseAudio.
                  It's actually not explained above, you haven't provided a single example.

                  Comment


                  • #39
                    Originally posted by Sonadow View Post
                    FreeBSD (and all of the BSDs, actually) are just so far behind in application and driver support that they can hardly be considered for any half-serious desktop computing use.

                    The only Unix system that actually shines as a desktop and laptop OS is macOS.
                    I use FreeBSD as a workstation. Why? It's a simple system and it runs well. Have you actually tried it?

                    Comment


                    • #40
                      Originally posted by doom_Oo7 View Post

                      just from a quick glance in my ~Documents folder I have wav files going from 8000 to 22050 to 32000, 44100, 48000, 96000, in 8, 16, 24, and 32 bits.
                      Let's just say I wouldn't call that a typical desktop usage scenario ;-)
                      Last edited by trasz; 20 January 2021, 03:15 PM.

                      Comment

                      Working...
                      X