Topic: RME Analog volume

I am working on a linux based application that will use the analog output from various RME soundcards to an amplifier. The application uses brutefir that can be used to control the volume digitally. We have noticed that most RME soundcard have the switch to switch output level: -4db, +4dbu +10dbu. We  have been working on a bash script to switch input level as part of the volume control in order to optimize the signal. our questions:

We are concerned about the multiface II, 9636, 9652, 9632 and the ADA converters (or any RME products)

1. Is the volume selection digital or analog?
2. can volume be controlled through amixer, how?
3. In addition to the switch between levels can the volume be varied?
4. I have heard about midi volume control on the multiface II is this analog or digital, can it be controlled from the command line or with amixer?



Basically we want to be able to control analog output volume on 6 or 8 channels simultaneously without degrading the signal. We thought that there must be an internal preamplifier on some or all the RME soundcard and/or digital converters that can be controlled from linux

Tom

2 (edited by system 2009-06-24 23:05:49)

Re: RME Analog volume

Hi Tom!

1.  Digital

2.  Check out the amixer command line options.  There are some examples out there of amixer commands where scripting can change the mixer.

3.  The volumes can be varied continuously various ways.  Either through totalmix (hdspmixer) or with midi remote commands.  Bear in mind that hdspmixer itself speaks directly to the RME hardware and not via amixer commands.  In the same way that the developers for this took advantage of the source code provided for the HDSP series, you could also without totalmix write software to do the same thing.  All the mixing in the HDSP series takes place inside the cards FPGA.  You must learn how to write code that will speak directly to the device.

Since as I understand reading about your project in the past, you are using bruteFIR to perform some room correction and perhaps exploring any ways to speed and automate the process of room correction.  I would recommend writing an application that is similar to hdspmixer, that includes the bruteFIR source, that is therefore directly accessing the RME FPGA instead of a roundabout way using shell scripting and amixer.  For example if you will standardize on using RME equipment which makes sense given its accuracy and consistency as a benchmark.  However, if you will make your room correction system work with other hardware besides RME, then shell scripting to amixer would make better sense as pretty much any hardware that is alsa compatible would then work.  Once measurements are made, I don't see any need to rapidly change levels on a sub-millisecond basis, but I am not so familiar with all the details as you are.  :)

4.  All the levels, routing and summing in the HDSP series is internal, digital and calculated by the FPGA.

I think you can obtain source code for everything mentioned above with some research.  To my knowledge, the hdspmixer is the only 3rd party software written that accesses the RME FPGA directly.  As a commercial product, I think there is small potential market to automate and route MADI without totalmix using the same approach.  Something like this could be written to receive network commands, and make timed changes using the cron daemon. Potential applications could be telephony in combination with Asterix open source voip, and HP Halo which is using MADI.

Hope this helps and keep us posted!

jonathan adams leonard

3 (edited by soundcheck 2009-10-21 14:38:29)

Re: RME Analog volume

Hi there.

I hope you are still reading this.

I am working on a similar project.

I also opened a thread  related to amixer: http://www.rme-audio.de/forum/viewtopic.php?id=6626

What I don't understand:

HDSPconf is 100% matched with amixer. amixer obviously has no issues to talk to the FGPA.

There is also a mixer control which allows to enter 3 values in amixer called "Mixer". I read somewhere ( to be confirmed though ) that the controls 0,0,0 stands for in,out,gain.

If this is the case and the "Mixer" control is the entry point into the card, the question is what logic and values to apply to the controls.

For me it would be sufficient to have everything -- gain control set to "neutral" and a routing 3in 3out fixed during startup. Volume control is done on the application side.


The questions here would be : Can the amixer "Mixer" control be used? What logic and values would have to be applied?

Cheers
\Klaus