ubuntustudio-bugs team mailing list archive
-
ubuntustudio-bugs team
-
Mailing list archive
-
Message #09861
[Bug 1895833] Re: unblock restrictions on alsa (max id of card and sample rate for alsa Loopback)
** Also affects: alsa-lib
Importance: Undecided
Status: New
** Also affects: alsa-utils
Importance: Undecided
Status: New
** Also affects: alsa-lib (Ubuntu)
Importance: Undecided
Status: New
** Also affects: alsa-utils (Ubuntu)
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Ubuntu
Studio Bugs, which is subscribed to alsa-utils in Ubuntu.
Matching subscriptions: Ubuntu Studio Bugs
https://bugs.launchpad.net/bugs/1895833
Title:
unblock restrictions on alsa (max id of card and sample rate for alsa
Loopback)
Status in ALSA Libraries:
New
Status in Alsa utilities:
New
Status in Ubuntu:
New
Status in alsa-lib package in Ubuntu:
New
Status in alsa-utils package in Ubuntu:
New
Bug description:
SRU Justification:
[Impact] kernel, alsa-lib, alsa-utils
We are using more and more cards recognized as sound peripherals. When the number of loopback and hardware cards exceeds 32, we can no longer use them.
Also some new devices are already using 384khz but the limitation is for alsa Loopback.
I thinks we must increse CONFIG_SND_MAX_CARDS to 256 and change 192000
sample rate value fixed in aloop.c to 384000 or 768000 to provide an
additional margin in alsa Loopback.
[Test Case]
sudo add-apt-repository -y universe
apt-get update && sudo apt-get upgrade -y
sudo apt-get install alsa alsa-*
shutdown -r now
sudo modprobe snd-aloop
sudo echo snd-aloop >> /etc/modules
sudo adduser $(whoami) audio
shutdown -r now
sudo apt-get install -y apt-get install alsa alsa-utils libasound2-dev
sudo apt-get install -y screen build-essential initramfs-tools fakeroot debconf-utils dpkg-dev debhelper bin86 flex bison pkgconf dkms python3-docutils \
libudev-dev mt-st cpufrequtils libpci-dev libssl-dev libiberty-dev libcap-dev asciidoc default-jdk libncurses-dev \
kernel-package kernel-wedge libnvpair1linux libuutil1linux libzfs2linux libzpool2linux zfs-dkms zfs-zed zfsutils-linux \
crash makedumpfile libncurses5 libncurses5-dev libelf-dev binutils-dev kexec-tools
screen
mkdir ~/megamod
cd ~/megamod
git clone git://kernel.ubuntu.com/ubuntu/ubuntu-focal.git
cd ubuntu-focal
sed -i 's/SNDRV_PCM_RATE_CONTINUOUS | SNDRV_PCM_RATE_8000_192000,/SNDRV_PCM_RATE_CONTINUOUS,/g' ./sound/drivers/aloop.c
sed -i 's/192000/768000/g' ./sound/drivers/aloop.c
grep -rnl './' -e "CONFIG_SND_MAX_CARDS=32" | xargs -i@ sed -i 's/CONFIG_SND_MAX_CARDS=32/CONFIG_SND_MAX_CARDS=256/g' @
search and replace 32 by 256 in and
./debian.master/config/annotations for CONFIG_SND_MAX_CARDS
fakeroot debian/rules clean
fakeroot debian/rules binary
dpkg -i ../linux*5.4.0-*.deb
shutdown -r now
sudo systemctl disable hv-kvp-daemon.service
####################
echo "options snd-aloop \" >> /etc/modprobe.d/alsa-base.conf
echo "index=10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45 \" >> /etc/modprobe.d/alsa-base.conf
echo "id=lp0,lp1,lp2,lp3,lp4,lp5,lp6,lp7,lp8,lp9,lp10,lp11,lp12,lp13,lp14,lp15,lp16,lp17,lp18,lp19,lp20,lp21,lp22,lp23,lp24,lp25,lp26,lp27,lp28,lp29,lp30,lp31,lp32,lp33,lp34,lp35 \" >> /etc/modprobe.d/alsa-base.conf
echo "enable=1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 \" >> /etc/modprobe.d/alsa-base.conf
echo "pcm_substreams=2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2" >> /etc/modprobe.d/alsa-base.conf
sudo su
sudo mkdir /usr/src/alsa
cd /usr/src/alsa
git clone git://git.alsa-project.org/alsa-lib.git alsa-lib
cd /usr/src/alsa/alsa-lib
./gitcompile --with-max-cards=256
make install
cp /usr/lib/libasound* /usr/lib/x86_64-linux-gnu/
cd /usr/src/alsa
git clone git://git.alsa-project.org/alsa-utils.git alsa-utils
cd /usr/src/alsa/alsa-utils
./gitcompile --with-max-cards=256
make install
shutdown -r now
[Regression Potential]
* The regression can be considered as low, because this is because
it's functional since 16.04
[Other]
* This requires a patch to be included into the kernel, alsa-lib and
alsa-utils package. - please see [Test Case] description for more
details.
* changes can be made independently and have no impact on others
[Patch]
In /sound/drivers/aloop.c:
L555 .rates = SNDRV_PCM_RATE_CONTINUOUS | SNDRV_PCM_RATE_8000_192000,
to
L555 .rates = SNDRV_PCM_RATE_CONTINUOUS,
In /sound/drivers/aloop.c:
L557 .rate_max = 192000,
to
L557 .rate_max = 768000,
In /sound/drivers/aloop.c:
L557 uinfo->value.integer.max = 192000;
to
L557 uinfo->value.integer.max = 768000;
In /debian.master/config/config.common.ubuntu
L9069 CONFIG_SND_MAX_CARDS=32
to
L9069 CONFIG_SND_MAX_CARDS=256
and update debian.master/rules.d/hooks.mk
For alsa-lib and alsa-util, package can be simply update with
./gitcompile --with-max-cards=256
Thanks everybody
To manage notifications about this bug go to:
https://bugs.launchpad.net/alsa-lib/+bug/1895833/+subscriptions