Sound card, Audio interfaces, ALSA, Jackd issues

216 views
Skip to first unread message

Carlos sanchiavedraZ

unread,
May 27, 2017, 3:25:14 PM5/27/17
to maru-...@googlegroups.com
Hello again.

As mentioned in my previous email, here are some notes about

  Sound card, Audio interfaces, ALSA, Jackd issues

I've had in MaruOS v3:

- Notes are at the end of this mail and attached as a Markdown file for convenience

- I can create more specific tickets in the repo about problems, fixes and features, and documentation/posts in the wiki/forum once we identify what's actually a bug or possible feature.

Apologies if something is already fixed or is in some documentation that I didn't find on my previous search.

Thanks again.
--

==========================================

  Soundcard, ALSA, Jackd issues
 
  (Maru-v0.3 (installed from maru-v0.3-installer-hammerhead-linux-64fe8f83) on a Nexus 5)
==========================================
 
Testing to get some audio from Debian.


#### Jackd tests (1)

* jackd doesn't work with dummy backend w. internal soundcard (msm8974taikomtp)

'''
> maru@jessie:~$ jackd -r -d dummy -r 44100
jackd 0.124.1
Copyright 2001-2009 Paul Davis, Stephane Letz, Jack O'Quinn, Torben
 Hohn and others.
jackd comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
 
JACK compiled with System V SHM support.
loading driver ..
creating dummy driver ... dummy_pcm|44100|1024|23219|2|2
Segmentation fault

'''

#### Jackd tests (2)

* jackd doesn't work with alsa backend w. internal soundcard (msm8974taikomtp)

'''
> root@jessie:~# jackd --no-realtime -r 44100 -d alsa
jackd 0.124.1
Copyright 2001-2009 Paul Davis, Stephane Letz, Jack O'Quinn, Torben
jackd comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
 
JACK compiled with System V SHM support.
loading driver ..
creating alsa driver ... hw:0|hw:0|1024|2|48000|0|0|nomon|swmeter|-
control open "hw:0" (No such file or directory)
ALSA lib pcm_hw.c:1667:(_snd_pcm_hw_open) Invalid value for card
ALSA lib pcm_hw.c:1667:(_snd_pcm_hw_open) Invalid value for card
ALSA: Cannot open PCM device alsa_pcm for playback. Falling back to
cannot load driver module alsa
'''


#### Try solving audiocard not working with alsa/jackd
(see
https://bugs.launchpad.net/ubuntu/+source/android/+bug/1276901
)

    1) Check '/proc/asound/cards' and alsa config
'''
> root@jessie:~# cat /proc/asound/cards
 0 [msm8974taikomtp]: msm8974-taiko-m - msm8974-taiko-mtp-snd-card
                      msm8974-taiko-mtp-snd-card

> root@jessie:~# cat /usr/share/alsa/ucm/msm8974-taiko-mtp-snd-card
cat: /usr/share/alsa/ucm/msm8974-taiko-mtp-snd-card: No such file or directory

> root@jessie:~# ls -la /usr/share/alsa/ucm/msm8974-taiko-mtp-snd-card
ls: cannot access /usr/share/alsa/ucm/msm8974-taiko-mtp-snd-card: No such file or directory

> root@jessie:~# ls -la /usr/share/alsa/ucm
DAISY-I2S/              SDP4430/
Manta-I2S/              Tuna/
Manta-SPDIF/            apq8064-tabla-snd-card/
PandaBoard/             tegra-rt5640/
PandaBoardES/           tegraalc5632/
'''

    2.) Create the path '/usr/share/alsa/ucm/msm8974-taiko-mtp-snd-card'
'''
> root@jessie:~# mkdir /usr/share/alsa/ucm/msm8974-taiko-mtp-snd-card
'''

    3.) Copy the three files from
'''
'/usr/share/alsa/ucm/apq8064-tabla-snd-card/'
to
'/usr/share/alsa/ucm/msm8974-taiko-mtp-snd-card'

> root@jessie:~# cp /usr/share/alsa/ucm/apq8064-tabla-snd-card/* /usr
/share/alsa/ucm/msm8974-taiko-mtp-snd-card

> root@jessie:~# ls -la /usr/share/alsa/ucm/msm8974-taiko-mtp-snd-card
total 24
drwxr-xr-x.  2 root root 4096 Mar 16 01:18 .
drwxr-xr-x. 13 root root 4096 Mar 16 01:16 ..
-rw-r--r--.  1 root root 5870 Mar 16 01:18 HiFi
-rw-r--r--.  1 root root 2584 Mar 16 01:18 VoiceCall
-rw-r--r--.  1 root root  154 Mar 16 01:18 apq8064-tabla-snd-card.conf
'''

    4.) Rename 'apq8064-tabla-snd-card.conf' to 'msm8974-taiko-mtp-snd-card.conf'
    5.) Modify the files 'HiFi' and 'VoiceCall'. Find&replaced 'apq8064tablasnd' with 'msm8974taikomtpsnd'
