hallo,
i just bought the digi9636 with the 8 out extention board and compiled the alsa driver Version 0.5.11 on a new mandrake 8.0 system
aplay works and plays back a wave file on one channel, this should be ok.
[alex@snd bin]$ aplay ~alex/fluss.wav Aplay: version 0.5.10 by Jaroslav Kysela perex@suse.cz Using soundcard 'RME Digi9652 at 0xea000000, irq 11' Playing WAVE '/home/alex/fluss.wav' : Signed 16-bit Little Endian, Rate 44100 Hz, Mono
i compiled pd-33test3 with SOUND_ALSA=OLD successfully,
when i start: ./pd -alsa
i get [alex@snd bin]$ ./pd -alsa decreasing input channels to maximum of 1
decreasing output channels to maximum of 1
alsa_write: File descriptor in bad state error: failed to open MIDI ports; continuing without MIDI. snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state
do i need the special audio-rme.tar.gz drivers? i would like to play sound out of the 8 channels?
thanks for help, alex
[alex@snd src]$ /sbin/lsmod
Module Size Used by
r128 144688 1
agpgart 21280 3
snd-pcm-oss 19728 0
snd-pcm-plugin 14352 0 [snd-pcm-oss]
snd-mixer-oss 4672 0 [snd-pcm-oss]
snd-mixer 29520 0 [snd-mixer-oss]
snd-card-rme9652 1504 2
snd-rme9652 11968 0 [snd-card-rme9652]
snd-pcm 36960 2 [snd-pcm-oss snd-pcm-plugin snd-rme9652]
snd-timer 10496 0 [snd-pcm]
snd-rme9652_mem 1472 2 [snd-rme9652]
snd 40720 7 [snd-pcm-oss snd-pcm-plugin snd-mixer-oss
snd-mixer snd-card-rme9652 snd-rme9652 snd-pcm snd-timer]soundcore
3504 1 [snd]
8139too 11696 1 (autoclean)
usb-uhci 20672 0 (unused)
usbcore 47248 1 [usb-uhci]
supermount 32496 4 (autoclean)
[alex@snd src]$
[alex@snd bin]$ cat /proc/asound/pcm
00-00: RME Digi9652 : RME Digi9652 : playback 26 : capture 26
[alex@snd bin]$
[alex@snd bin]$ cat /proc/asound/devices
0: [0] : control
16: [0- 0]: digital audio playback
24: [0- 0]: digital audio capture
33: : timer
Hi Alex,
I'm just now trying to do the same thing. My plan is to use Guenter's driver, which requires a 2.4 kernel. I just tried under alsa 0.9 and got nowhere.
Previously I have used RMEs wuth RedHat 6.2 using an older version of Guenter's driver but I can't stand the idea of installing RH 6.2 on a new machine...
I plan to fix Pd to work with the "new" alsa but I'm waiting for alsa to stabilize a bit more first.
Incidentally, if "aplay" can't play more than mono, I don't imagine you'll find many applications other than Pd that can do multichannel over RME...
cheers Miller
On Wed, May 16, 2001 at 11:50:17PM +0200, Alexander Tuchacek wrote:
hallo,
i just bought the digi9636 with the 8 out extention board and compiled the alsa driver Version 0.5.11 on a new mandrake 8.0 system
aplay works and plays back a wave file on one channel, this should be ok.
[alex@snd bin]$ aplay ~alex/fluss.wav Aplay: version 0.5.10 by Jaroslav Kysela perex@suse.cz Using soundcard 'RME Digi9652 at 0xea000000, irq 11' Playing WAVE '/home/alex/fluss.wav' : Signed 16-bit Little Endian, Rate 44100 Hz, Mono
i compiled pd-33test3 with SOUND_ALSA=OLD successfully,
when i start: ./pd -alsa
i get [alex@snd bin]$ ./pd -alsa decreasing input channels to maximum of 1
decreasing output channels to maximum of 1
alsa_write: File descriptor in bad state error: failed to open MIDI ports; continuing without MIDI. snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state
do i need the special audio-rme.tar.gz drivers? i would like to play sound out of the 8 channels?
thanks for help, alex
[alex@snd src]$ /sbin/lsmod Module Size Used by r128 144688 1 agpgart 21280 3 snd-pcm-oss 19728 0 snd-pcm-plugin 14352 0 [snd-pcm-oss] snd-mixer-oss 4672 0 [snd-pcm-oss] snd-mixer 29520 0 [snd-mixer-oss] snd-card-rme9652 1504 2 snd-rme9652 11968 0 [snd-card-rme9652] snd-pcm 36960 2 [snd-pcm-oss snd-pcm-plugin snd-rme9652] snd-timer 10496 0 [snd-pcm] snd-rme9652_mem 1472 2 [snd-rme9652] snd 40720 7 [snd-pcm-oss snd-pcm-plugin snd-mixer-oss snd-mixer snd-card-rme9652 snd-rme9652 snd-pcm snd-timer]soundcore
3504 1 [snd] 8139too 11696 1 (autoclean) usb-uhci 20672 0 (unused) usbcore 47248 1 [usb-uhci] supermount 32496 4 (autoclean) [alex@snd src]$[alex@snd bin]$ cat /proc/asound/pcm 00-00: RME Digi9652 : RME Digi9652 : playback 26 : capture 26 [alex@snd bin]$
[alex@snd bin]$ cat /proc/asound/devices 0: [0] : control 16: [0- 0]: digital audio playback 24: [0- 0]: digital audio capture 33: : timer
Alex,
I am positive that the alsa driver 5.11 will not work. You can try the new alsa beta drivers (0.9), recompile pd for the newer alsa, and specify the alsa device on the command line as "plug:0,0". The big problem is that the RME cards are almost the only ones that are not interleaved and the current alsa code assumes interleaved - using "plug:0,0" should magically take care of this problem in theory (through the ugly hack of interleaving the data so that pd can then deinterleave it . . . ughh).
Karl
On Wed, 16 May 2001, Miller Puckette wrote:
Hi Alex,
I'm just now trying to do the same thing. My plan is to use Guenter's driver, which requires a 2.4 kernel. I just tried under alsa 0.9 and got nowhere.
Previously I have used RMEs wuth RedHat 6.2 using an older version of Guenter's driver but I can't stand the idea of installing RH 6.2 on a new machine...
I plan to fix Pd to work with the "new" alsa but I'm waiting for alsa to stabilize a bit more first.
Incidentally, if "aplay" can't play more than mono, I don't imagine you'll find many applications other than Pd that can do multichannel over RME...
cheers Miller
On Wed, May 16, 2001 at 11:50:17PM +0200, Alexander Tuchacek wrote:
hallo,
i just bought the digi9636 with the 8 out extention board and compiled the alsa driver Version 0.5.11 on a new mandrake 8.0 system
aplay works and plays back a wave file on one channel, this should be ok.
[alex@snd bin]$ aplay ~alex/fluss.wav Aplay: version 0.5.10 by Jaroslav Kysela perex@suse.cz Using soundcard 'RME Digi9652 at 0xea000000, irq 11' Playing WAVE '/home/alex/fluss.wav' : Signed 16-bit Little Endian, Rate 44100 Hz, Mono
i compiled pd-33test3 with SOUND_ALSA=OLD successfully,
when i start: ./pd -alsa
i get [alex@snd bin]$ ./pd -alsa decreasing input channels to maximum of 1
decreasing output channels to maximum of 1
alsa_write: File descriptor in bad state error: failed to open MIDI ports; continuing without MIDI. snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state snd_pcm_channel_status (input): File descriptor in bad state
do i need the special audio-rme.tar.gz drivers? i would like to play sound out of the 8 channels?
thanks for help, alex
[alex@snd src]$ /sbin/lsmod Module Size Used by r128 144688 1 agpgart 21280 3 snd-pcm-oss 19728 0 snd-pcm-plugin 14352 0 [snd-pcm-oss] snd-mixer-oss 4672 0 [snd-pcm-oss] snd-mixer 29520 0 [snd-mixer-oss] snd-card-rme9652 1504 2 snd-rme9652 11968 0 [snd-card-rme9652] snd-pcm 36960 2 [snd-pcm-oss snd-pcm-plugin snd-rme9652] snd-timer 10496 0 [snd-pcm] snd-rme9652_mem 1472 2 [snd-rme9652] snd 40720 7 [snd-pcm-oss snd-pcm-plugin snd-mixer-oss snd-mixer snd-card-rme9652 snd-rme9652 snd-pcm snd-timer]soundcore 3504 1 [snd] 8139too 11696 1 (autoclean) usb-uhci 20672 0 (unused) usbcore 47248 1 [usb-uhci] supermount 32496 4 (autoclean) [alex@snd src]$
[alex@snd bin]$ cat /proc/asound/pcm 00-00: RME Digi9652 : RME Digi9652 : playback 26 : capture 26 [alex@snd bin]$ [alex@snd bin]$ cat /proc/asound/devices 0: [0] : control 16: [0- 0]: digital audio playback 24: [0- 0]: digital audio capture 33: : timer
| Karl W. MacMillan | | Computer Music Department | | Peabody Institute of the Johns Hopkins University | | karlmac@peabody.jhu.edu | | mambo.peabody.jhu.edu/~karlmac |
Am Mittwoch, 16. Mai 2001 22:42 schrieben Sie:
Alex,
I am positive that the alsa driver 5.11 will not work. You can try the new alsa beta drivers (0.9), recompile pd for the newer alsa, and specify the alsa device on the command line as "plug:0,0". The big problem is that the RME cards are almost the only ones that are not interleaved and the current alsa code assumes interleaved - using "plug:0,0" should magically take care of this problem in theory (through the ugly hack of interleaving the data so that pd can then deinterleave it . . . ughh).
Karl
hi karl,
is this what you mean? i recompiled the latest alsa driver 0.9.0beta4, do this on the commandline.
[alex@snd bin]$ ./pd -alsadev plug:0,0 Sample width set to 4 fragsize a 128 fragsize b 128 nfrags a 12 pd: pcm_params.c:331: snd_pcm_hw_param_set_last: Assertion `err >= 0' failed. Abgebrochen [alex@snd bin]$
in oss emulation i get it to run, but i need the 8 output channels? any idea?
[alex@snd bin]$ ./pd -frags 8 OSS: Could not set fragment size OSS: requested audio buffer size 8820 limited to 4096 error: failed to open MIDI ports; continuing without MIDI.
thanks to all, alex
Alex,
That is what I meant - oh well :( I won't be able to really look at this for a while, but maybe someone else can get this going.
Karl
On Thu, 17 May 2001, Alexander Tuchacek wrote:
Am Mittwoch, 16. Mai 2001 22:42 schrieben Sie:
Alex,
I am positive that the alsa driver 5.11 will not work. You can try the new alsa beta drivers (0.9), recompile pd for the newer alsa, and specify the alsa device on the command line as "plug:0,0". The big problem is that the RME cards are almost the only ones that are not interleaved and the current alsa code assumes interleaved - using "plug:0,0" should magically take care of this problem in theory (through the ugly hack of interleaving the data so that pd can then deinterleave it . . . ughh).
Karl
hi karl,
is this what you mean? i recompiled the latest alsa driver 0.9.0beta4, do this on the commandline.
[alex@snd bin]$ ./pd -alsadev plug:0,0 Sample width set to 4 fragsize a 128 fragsize b 128 nfrags a 12 pd: pcm_params.c:331: snd_pcm_hw_param_set_last: Assertion `err >= 0' failed. Abgebrochen [alex@snd bin]$
in oss emulation i get it to run, but i need the 8 output channels? any idea?
[alex@snd bin]$ ./pd -frags 8 OSS: Could not set fragment size OSS: requested audio buffer size 8820 limited to 4096 error: failed to open MIDI ports; continuing without MIDI.
thanks to all, alex
| Karl W. MacMillan | | Computer Music Department | | Peabody Institute of the Johns Hopkins University | | karlmac@peabody.jhu.edu | | mambo.peabody.jhu.edu/~karlmac |
hallo,
as i know now its not so easy to use the rme hammerfall card in mulichannel mode with pd. my problem is that i need it ugently for an exibition and would like to ask if somone else has an idea howto solve multi-channel playback in pd.
shall i switch to an older linux distribution? change the alsa driver? buy the commercial oss driver? change to windows (dont like)?
does anyone have experience whis the hammerfall that works?
many thanks,
alex
That is what I meant - oh well :( I won't be able to really look at this for a while, but maybe someone else can get this going.
Karl
On Thu, 17 May 2001, Alexander Tuchacek wrote:
Am Mittwoch, 16. Mai 2001 22:42 schrieben Sie:
Alex,
I am positive that the alsa driver 5.11 will not work. You can try the new alsa beta drivers (0.9), recompile pd for the newer alsa, and specify the alsa device on the command line as "plug:0,0". The big problem is that the RME cards are almost the only ones that are not interleaved and the current alsa code assumes interleaved - using "plug:0,0" should magically take care of this problem in theory (through the ugly hack of interleaving the data so that pd can then deinterleave it . . . ughh).
Karl
hi karl,
is this what you mean? i recompiled the latest alsa driver 0.9.0beta4, do this on the commandline.
[alex@snd bin]$ ./pd -alsadev plug:0,0 Sample width set to 4 fragsize a 128 fragsize b 128 nfrags a 12 pd: pcm_params.c:331: snd_pcm_hw_param_set_last: Assertion `err >= 0' failed. Abgebrochen [alex@snd bin]$
in oss emulation i get it to run, but i need the 8 output channels? any idea?
[alex@snd bin]$ ./pd -frags 8 OSS: Could not set fragment size OSS: requested audio buffer size 8820 limited to 4096 error: failed to open MIDI ports; continuing without MIDI.
thanks to all, alex
Hi there,
On Wed, 16 May 2001, Miller Puckette wrote:
Hi Alex,
I'm just now trying to do the same thing. My plan is to use Guenter's driver, which requires a 2.4 kernel. I just tried under alsa 0.9 and got nowhere.
Ok, for that purpose I will put a new version of the driver (0.5) on my ftp site. I just realized yesterday that closing of the device fails with newer cards (I have an old card with broken firmware).
Generally I really ask anyone who tries the driver to send me feedback, I don't mind if you shout at me that it doesn't work ..
My plan is to include the driver in the stock linux kernel, therefore I need ppl testing it.
For the driver I have rewritten the pd audio I/O code (that is, it's basically a cleaned up version of the "very-old-blocking-IO" code, which is under most situations not as "fast", but it works with "all" cards and even with ALSA OSS emulation).
Advantage of testing the driver:
able to play back any sound with 44.1, 48, (even 88.2 and 96) kHz sampling rate with every program that supports the OSS API. (Even "stock" pd with the -frags switch works).
Previously I have used RMEs wuth RedHat 6.2 using an older version of Guenter's driver but I can't stand the idea of installing RH 6.2 on a new machine...
actually that was Winfrieds driver .... the base for all, the current ALSA and my 2.4.xx driver
I plan to fix Pd to work with the "new" alsa but I'm waiting for alsa to stabilize a bit more first.
... hehe :) ... like waiting for Godot
Guenter
URLs: ftp://xdv.org/pub/gige/rme ftp://xdv.org/pub/gige/pd/linux/pd-0.32p6.tar.gz
Hi Guenter et al.,
Well, I downloaded "pd-0.32newrme.tar.gz" and looked at s_linux.c... It seems that if you ask for 8 channels, for instance, the code opens four devices for 2 channels each. But that isn't how the driver seems to work (from your comments at least it seemed that you had to open one device for all the channels you wanted.) In my own code, I tried opening the 4 devices and failes, and then opened one device for all 8 channels and that worked. Is this the way I should be doing it???
thanks Miller
Ok, for that purpose I will put a new version of the driver (0.5) on my ftp site. I just realized yesterday that closing of the device fails with newer cards (I have an old card with broken firmware).
Generally I really ask anyone who tries the driver to send me feedback, I don't mind if you shout at me that it doesn't work ..
My plan is to include the driver in the stock linux kernel, therefore I need ppl testing it.
For the driver I have rewritten the pd audio I/O code (that is, it's basically a cleaned up version of the "very-old-blocking-IO" code, which is under most situations not as "fast", but it works with "all" cards and even with ALSA OSS emulation).
Advantage of testing the driver:
- You will have support for standard OSS stereo devices, so you will be
able to play back any sound with 44.1, 48, (even 88.2 and 96) kHz sampling rate with every program that supports the OSS API. (Even "stock" pd with the -frags switch works).
- You can use more than one RME card
On Thu, 24 May 2001, Miller Puckette wrote:
Hi Guenter et al.,
Well, I downloaded "pd-0.32newrme.tar.gz" and looked at s_linux.c...
The new code is in s_linux_blocked.c:
What it does is, just aquiring as much channels as possible from each device. This is compatible with the "old" OSS API as well as with "my new one", where you can aquire more than two channels from each device.
With this scheme, as Alexander reported, the OSS multichannel emulation that ALSA does even works ! (Although it does format conversion from 16 to 32 bit internally, which is bad).
Take a look at s_linux_blocked.c. Performance is an issue here, and with the current implementation it is not "that" good, because it blocks upon the write call to the device. (This could be changed with a select call or non blocking writes .... but in this case there is a high chance that some drivers don't properly implement the select ... )
Some things like the audiobuf flag are not implemented yet, you can only set the fragsize (fragment number is fixed at two).
Something about the rationale behind it:
Not all sound cards deliver an exact pointer to the data they have already sent to the dacs, so sometimes it is only possible to tell if a fragment has been sent (which is done by the card by sending an interrupt). That is why the nice es1370 approach doesn't always work.
I hope everything is clear, ... (some of the above is based on guessing .. let me know if you think I'm wrong)
Guenter
It seems that if you ask for 8 channels, for instance, the code opens four devices for 2 channels each. But that isn't how the driver seems to work (from your comments at least it seemed that you had to open one device for all the channels you wanted.) In my own code, I tried opening the 4 devices and failes, and then opened one device for all 8 channels and that worked. Is this the way I should be doing it???
thanks Miller
Ok, for that purpose I will put a new version of the driver (0.5) on my ftp site. I just realized yesterday that closing of the device fails with newer cards (I have an old card with broken firmware).
Generally I really ask anyone who tries the driver to send me feedback, I don't mind if you shout at me that it doesn't work ..
My plan is to include the driver in the stock linux kernel, therefore I need ppl testing it.
For the driver I have rewritten the pd audio I/O code (that is, it's basically a cleaned up version of the "very-old-blocking-IO" code, which is under most situations not as "fast", but it works with "all" cards and even with ALSA OSS emulation).
Advantage of testing the driver:
- You will have support for standard OSS stereo devices, so you will be
able to play back any sound with 44.1, 48, (even 88.2 and 96) kHz sampling rate with every program that supports the OSS API. (Even "stock" pd with the -frags switch works).
- You can use more than one RME card