Am 04.04.2012 13:37, schrieb Christoph Limbach:
> i have a quite specific question: i run cinelerra on avlinux and everything 
> is smooth, on laptop I have sound, but on my desktop pc, I use a rme 
> multiface card and i just can t get any sound out of it with cinelerra. I 
> start hdspmixer at the beginning, but nothing.


Hello Christoph,

getting this stuff to work can be tricky at times, but I want to reassure
you, it is possible: I am running a RME Multiface and are able to get sound
out of Cinelerra. But, since several years, the only sound system that works
in Cinelerra (and some other applications like MPlayer) is the damn old OSS.
Both on Debian and Ubuntu, and various Cinelerra versions (custom compiled)

I found ALSA to be quite problematic with several applications. But the reason
to blame is neither ALSA, nor the RME / hdsp interface. The actual problem
seems to be that ALSA is quite low-level and "close to the hardware".
And, unfortunately, the majority of open source programmers just seem to
be too lazy to get their a** up and implement the ALSA interface properly
and to full extent.

Usually, what's done is just to test some cheapo standard or on board
interfaces and then more or less hard wire the connection logic that seemed
work with those into the application. Actually, ALSA provides a comprehensive
API to query the hardware interface for its capabilities. Moreover, ALSA
provides a really elaborate system of automated conversions and custom
configuration options. These are difficult to configure and hard to understand
just from the available documentation (so this might be another reason for the
ongoing problems in this area).

>From my own programming efforts, I know for sure that it doesn't work
just to open the RME interface from ALSA with "2 fixed channels and
16 bit integer samples". What needs to be done is to query the actual
number of channels (which vary depending on your sampling rate and
chosen configuration). If I recall correct its about 14 to 24 channels,
and the hardware driver reports only the floating point based and the 24bit
option to work, and all channels need to be opened, and all of
this needs to be set on the right sub interface.

At this point, the application using ALSA is required to have the
"intelligence" to pick the options actually reported as working
by the interface, and then run the output with the necessary
conversions / repackaging. On my system, only few applications
get this right. e.g. VLC (media player), Audacity (only the more
recent releases) the Jack audio connection server, and the PortAudio
and OSS emulation libraries.

as a sidenote: with current kernels, when you choose "OSS", what you
get is actually an emulation of the deprecated old OSS output by forwarding
to ALSA. PortAudio is similar, but actually even another layer of abstraction
on top: it automatically connects through Jack, Pulse, ESD, ALSA or OSS.

> in cinelerra, also the "VU"- meters dont show any activity. I tried alsa and
>  other sound options.. no more ideas what i can do...

First off, the VU meters in Cinelerra *must* be showing some output on playback.
Otherwise, either, your video's sound tracks are in a format not understood by
cinelerra, or Cinelerra wasn't able to open *any* sound output.

Tip: use an uncompressed 16bit  WAV file for experiments, to avoid
the additional complexities with video and video formats / containers


Of course, besides of that, the firmware needs to be loaded into your
multiface (but usually this is done automatically on system boot,
when the snd_hdsp kernel module is loaded). Important: this loading
needs to happen *before* any application tries to open those interfaces.

Moreover, you need to open the hdspmixer once after startup (because
initially the interface is muted).

Another possible pitfall is that the RME / hdsp inteface doesn't show
up consistently at the same hardware interface number.

In one of my former systems, I had that problem and needed to insert
some configuration (I could look that up if required) in order to
get it to appear as *second* interface /dev/dsp1 consistently.
For me, this is what I want. My on board soundcard isn't wired
in any way, so I don't get annoyed by some kindergarten software
wanting to do boo-boo beep-beep. And my studio monitors, headphones
and further equipment is hooked up to the various RME outputs and
enabled explicitly when required.


hope that helps
Cheers,
Hermann V.





_______________________________________________
Cinelerra mailing list
[email protected]
https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra

Reply via email to