In an application I am writing, I am getting an error message out
stderr (see email subject), and a connection failure return result,
when I try to use jack_connect() from inside a
jack_set_port_registration_callback function, using Jack2. My goal is
to have the application remember and re-connect to a disconnected port
if/when it "comes back." Am I going to need to create a mostly
sleeping thread just for port re-connections attempts, or is there
something obvious I am missing?
Thanks,
Ethan...
A lot of the traffic on jack-devel lately has been
routine linux audio user questions, often concerning
problems that aren't anything to do with JACK. This
makes it difficult to follow actual JACK development
posts as they tend to get buried.
Would a separate jack-users list be a good idea?
John
alsa_in reading from ALSA loopback often injects pops and crackles into
audio when vivaldi web browser has difficulty with real-time audio
processing.
ALSA loopback's clock is fed from audio signal of ALSA applications which
cannot have a regular clock.
I haven't tried alsa_in on any hardware soundcard, yet.
I don't see actual xruns from alsa_in or alsa_out, but I hear pops and
crackles.
Would the following setup cause pops and crackles?
1. Vivaldi web browser, mpv, mplayer, ... --> ALSA dmix --> onboard SPDIF
Out --> SPDIF In of Creative Sound Blaster X-Fi HD USB --(alsa_in) -->
netjack1 ==(ethernet)==> Jack ALSA backend --> HiFiBerry Amp2 --> Speakers
2. netjack1 --(alsa_out)--> headphone jack of X-Fi HD USB --> headphones
-----On Raspberry Pi 3B+
jackd -P 90 -d alsa -d HiFiBerryAmp2 -p 512 -n 2 -P -r 48000
jack_netsource -H 192.168.30.2 -o 0 -i 2 -O 0 -I 0 -n 2 -N guardian
-----On This Computer
jackd -P 90 -d netone -p 512 -n 2 -r 48000
alsa_out -j headphones -d headphones -p 512 -n 3 -q 2
alsa_in -j spdif-in -d spdif-in -p 512 -n 3 -q 2
What is the difference between
jackd -n2 -p192
and
jackd -n3 -p128
Both give a total of 384 samples in buffers.
What's the difference for jackd?
Regards
Holger
On Tue, Aug 06, 2019 at 01:06:31AM -0400, liebrecht(a)grossmann-venter.com wrote:
> It looks to me like it is and ALSA problem....
What happens if you do the following?
1. Disable Pulseaudio
2. Look in /proc/asound/ to see which hw device (hw:0, hw:1 etc)
your 1818 is
3. Start jackd from command line with -dhw:0 (or whichever one
is the 1818) instead of the "fancy" name
John
Hello,
I do not know if this is the correct and appropriate location to post this
question, I was looking for a Jackaudio forum and this is the first page
that came up. SOooo, here's my delimmna, as a musician and part time geek:
If I buy an 8 Channel USB Audio interface, will Jackaudio controll/
bypass Alsa, and then allow 8 channel inputs record directly to 8
SIMULTANEOUS tracks of a live band into Traction Waveform or Ardour? Or
does Jackaudio just work as a plugin with extra functions to the Alsa
drivers, and merely allow the DAW software and hardware interface work
together at the same time? I am NOT gonna be programming a midi drumset,
but I am gonna be recording an actual real live drumset, with bass guitar,
lead guitar, and a temporary vocal track to record the foundation of each
song for an upcoming album project. THEN my musicians will go back and
punch in any mistakes and dub over them. So, IS Jackaudio capable of
SIMULTANEOUS Channel to Track recording of more than two channel/ tracks?
That is all I need to know before I make my hardware and software purchases
over the next couple of weeks. Thank you for the answers to my questions.
And if this ISN"T the correct forum, please send me a link to the correct
one so I don't trouble the wrong teams that are busy working on pure code
work. Thank you again for your patience. OH and for the record, If/ when
Jackaudio can do this task for us, I'll be bragging on everybody involved
for the rest of my career. thanks again, and have a wonderful week.
Fraternally,
Nathan.
I made ALSA applications output audio to jack by applying instructions on
https://alsa.opensrc.org/Jack_and_Loopback_device_as_Alsa-to-Jack_bridge
# Gentoo Linux aarch64 on Raspberry Pi 3 B+
jackd -P 90 -d alsa -d speakers -p 512 -n 3 -P -r 48000
jack_netsource -H 192.168.30.2 -o 0 -i 2 -O 0 -I 0 -n 3 -N guardian
# Gentoo Linux amd64 on my desktop computer
jackd -P 90 -d netone -p 512 -n 3 -r 48000
alsa_out -j headphones -d headphones -c 2 -p 512 -n 3 -q 3
alsa_in -j cloop -d cloop -c 2 -p 1024 -n 2 -q 3
jackd, jack_netsource, alsa_in, and alsa_out belong to audio cgroup which
allocates 95% of CPU time to its group members.
While youtube videos are played in vivaldi web browser, chrome web browser,
and firefox web browser, I occasionally hear audible pops. It seems all
pops come from `alsa_in`. I also tried alsa_in -p 1024 -n 3 -q 2|3|4, but
it doesn't eliminate pops.
Here's a part of ~/.asoundrc on my desktop computer.
pcm.loophw00 {
type hw
card Loopback
device 0
subdevice 0
format S16_LE
rate 48000
channels 2
}
pcm.lmix {
type dmix
ipc_key 219347
slave {
pcm "loophw00"
period_time 0
period_size 512
periods 4
format S16_LE
rate 48000
channels 2
}
bindings {
0 0
1 1
}
}
pcm.cloop {
type hw
card Loopback
device 1
subdevice 0
format S16_LE
rate 48000
channels 2
}
pcm.!default {
type plug
slave {
pcm "lmix"
format S16_LE
channels 2
rate 48000
}
rate_converter "samplerate_best"
}
Is it impossible to eliminate pops from alsa_in running on cloop which is
just alsa loopback?
Anyone have an in depth treatise on xruns and how to minimize them. By
that I dont mean just adjusting the buffer size, I mean really getting
into the gears of why xruns happen and how to potentially minimize them.
Reason I ask is that I use jack on a live music basis amd it is crucial
for me to get no more than 2.9ms latency.
I can hear and feel every latency above above that.
I am lucky with mixbus and jack on Linux to get 2.9ms with the
occasional xrun every 2 minutes, but I want to see if I cannot eliminate
them.
Any advice or point to very relevant reference material will be
appreciated.
Thanks