Hi Jaroslav,
Many thanks for your reply. This realy solved my problem.
I have been able to implement a new PCM-stream and send it to empty FXBUS
registers. However, I could not find .asoundcr (I am using SUSE 8.1 with
ALSA_rc6). Where is it? In stead, I adapted alsa.conf, emu10k1.conf and
added a pcm_new.conf in /usr/share/alsa/ and this worked.
After having done this, I am stuck with some questions. Why are there no
"Send Routing" lines in the "front" and "rear" config files, since they are
routed to FXBUS?
Why do the lines:
> /* 22: */ OP(icode, &ptr, iMACINT1, ETRAM_ADDR(ipcm->etram[0]),
GPR(gpr + 8), GPR_DBAC, C_ffffffff);
> /* 23: */ OP(icode, &ptr, iMACINT1, ETRAM_ADDR(ipcm->etram[1]),
GPR(gpr + 9), GPR_DBAC, C_ffffffff);
have to be removed?
With kind regards,
Gerard Janssen
At 04:30 PM 1/8/03 +0100, Jaroslav Kysela wrote:
>On Wed, 8 Jan 2003, Gerard Janssen wrote:
>
>> Hi,
>>
>> By making slight changes in emufx.c, I could use all four spdif stereo
>> channels of the sblive! that are present on the audio-ext connector. These
>> spdif0..3 outputs can be accessed via: EXTOUT_TOSLINK_L,R ;
>> EXTOUT_HEADPHONE_L,R ; EXTOUT_REAR_L,R and EXTOUT_CENTER,LFE. By re-routing
>> "spdif", "front", "rear" and "center_lfe" to the respective outputs, four
>> stereo signals (8 channels) can be simultaneously send to these outputs.
>>
>> The "front", "rear" and "center_lfe" signals are alsmost perfectly
>> synchronized (within a few samples) and the small delays are constant.
>> However, the signal via "spdif" is not: its delay w.r.t. the other signals
>> is about 60 samples and changes randomly every time the application is
>> started.
>> The "spdif" signal is taken from GPR(8) and GPR(9) in emufx.c. As far as I
>> could backtrace these signals come from etram, which probably is the cause
>> of the random delay.
>>
>> A solution might be to put the "spdif" also directly in two FXBUS registers
>> (there are still 6 free FXBUS registers), as is done with the other
>> signals. However, I don't know how to do this.
>>
>> I would appreciate any help or suggestions in routing "spdif" to an FXBUS.
>
>These steps are necessary:
>
>1) remove the emufx PCM code (or the last two lines):
>
> /* 22: */ OP(icode, &ptr, iMACINT1, ETRAM_ADDR(ipcm->etram[0]),
GPR(gpr + 8), GPR_DBAC, C_ffffffff);
> /* 23: */ OP(icode, &ptr, iMACINT1, ETRAM_ADDR(ipcm->etram[1]),
GPR(gpr + 9), GPR_DBAC, C_ffffffff);
>
> you can do it without modification of driver code itself (see
> SNDRV_EMU10K1_IOCTL_CODE_POKE and SNDRV_EMU10K1_IOCTL_CODE_PEEK ioctls)
>
>2) replace these two lines in emufx:
>
> OP(icode, &ptr, iMACINT0, GPR(6), C_00000000,
FXBUS(FXBUS_PCM_CENTER), C_00000004);
> OP(icode, &ptr, iMACINT0, GPR(7), C_00000000,
FXBUS(FXBUS_PCM_LFE), C_00000004);
>
>to
>
> OP(icode, &ptr, iMACINT0, GPR(6), C_00000000, FXBUS(8), C_00000004);
> OP(icode, &ptr, iMACINT0, GPR(7), C_00000000, FXBUS(9), C_00000004);
>
>3) create a new "chn67" pcm in your .asoundrc:
>
>pcm.chn67 {
> @args [ CARD ]
> @args.CARD {
> type string
> }
> type hooks
> slave.pcm {
> type hw
> card $CARD
> device 0
> }
> hooks.0 {
> type ctl_elems
> hook_args [
> {
> name "EMU10K1 PCM Send Volume"
> index { @func private_pcm_subdevice }
> lock true
> value [ 0 0 0 0 255 0 0 0 0 255 0 0 ]
> }
> {
> name "EMU10K1 PCM Send Routing"
> index { @func private_pcm_subdevice }
> lock true
> value [ 0 1 2 3 8 9 0 1 8 9 0 1 ]
> }
> }
>}
>
>Note: Send Routing is fxbus setup
>
> Jaroslav
>
>-----
>Jaroslav Kysela <[EMAIL PROTECTED]>
>Linux Kernel Sound Maintainer
>ALSA Project, SuSE Labs
>
>
>
>-------------------------------------------------------
>This SF.NET email is sponsored by:
>SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
>http://www.vasoftware.com
>_______________________________________________
>Alsa-devel mailing list
>[EMAIL PROTECTED]
>https://lists.sourceforge.net/lists/listinfo/alsa-devel
>
**********************************************************************
Dr.ir. Gerard J.M. Janssen
Delft University of Technology
Faculty of Information Technology and Systems (ITS)
Wireless Mobile Communications Group
P.O. Box 5031, 2600 GA Delft, The Netherlands
Phone +31-15-2786736, Fax +31-15-2781774
E-mail [EMAIL PROTECTED]
**********************************************************************
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel