Re: [alsa-devel] Patchmix-style application for EMU cards
Hello
That is more or less what I had figured out, but it how are playback_1 to
_16 channels routed to DSP0-15? It seems that it depends on the setting
of
Front, Surround, LFE, etc. mixer controls. If they are turned up, I
don't
understand what happens, sound to playback channels appears on various
DSP
buses, at different levels.
Really? Well, I didn't much experiment with surround mode. In source code, I can see that there are up to playback 8 channels at hw:0,0 with can be controlled by faders in alsamixer. I tried surround40 and surroun51 on my emu1616m and it worked as expected. The channles were mapped to first couple of DSP ports in a correct order. In fact this should work the same as audigy does, except the result is passed to DSP ports instead of physical outputs.
On my card, playback channels 1 & 2 (hw:0,3) appear on all DSP busses associated with surround. Say you turn up the "Side" fader in alsamixer, channels 1 & 2 will appear at the relevant DSPs (6-7, I think) Whatever, for now I am just keeping all surround controls down (that is, Front, Surround, Center, Side & LFE).
Anyway, I think if there is another layer of routing done in audigy DSP, it shouldn't be used in EMU specific application. Or at least not for now. The most important thing is to provide all the switches and FPGA routing scheme for each EMU model. Or, to be precise, three routing schemes for each EMU model, because for "double speed" (e.g. 96kHz) and "quadro speed" (e.g. 192kHz) modes of operation the numebr of both physical and virtual channels changes.
I think the switches and enums for the card models are rather trivial, one can handle it with a customized version of qamix (done with a simple XML file), for example. A separate application would not be necessary for only that.
If I turn the Front/Surround/LFE/etc. faders down, I can mix playback channels to DSP using the "Multichannel PCM Send/Routing/Volume" faders,
in
a more or less intuitive way, besides that routing values do not map directly to DSP buses (i.e. 14-15 map to DSP0-1, but 2-3 map to DSP2-3).
Handling of this controls motivated me to write the application in the first place. No sound at all will appear if I don't set the appropiate controls for each playback channel: Multichannel PCM Volume (full), Multichannel PCM Send (an index of 8 controls, the first 4 select the target DSP) & Multichannel PCM Send Volume (again faders 0-3 of 8) By the way, only DSP0-7 work in this way. I have no idea how to make DSP8-31 work.
On which card you did tested it? The driver was primary written for the
1820M/1212M V1, so some things may not work well on other models and need to be fixed.
I have a 1212m, don't know which version, but I think it's V1-- it does have firewire. I am using driver version 1.0.16.
Thanks, Camilo.
Hello.
On my card, playback channels 1 & 2 (hw:0,3) appear on all DSP busses associated with surround. Say you turn up the "Side" fader in alsamixer, channels 1 & 2 will appear at the relevant DSPs (6-7, I think) Whatever, for now I am just keeping all surround controls down (that is, Front, Surround, Center, Side & LFE).
I see, you talking hw:0,3. Perhaps this will help: http://www.mjmwired.net/kernel/Documentation/sound/alsa/Audigy-mixer.txt http://www.mjmwired.net/kernel/Documentation/sound/alsa/emu10k1-jack.txt
I think the switches and enums for the card models are rather trivial, one can handle it with a customized version of qamix (done with a simple XML file), for example. A separate application would not be necessary for only that.
I disagree. With all the switches, routing, sample rates and several models, the EMU is one of the most complex cards. Definitely more complex than Envy24, Echo or perhaps even RME/HDSP. All these cards have their appliactions in alsa tools.
By the way, only DSP0-7 work in this way. I have no idea how to make DSP8-31 work.
You cannot do that without a driver modification. There is no any EMU specific code for hw:0,3. It somewhat works thanks to DSP code in hw:0,0, which copies data from emu10k registers to DSP0 to DSP7 ports.
Personally, I'd like to have an 8 channel 24bit playback on hw:0,0 with all the fader stuff for consumer playback and then another device (modified hw:0,3 or even a new one) for (at least) 16 channel 24bit playback directly passed onto DSP buses.
Regards,
Ctirad
Hello, for those of you not subscribed to LAD, I finally got to write a mixer application for the EMU 1010 based cards. I tossed out the original ideas of a full-featured app and went the simple way, just basic point-to-point routing, no fancy "Multichannel" features.
It's available here: http://code.google.com/p/emutrix/ Screenshot: http://www2.udec.cl/~cpolymeris/emutrix/Screenshot-EMutrix-1.png
Be aware that the code is awful, just fast prototyping, but functional. It may also mess with your mixer levels, if you want to try it. please make a backup with 'alsactl store'.
Feedback welcome, Camilo
On Thu, 2008-04-24 at 23:32 +0200, Ctirad Fertr wrote:
Hello.
On my card, playback channels 1 & 2 (hw:0,3) appear on all DSP busses associated with surround. Say you turn up the "Side" fader in alsamixer, channels 1 & 2 will appear at the relevant DSPs (6-7, I think) Whatever, for now I am just keeping all surround controls down (that is, Front, Surround, Center, Side & LFE).
I see, you talking hw:0,3. Perhaps this will help: http://www.mjmwired.net/kernel/Documentation/sound/alsa/Audigy-mixer.txt http://www.mjmwired.net/kernel/Documentation/sound/alsa/emu10k1-jack.txt
I think the switches and enums for the card models are rather trivial, one can handle it with a customized version of qamix (done with a simple XML file), for example. A separate application would not be necessary for only that.
I disagree. With all the switches, routing, sample rates and several models, the EMU is one of the most complex cards. Definitely more complex than Envy24, Echo or perhaps even RME/HDSP. All these cards have their appliactions in alsa tools.
By the way, only DSP0-7 work in this way. I have no idea how to make DSP8-31 work.
You cannot do that without a driver modification. There is no any EMU specific code for hw:0,3. It somewhat works thanks to DSP code in hw:0,0, which copies data from emu10k registers to DSP0 to DSP7 ports.
Personally, I'd like to have an 8 channel 24bit playback on hw:0,0 with all the fader stuff for consumer playback and then another device (modified hw:0,3 or even a new one) for (at least) 16 channel 24bit playback directly passed onto DSP buses.
Regards,
Ctirad _______________________________________________ Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
On Sun, 2010-08-29 at 03:40 -0400, Camilo Polymeris wrote:
Hello, for those of you not subscribed to LAD, I finally got to write a mixer application for the EMU 1010 based cards. I tossed out the original ideas of a full-featured app and went the simple way, just basic point-to-point routing, no fancy "Multichannel" features.
It's available here: http://code.google.com/p/emutrix/ Screenshot: http://www2.udec.cl/~cpolymeris/emutrix/Screenshot-EMutrix-1.png
Be aware that the code is awful, just fast prototyping, but functional. It may also mess with your mixer levels, if you want to try it. please make a backup with 'alsactl store'.
Feedback welcome, Camilo
While writing this software I realized that the input and output pads are actually -12dB pads, not -14dB as the driver states. I guess they are thought as +4dBu/-10dBV (= ~12dB) switches. Also the driver says SPDIF input is on the 0202 daughter card, but at least in my card it's on the 1010 main card. I have a 1212M V1 card. If anyone has one of these cards, can you confirm that these are true for other/all cards of the series?
Thanks Camilo
participants (3)
-
Camilo Polymeris
-
Camilo Polymeris
-
Ctirad Fertr