Re: [alsa-devel] snd-bebob and PrismSound Orpheus fails with snd_pcm_hw_params_set_channels
Clemens wrote:
You should replace "hw" with "plughw" in the device name.
So you were referring to:
% aplay -L plughw:CARD=Orpheus,DEV=0 Orpheus, Orpheus PCM Hardware device with all software conversions
Any error message in the system log?
% tail dmesg?.txt
==> dmesg1.txt <== this is just after booting.
[ 21.439026] r8169 0000:02:00.0 eth0: link down [ 23.809013] r8169 0000:02:00.0 eth0: link up
==> dmesg2.txt <== this is just after connecting Orpheus.
[ 21.439026] r8169 0000:02:00.0 eth0: link down [ 23.809013] r8169 0000:02:00.0 eth0: link up [ 110.079264] firewire_core 0000:08:00.0: phy config: new root=ffc1, gap_count=5 [ 110.343319] firewire_core 0000:08:00.0: phy config: new root=ffc1, gap_count=5 [ 110.580310] firewire_core 0000:08:00.0: created device fw1: GUID 00119800010001f9, S400 [ 113.660273] snd-bebob fw1.0: Detect discontinuity of CIP: 00 08
==> dmesg3.txt <== this is just after % aplay -D plughw:2,0 test.wav
[ 21.439026] r8169 0000:02:00.0 eth0: link down [ 23.809013] r8169 0000:02:00.0 eth0: link up [ 110.079264] firewire_core 0000:08:00.0: phy config: new root=ffc1, gap_count=5 [ 110.343319] firewire_core 0000:08:00.0: phy config: new root=ffc1, gap_count=5 [ 110.580310] firewire_core 0000:08:00.0: created device fw1: GUID 00119800010001f9, S400 [ 113.660273] snd-bebob fw1.0: Detect discontinuity of CIP: 00 08 [ 128.010593] snd-bebob fw1.0: Detect discontinuity of CIP: 00 08 [ 133.416998] snd-bebob fw1.0: Detect discontinuity of CIP: 00 08 [ 136.275142] snd-bebob fw1.0: Detect discontinuity of CIP: 50 70 [ 137.654178] snd-bebob fw1.0: Detect discontinuity of CIP: 70 90
% ls -l dmesg?.txt -rw-rw-r-- 1 user1 user1 72728 Apr 24 08:42 dmesg1.txt -rw-rw-r-- 1 user1 user1 73050 Apr 24 08:42 dmesg2.txt -rw-rw-r-- 1 user1 user1 73318 Apr 24 08:43 dmesg3.txt
% egrep 'Apr 24 08:42|Apr 24 08:43' /var/log/syslog
Apr 24 08:42:24 host gnome-session[1466]: WARN 2015-04-24 08:42:24 unity.dash.gsettingsscopereader GSettingsScopes.cpp:108 Error fetching protocol metadata for scope: social.scope : Valid key file could not be found in search dirs Apr 24 08:42:44 host kernel: [ 110.079264] firewire_core 0000:08:00.0: phy config: new root=ffc1, gap_count=5 Apr 24 08:42:45 host kernel: [ 110.343319] firewire_core 0000:08:00.0: phy config: new root=ffc1, gap_count=5 Apr 24 08:42:45 host kernel: [ 110.580310] firewire_core 0000:08:00.0: created device fw1: GUID 00119800010001f9, S400 Apr 24 08:42:48 host kernel: [ 113.660273] snd-bebob fw1.0: Detect discontinuity of CIP: 00 08 Apr 24 08:43:02 host kernel: [ 128.010593] snd-bebob fw1.0: Detect discontinuity of CIP: 00 08 Apr 24 08:43:08 host kernel: [ 133.416998] snd-bebob fw1.0: Detect discontinuity of CIP: 00 08 Apr 24 08:43:11 host rtkit-daemon[1163]: Supervising 4 threads of 1 processes of 1 users. Apr 24 08:43:11 host rtkit-daemon[1163]: Successfully made thread 1900 of process 1540 (n/a) owned by '1000' RT at priority 5. Apr 24 08:43:11 host rtkit-daemon[1163]: Supervising 5 threads of 1 processes of 1 users. Apr 24 08:43:11 host kernel: [ 136.275142] snd-bebob fw1.0: Detect discontinuity of CIP: 50 70 Apr 24 08:43:12 host kernel: [ 137.654178] snd-bebob fw1.0: Detect discontinuity of CIP: 70 90 Apr 24 08:43:14 host pulseaudio[1540]: [alsa-source-BeBoB] alsa-util.c: Could not recover from POLLERR|POLLNVAL|POLLHUP and XRUN: Connection timed out Apr 24 08:43:17 host systemd[1]: Stopping User Manager for UID 112...
***
Any clues?
Mike Ood -- % uname -a Linux host 3.19.0-15-generic #15-Ubuntu SMP Thu Apr 16 23:32:37 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux --
Mike Ood wrote:
Clemens wrote:
Any error message in the system log?
this is just after % aplay -D plughw:2,0 test.wav ... [ 110.580310] firewire_core 0000:08:00.0: created device fw1: GUID 00119800010001f9, S400 [ 113.660273] snd-bebob fw1.0: Detect discontinuity of CIP: 00 08 [ 128.010593] snd-bebob fw1.0: Detect discontinuity of CIP: 00 08 [ 133.416998] snd-bebob fw1.0: Detect discontinuity of CIP: 00 08 [ 136.275142] snd-bebob fw1.0: Detect discontinuity of CIP: 50 70 [ 137.654178] snd-bebob fw1.0: Detect discontinuity of CIP: 70 90
This means that some packet to be received from the device is (or appears to be) missing. In theory, this is supposed to happen only when noise on the cable has corrupted the signal, but this might be a problem with this device's firmware.
Does this device (with this cable) work in Windows or OS X?
At the moment, a missing packet results in the driver just stopping the stream. There would be better ways to handle this, but I haven't yet found the time to implement this.
Regards, Clemens
Hi,
On Apr 23 2015 21:13, Mike Ood wrote:
% cat /proc/asound/card2/firewire/clock Sampling rate: 44100 Clock Source: External (MSU-dest: 7)
According to this output, the internal clock of your device is set to synchronize to external source such as S/PDIF or word clock.
If your device is implemented with no customization of the setting and you didn't give any external sources to your device, the device is not synchronized. (If you give it correctly, please inform it to us.)
I think this is a cause of this issue. * Your device lost synchronization. * Transfers streaming packets with discontinuity. * Then snd-bebob driver (in fact snd-firewire-lib) cannot continue.
On Apr 24 2015 17:29, Clemens Ladisch wrote:
this is just after % aplay -D plughw:2,0 test.wav ... [ 110.580310] firewire_core 0000:08:00.0: created device fw1: GUID 00119800010001f9, S400 [ 113.660273] snd-bebob fw1.0: Detect discontinuity of CIP: 00 08 [ 128.010593] snd-bebob fw1.0: Detect discontinuity of CIP: 00 08 [ 133.416998] snd-bebob fw1.0: Detect discontinuity of CIP: 00 08 [ 136.275142] snd-bebob fw1.0: Detect discontinuity of CIP: 50 70 [ 137.654178] snd-bebob fw1.0: Detect discontinuity of CIP: 70 90
This means that some packet to be received from the device is (or appears to be) missing. In theory, this is supposed to happen only when noise on the cable has corrupted the signal, but this might be a problem with this device's firmware.
Does this device (with this cable) work in Windows or OS X?
libffado also supports this device and I guess you can start streaming with jackd and firewire backend because libffado implements loose checker of packet discontinuity.
Currently, libffado has a bug to fail to switch clock source for usual BeBoB driver. So we have no way to set the source of clock correctly. I've tried to fix it but get stuck deeply into ffado's fault and given up.
For our information: http://subversion.ffado.org/wiki/AvcModels/PrismSoundOrpheus
Regards
Takashi Sakamoto
participants (3)
-
Clemens Ladisch
-
Mike Ood
-
Takashi Sakamoto