ADAT does work, but often is interrupted by noise - Was: FreeBSD and snd_hdspe last-ditch attempt
Ruslan Bukin
br at bsdpad.com
Wed Jan 23 09:52:45 UTC 2013
please include also the output of
1. sysctl hw.snd
2. sysctl dev.pcm
On Wed, Jan 23, 2013 at 10:47:09AM +0100, Ralf Mardorf wrote:
> Thank you Ian :)
>
> On Wed, 23 Jan 2013 05:25:59 +0100, Ian Smith <smithi at nimnet.asn.au> wrote:
> > 'cat /dev/sndstat'
>
> I already posted it ;). However, I set sysctl hw.snd.verbose=2, here it's
> again [1].
> It's a cheap professional audio device, IOW it's not a consumer or
> semi-professional device, so cheap doesn't mean low quality. Professional
> and semi-professional devices usually don't support surround sound, but at
> least the professional devices provide special interfaces, such as AES/EBU
> and ADAT. The card I'm using comes with two analog IOs, AES/EBU, ADAT and
> it supports consumer's SPDIF.
>
> $ ls -l /dev/dsp*
> crw-rw-rw- 1 root wheel 0, 205 Jan 23 09:41 /dev/dsp0.0
> crw-rw-rw- 1 root wheel 0, 204 Jan 23 09:41 /dev/dsp1.0
> crw-rw-rw- 1 root wheel 0, 203 Jan 23 09:41 /dev/dsp2.0
> crw-rw-rw- 1 root wheel 0, 202 Jan 23 09:41 /dev/dsp3.0
> crw-rw-rw- 1 root wheel 0, 201 Jan 23 09:41 /dev/dsp4.0
> crw-rw-rw- 1 root wheel 0, 200 Jan 23 09:41 /dev/dsp5.0
> crw-rw-rw- 1 root wheel 0, 199 Jan 23 09:41 /dev/dsp6.0
> crw-rw-rw- 1 root wheel 0, 198 Jan 23 09:41 /dev/dsp7.0
>
> > have to assume you've already
> > discussed your issues with its author, Ruslan Bukin <br at bsdpad.com>
>
> Yes, Ruslan does or at least did follow the thread.
>
> I set jackd to use OSS with /dev/dsp4.0, I connected synaddsubfx
>
> $ zynaddsubfx
>
> ZynAddSubFX - Copyright (c) 2002-2009 Nasca Octavian Paul and others
> Compiled: Jan 20 2013 03:10:05
> This program is free software (GNU GPL v.2 or later) and
> it comes with ABSOLUTELY NO WARRANTY.
>
> Try 'zynaddsubfx --help' for command-line options.
> Sound Buffer Size = 256 samples
> Internal latency = 5.3 ms
> ADsynth Oscil.Size = 1024 samples
> Internal SampleRate = 48000
> Jack Output SampleRate= 48000
> ALSA lib seq_hw.c:457:(snd_seq_hw_open) open /dev/snd/seq failed: No such
> file or directory
>
> Now there sometimes is audio output and sometimes dangerous noise, that
> could damage the speakers. Jack is running without real-time,
> Frames/Period 1024, Periods/Buffer 2, Samplerae 48000, Word Length 16.
>
> Regards,
> Ralf
>
> [1]
> $ cat /dev/sndstat
> FreeBSD Audio Driver (newpcm: 64bit 2009061500/amd64)
> Installed devices:
> pcm0: <HDSPe AIO [line]> at io 0xfdff0000 irq 18 kld snd_hdspe
> (1p:1v/1r:1v) default
> snddev flags=0x2e6<AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC>
> [pcm0:play:dsp0.p0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000006
> interrupts 0, underruns 0, feed 0, ready 0
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {userland} -> feeder_mixer(0x00200010) -> feeder_format(0x00200010 ->
> 0x00201000) -> {hardware}
> pcm0:play:dsp0.p0[pcm0:virtual:dsp0.vp0]: spd 8000, fmt 0x00100008, flags
> 0x10000000, 0x00000000
> interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {userland} -> feeder_root(0x00000000) -> {hardware}
> [pcm0:record:dsp0.r0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000007
> interrupts 0, overruns 0, feed 0, hfree 131072, sfree 65536
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {hardware} -> feeder_root(0x00201000) -> feeder_format(0x00201000 ->
> 0x00200010) -> feeder_mixer(0x00200010) -> {userland}
> pcm0:record:dsp0.r0[pcm0:virtual:dsp0.vr0]: spd 8000, fmt 0x00100008,
> flags 0x10000000, 0x00000000
> interrupts 0, overruns 0, feed 0, hfree 0, sfree 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {hardware} -> feeder_root(0x00000000) -> {userland}
> pcm1: <HDSPe AIO [phone]> at io 0xfdff0000 irq 18 kld snd_hdspe
> (1p:1v/0r:0v)
> snddev
> flags=0x2e7<SIMPLEX,AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC>
> [pcm1:play:dsp1.p0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000006
> interrupts 0, underruns 0, feed 0, ready 0
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {userland} -> feeder_mixer(0x00200010) -> feeder_format(0x00200010 ->
> 0x00201000) -> {hardware}
> pcm1:play:dsp1.p0[pcm1:virtual:dsp1.vp0]: spd 8000, fmt 0x00100008, flags
> 0x10000000, 0x00000000
> interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {userland} -> feeder_root(0x00000000) -> {hardware}
> pcm2: <HDSPe AIO [aes]> at io 0xfdff0000 irq 18 kld snd_hdspe (1p:1v/1r:1v)
> snddev flags=0x2e6<AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC>
> [pcm2:play:dsp2.p0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000006
> interrupts 0, underruns 0, feed 0, ready 0
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {userland} -> feeder_mixer(0x00200010) -> feeder_format(0x00200010 ->
> 0x00201000) -> {hardware}
> pcm2:play:dsp2.p0[pcm2:virtual:dsp2.vp0]: spd 8000, fmt 0x00100008, flags
> 0x10000000, 0x00000000
> interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {userland} -> feeder_root(0x00000000) -> {hardware}
> [pcm2:record:dsp2.r0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000007
> interrupts 0, overruns 0, feed 0, hfree 131072, sfree 65536
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {hardware} -> feeder_root(0x00201000) -> feeder_format(0x00201000 ->
> 0x00200010) -> feeder_mixer(0x00200010) -> {userland}
> pcm2:record:dsp2.r0[pcm2:virtual:dsp2.vr0]: spd 8000, fmt 0x00100008,
> flags 0x10000000, 0x00000000
> interrupts 0, overruns 0, feed 0, hfree 0, sfree 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {hardware} -> feeder_root(0x00000000) -> {userland}
> pcm3: <HDSPe AIO [s/pdif]> at io 0xfdff0000 irq 18 kld snd_hdspe
> (1p:1v/1r:1v)
> snddev flags=0x2e6<AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC>
> [pcm3:play:dsp3.p0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000006
> interrupts 0, underruns 0, feed 0, ready 0
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {userland} -> feeder_mixer(0x00200010) -> feeder_format(0x00200010 ->
> 0x00201000) -> {hardware}
> pcm3:play:dsp3.p0[pcm3:virtual:dsp3.vp0]: spd 8000, fmt 0x00100008, flags
> 0x10000000, 0x00000000
> interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {userland} -> feeder_root(0x00000000) -> {hardware}
> [pcm3:record:dsp3.r0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000007
> interrupts 0, overruns 0, feed 0, hfree 131072, sfree 65536
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {hardware} -> feeder_root(0x00201000) -> feeder_format(0x00201000 ->
> 0x00200010) -> feeder_mixer(0x00200010) -> {userland}
> pcm3:record:dsp3.r0[pcm3:virtual:dsp3.vr0]: spd 8000, fmt 0x00100008,
> flags 0x10000000, 0x00000000
> interrupts 0, overruns 0, feed 0, hfree 0, sfree 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {hardware} -> feeder_root(0x00000000) -> {userland}
> pcm4: <HDSPe AIO [adat]> at io 0xfdff0000 irq 18 kld snd_hdspe
> (1p:1v/1r:1v)
> snddev flags=0x2e6<AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC>
> [pcm4:play:dsp4.p0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000006
> interrupts 0, underruns 0, feed 0, ready 0
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {userland} -> feeder_mixer(0x00200010) -> feeder_format(0x00200010 ->
> 0x00201000) -> {hardware}
> pcm4:play:dsp4.p0[pcm4:virtual:dsp4.vp0]: spd 8000, fmt 0x00100008, flags
> 0x10000000, 0x00000000
> interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {userland} -> feeder_root(0x00000000) -> {hardware}
> [pcm4:record:dsp4.r0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000007
> interrupts 0, overruns 0, feed 0, hfree 131072, sfree 65536
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {hardware} -> feeder_root(0x00201000) -> feeder_format(0x00201000 ->
> 0x00200010) -> feeder_mixer(0x00200010) -> {userland}
> pcm4:record:dsp4.r0[pcm4:virtual:dsp4.vr0]: spd 8000, fmt 0x00100008,
> flags 0x10000000, 0x00000000
> interrupts 0, overruns 0, feed 0, hfree 0, sfree 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {hardware} -> feeder_root(0x00000000) -> {userland}
> pcm5: <HDSPe AIO [adat]> at io 0xfdff0000 irq 18 kld snd_hdspe
> (1p:1v/1r:1v)
> snddev flags=0x2e6<AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC>
> [pcm5:play:dsp5.p0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000006
> interrupts 0, underruns 0, feed 0, ready 0
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {userland} -> feeder_mixer(0x00200010) -> feeder_format(0x00200010 ->
> 0x00201000) -> {hardware}
> pcm5:play:dsp5.p0[pcm5:virtual:dsp5.vp0]: spd 8000, fmt 0x00100008, flags
> 0x10000000, 0x00000000
> interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {userland} -> feeder_root(0x00000000) -> {hardware}
> [pcm5:record:dsp5.r0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000007
> interrupts 0, overruns 0, feed 0, hfree 131072, sfree 65536
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {hardware} -> feeder_root(0x00201000) -> feeder_format(0x00201000 ->
> 0x00200010) -> feeder_mixer(0x00200010) -> {userland}
> pcm5:record:dsp5.r0[pcm5:virtual:dsp5.vr0]: spd 8000, fmt 0x00100008,
> flags 0x10000000, 0x00000000
> interrupts 0, overruns 0, feed 0, hfree 0, sfree 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {hardware} -> feeder_root(0x00000000) -> {userland}
> pcm6: <HDSPe AIO [adat]> at io 0xfdff0000 irq 18 kld snd_hdspe
> (1p:1v/1r:1v)
> snddev flags=0x2e6<AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC>
> [pcm6:play:dsp6.p0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000006
> interrupts 0, underruns 0, feed 0, ready 0
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {userland} -> feeder_mixer(0x00200010) -> feeder_format(0x00200010 ->
> 0x00201000) -> {hardware}
> pcm6:play:dsp6.p0[pcm6:virtual:dsp6.vp0]: spd 8000, fmt 0x00100008, flags
> 0x10000000, 0x00000000
> interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {userland} -> feeder_root(0x00000000) -> {hardware}
> [pcm6:record:dsp6.r0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000007
> interrupts 0, overruns 0, feed 0, hfree 131072, sfree 65536
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {hardware} -> feeder_root(0x00201000) -> feeder_format(0x00201000 ->
> 0x00200010) -> feeder_mixer(0x00200010) -> {userland}
> pcm6:record:dsp6.r0[pcm6:virtual:dsp6.vr0]: spd 8000, fmt 0x00100008,
> flags 0x10000000, 0x00000000
> interrupts 0, overruns 0, feed 0, hfree 0, sfree 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {hardware} -> feeder_root(0x00000000) -> {userland}
> pcm7: <HDSPe AIO [adat]> at io 0xfdff0000 irq 18 kld snd_hdspe
> (1p:1v/1r:1v)
> snddev flags=0x2e6<AUTOVCHAN,SOFTPCMVOL,BUSY,MPSAFE,REGISTERED,VPC>
> [pcm7:play:dsp7.p0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000006
> interrupts 0, underruns 0, feed 0, ready 0
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {userland} -> feeder_mixer(0x00200010) -> feeder_format(0x00200010 ->
> 0x00201000) -> {hardware}
> pcm7:play:dsp7.p0[pcm7:virtual:dsp7.vp0]: spd 8000, fmt 0x00100008, flags
> 0x10000000, 0x00000000
> interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {userland} -> feeder_root(0x00000000) -> {hardware}
> [pcm7:record:dsp7.r0]: spd 48000, fmt 0x00200010/0x00201000, flags
> 0x00002100, 0x00000007
> interrupts 0, overruns 0, feed 0, hfree 131072, sfree 65536
> [b:131072/4096/32|bs:65536/2048/32]
> channel flags=0x2100<BUSY,HAS_VCHAN>
> {hardware} -> feeder_root(0x00201000) -> feeder_format(0x00201000 ->
> 0x00200010) -> feeder_mixer(0x00200010) -> {userland}
> pcm7:record:dsp7.r0[pcm7:virtual:dsp7.vr0]: spd 8000, fmt 0x00100008,
> flags 0x10000000, 0x00000000
> interrupts 0, overruns 0, feed 0, hfree 0, sfree 0 [b:0/0/0|bs:0/0/0]
> channel flags=0x10000000<VIRTUAL>
> {hardware} -> feeder_root(0x00000000) -> {userland}
> _______________________________________________
> freebsd-multimedia at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
> To unsubscribe, send any mail to "freebsd-multimedia-unsubscribe at freebsd.org"
More information about the freebsd-multimedia
mailing list