'''
> root@jessie:~# cd /usr/share/alsa/ucm/msm8974-taiko-mtp-snd-card

> root@jessie:/usr/share/alsa/ucm/msm8974-taiko-mtp-snd-card# ls
HiFi  VoiceCall  apq8064-tabla-snd-card.conf

'''

Now it seems that jackd runs (no Segmentation Fault)
'''
> root@jessie:# jackd -d alsa -r 44100
jackd 0.124.1
Copyright 2001-2009 Paul Davis, Stephane Letz, Jack O'Quinn, Torben Hohn and others.
jackd comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details


JACK is running in realtime mode, but you are not allowed to use realtime scheduling.
Please check your /etc/security/limits.conf for the following line
and correct/add it if necessary:

  @audio          -       rtprio          99

After applying these changes, please re-login in order for them to take effect.

You don't appear to have a sane system configuration. It is very likely that you
encounter xruns. Please apply all the above mentioned changes and start jack again!
'''

But not functional
'''
> root@jessie:# aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)

> root@jessie:# arecord -d 10 -f cd -t wav -D copy foobar.wav
ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM copy
arecord: main:722: audio open error: No such file or directory

> root@jessie:# cat /etc/asound.conf
cat: /etc/asound.conf: No such file or directory

> root@jessie:# cat ~/asoundrc
cat: /root/asoundrc: No such file or directory

> root@jessie:# cat/usr/share/alsa/alsa.conf.
-su: cat/usr/share/alsa/alsa.conf.: No such file or directory
'''

Testing external USB interfaces and following these steps doesn't work.



#### Test if possible to connect via alsa not using jack, but problems as before:

'''
> root@jessie:~# cat /proc/asound/cards
 0 [msm8974taikomtp]: msm8974-taiko-m - msm8974-taiko-mtp-snd-card
                      msm8974-taiko-mtp-snd-card

> root@jessie:~# ami  
amidi   amixer 

> root@jessie:~# amixer
amixer: Mixer attach default error: No such file or directory

> root@jessie:~# aconnect
ALSA lib seq_hw.c:457:(snd_seq_hw_open) open /dev/snd/seq failed: No such file or directory
can't open sequencer

> root@jessie:~# aconnect -i
ALSA lib seq_hw.c:457:(snd_seq_hw_open) open /dev/snd/seq failed: No such file or directory
can't open sequencer
'''


sanchiavedraZ--MaruOS_v3--issues--Sound card, Audio interfaces, ALSA, Jackd issues.md

Georgian Chituc

unread,
Jun 1, 2017, 4:31:21 PM6/1/17
to Maru OS dev
I've fixed sound , by using a apk that play the raw sound streamed from pulse from debian

Preetam

unread,
Jun 5, 2017, 7:46:06 PM6/5/17
to Maru OS dev
Thanks for the detailed feedback again.

Again, these issues probably have a lot to do with the container configuration and what devices are passed through. Take a look at https://github.com/maruos/maruos/issues/29 for USB passthrough. You will need to look up some documentation on LXC to understand the config file.

Feel free to send over a PR for the container configuration file if you find what makes this work, I'm happy to merge these things in. I just haven't done so because I haven't had a need for similar hardware access in my own use-cases.

Carlos

unread,
Jun 6, 2017, 11:09:44 AM6/6/17
to Georgian Chituc, Maru OS dev
Hi,



2017-06-01 13:31 GMT-07:00 Georgian Chituc <diana...@gmail.com>:

> I've fixed sound , by using a apk that play the raw sound streamed from
> pulse from debian
>
> --
>
>

That's great, Georgian, with that there's some sound in debian. Would love
to do some testing.


I guess there is also some possibility to config the container or some
other tweak to have direct access to the sound device from the kernel, or
something that could offer a better latency.

Reply all
Reply to author
Forward
0 new messages