jack2 icon indicating copy to clipboard operation
jack2 copied to clipboard

Error using HDMI as second sound card (playback only card)

Open elCaxper opened this issue 3 years ago • 0 comments

If we use a second audio card (USB audio card) we can use jack with two cards using the methods shown in https://github.com/jackaudio/jackaudio.github.com/wiki#multiple-soundcards.

When we try to do the same using the HDMI card. image

We cannot to run "alsa_out" using the card HDMI.

Environment

We are using jackdmp version 1.9.17 tmpdir /dev/shm protocol 8 running in a embedded system which run a Linux. The operating system has been built using Yocto.

Steps To Reproduce

To reproduce the problem we first execute the jack server:

jackd -m -dalsa -r48000 -p1024 -n2  -m -H -Chw:1,0 -Phw:1,0 -o2 -i2 -s -S 

In other console we run:

/usr/bin/alsa_out -j head2 -dhw:0

And we get this errors:

Jack: JackClient::SetupDriverSync driver sem in flush mode
Jack: JackLinuxFutex::Connect name = jack_sem.0_default_head2
Jack: Clock source : system clock via clock_gettime
Jack: JackLibClient::Open name = head2 refnum = 2
selected sample format: 32bit
Jack: JackClient::PortRegister ref = 2 name = head2:playback_1 type = 32 bit float mono audio port_index = 7
Jack: JackClient::PortRegister ref = 2 name = head2:playback_2 type = 32 bit float mono audio port_index = 8
Jack: JackClient::Activate
Jack: JackPosixThread::StartImp : create non RT thread
Jack: JackPosixThread::ThreadHandler : start
Jack: JackClient::kBufferSizeCallback buffer_size = 1024
Jack: JackClient::Init : period = 21333 computation = 100 constraint = 21333
Jack: JackPosixThread::AcquireRealTimeImp priority = 90

I attach the complete logs: logs_alsa_out.txt

Second approach

If we try to use an audioadapter to use the second audio card. We first execute the server as before:

jackd -m -dalsa -r48000 -p1024 -n2  -m -H -Chw:1,0 -Phw:1,0 -o2 -i2 -s -S 

In other console we run:

jack_load --server default head2 audioadapter -i "-dhw:0"

And we get this errors:

Jack: JackClient::SetupDriverSync driver sem in flush mode
Jack: JackLinuxFutex::Connect name = jack_sem.0_default_head2
Jack: Clock source : system clock via clock_gettime
Jack: JackLibClient::Open name = head2 refnum = 2
selected sample format: 32bit
Jack: JackClient::PortRegister ref = 2 name = head2:playback_1 type = 32 bit float mono audio port_index = 7
Jack: JackClient::PortRegister ref = 2 name = head2:playback_2 type = 32 bit float mono audio port_index = 8
Jack: JackClient::Activate
Jack: JackPosixThread::StartImp : create non RT thread
Jack: JackPosixThread::ThreadHandler : start
Jack: JackClient::kBufferSizeCallback buffer_size = 1024
Jack: JackClient::Init : period = 21333 computation = 100 constraint = 21333
Jack: JackPosixThread::AcquireRealTimeImp priority = 90

I attach the complete logs: logs_load.txt

We have also try to execute jackd using the HDMI card and attach the other card using alsa_out or jack_load but it doesn't work. We don't get any error but we can't hear any sound.

elCaxper avatar Jun 09 '22 12:06 elCaxper