Subj : Virtual Surround Sound with USB Headsets on GNU/Linux
To   : Berki Yenigüun
From : Maurice Kinal
Date : Sun Nov 20 2022 07:01 pm

Hey Berki!

I checked out the site and noted (reformatted quote);

> The following open source libraries implement AC-3:
>
>  * libavcodec in ffmpeg (LGPLv2.1+) and libav (LGPLv2.1+)
>
>       * Decoder and encoder for AC-3
>       * To compile only the AC-3 decoder: --disable-everything
>                                           --enable-decoder=ac3
>                                           --enable-demuxer=ac3
>                                           --enable-parser=ac3
>         (then enable other parsers, demuxers, muxers, decoders, and
>          encoders that you need)
>       * To compile the AC-3 decoder and the AC-3 encoder:
>                                           --disable-everything
>                                           --enable-encoder=ac3
>                                           --enable-decoder=ac3
>                                           --enable-muxer=ac3
>                                           --enable-demuxer=ac3
>                                           --enable-parser=ac3
>         (then enable other parsers, demuxers, muxers, decoders, and
>          encoders that you need)
>       * Warning: When preparing to use libavcodec in any product,
>         you should always start by disabling all encoders, decoders,
>         parsers, muxers, demuxers, bitstream filters, protocols,
>         filters, and hwaccels, then selectively enabling the
>         ones that your product absolutely needs. To do this, use
>         --disable-everything as your first ./configure option. This
>         will help protect your product from unnecessary intellectual
>         property disputes as well as some security vulnerabilities.
>         If you have not added --disable-everything as your first
>         option, you should at least manually disable the encoders,
>         decoders, muxers, demuxers, and parsers for eac3, mlp, and
>         truehd.
>  * liba52 (GPLv2) used by VLC and others
>
>       * Decoder only for AC-3
>
>  * valib from AC3Filter (GPLv2)
>
>       * Decoder and encoder for AC-3. Note: Build process does not
>         allow easy removal of patented E-AC-3 code.

Of the above three listed above I have /usr/lib/liba52.so.0.0.0 and /usr/lib/libavcodec.so.59.37.100.

$ ffmpeg -version
ffmpeg version 5.1.2 Copyright (c) 2000-2022 the FFmpeg developers
built with gcc 12.2.0 (GCC)
configuration: --prefix=/usr --enable-gpl --enable-version3 --enable-nonfree --disable-static --enable-shared --disable-debug --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libxvid --enable-libx264 --enable-libx265 --enable-openssl --docdir=/usr/share/doc/ffmpeg-5.1.2
libavutil      57. 28.100 / 57. 28.100
libavcodec     59. 37.100 / 59. 37.100
libavformat    59. 27.100 / 59. 27.100
libavdevice    59.  7.100 / 59.  7.100
libavfilter     8. 44.100 /  8. 44.100
libswscale      6.  7.100 /  6.  7.100
libswresample   4.  7.100 /  4.  7.100
libpostproc    56.  6.100 / 56.  6.100

Note that none of the --enables mention anything about ac3 as per the recommendation for both the encoder or decoder.  So far it has never been an issue.

BY> I was doubtful but after hearing it, it really made a difference.

I'll take your word for it.  I used to like in the good ol' days when they had sound rooms in stores that sold audio equipment so one could listen to before buying.

BY> As I don't want to bother neighbors and prefer headsets anyway, I
BY> opted for one that supports virtual surround.

Understood.  If you're getting 2 channel stereo at least that is better than nothing which is what Winmodems (your analogy) true value was.  You're probably far ahead of the game already, comparitively speaking.

Life is good,
Maurice

... Fidonet 4K - Sweet Sixteen Penguins of the Apocalypse.
--- GNU bash, version 5.2.2(1)-release (x86_64-pc-linux-gnu)
* Origin: One of us @ (1:153/7001.2989)