[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linrad] Rate decoupling and sound card bandwidth in general; Re: [linrad] Re: 40 kHz of bandwidth with NO extra PCI-cards; adapting output sampling (CPU-load); optimum frequencies; Mini-ITX

Sir Leif,

Resuming on my previous email I would like to add, that the change
in sampling rate is certainly not intended to change the generality
of 'Linrad' but just a work-around for the fact that the output rate
cannot be decoupled from the input rate for certain hardware. Surely
the default option would be 48000/48000, but if that is unreasonable
(with regard to unnecessary load on the CPU), then a new output rate
would be available, with the appropriate 'Linrad' routines to get
corresponding undistorted output. For many effective solutions it
would save the purchase of a second sound card, though actually
the cheapest possible CPU (maybe a Duron 1800 at present) would
have no trouble in producing the extra cranking to provide solid
48000 kHz samples even with the present "legacy" calculations
(interesting to see what it would mean for 192 kHz).

My knowledge of PC sound cards does not go far enough to know the
general state of affairs with those, but since they are sound cards
relative to human hearing, I have so far assumed that it would be
more than fair that there would be a filter limiting the bandwidth
to 20 kHz, even if over-sampling (up to 192 kHz) would be used.

However, as the Delta-44 is used for a 96 kHz bandwidth in 'Linrad',
this implies at least a 48 kHz input bandwidth. I would like to be
informed whether this is natural for any card (or specifically for
the Delta 44), or whether it is a user-inflicted modification on
the Delta-44 circuit board. It is good to hear about the new OSS-
drivers allowing further pushing to 192 kHz, but does it also mean
that the analog section of the Delta-44 board is ready to accept
this higher input bandwidth? As such the RMAA 5.4 quality tests
under Windows has shown 20 kHz bandwidth limiting for most cards.


My Delta-44 is still in the box, as I have only studied integrated
audio solutions lately, in order to have a precursor for more
serious upcoming 'Linrad' work (including using the WSE-units for
70 MHz cross-band reception; coincidentally being the 1st WSE-IF).

                                         73, "Zaba" OH1ZAA/NNoY

P.S. After re-reading your full reply I was not sure whether the
     OSS 192 kHz settings were useful for CPU-load tests only, or
     that they would allow real 192 kHz sampling. Also it was very
     unclear to me what you mean by unhappy distortion under 4 kHz
     (most of us are probably unhappy with distortion, whatsoever).

At 17:01 1.5.2005 +0200, SM5BSZ wrote:

Hi Zaba,

> Regarding the CPU-load I would like to ask Leif/SM5BSZ, to comment
> whether a slight modification of the Lagrange-interpolation could
> work.
The problem is that someone (myself sometimes) wants the true bandwidth
of a 48kHz output sampling speed. Doing something that is equivalent
to a bandwidth limiting filter would destroy the generality of Linrad
as a tool box for general processing. Obviously it will be possible
to check the baseband bandwidth and select something that is fast if
the output sampling speed is much higher than required and also much
higher than 8 kHz (my ears do not like distortion below 4 kHz).

Much better would be to do it properly. I will think about it.
Presumably the interpolation can be used to step up the sampling
speed by a non-integer factor in the range 1.00 to 1.9999999 and
then a 4 bin fft can be back-transformed after being zero-padded
to the size giving the desired output rate. This should be pretty
efficient and accurate (I think)

In the meantime I think the OSS drivers can solve the problem.
Late OSS drivers contain a resampling routine. I have disabled
it on the input because it is not a very good idea to use it
(but it does allow 192kHz from my Delta44). On the output side
it should be a good idea to use it.

You may edit the file par_userint and specify 192kHz as the A/D
sampling rate for a Delta44. This works fine:-)

You may also edit par_userint for "min da speed" much lower than
the hardware speed. Then you can open the input at 48kHz and the
output at 8kHz on a card opened RDWR. Unfortunately this does not
work because the input data rate becomes the same as the data rate
set for the output - the OSS driver does not use its builtin
rate converter in this case.

How bad is it? Please set a modest bandwidth (100Hz or below) and
use 48kHz for input and output. What is the CPU load when
no signal is selected and what is it when a signal is clicked
upon? (Use 'Z' to clear the averaging for CPU load)


Leif / SM5BSZ

This message is sent to you because you are subscribed to
 the mailing list <linrad@xxxxxxxxxxxxxxxxxxxxx>.
To unsubscribe, E-mail to: <linrad-off@xxxxxxxxxxxxxxxxxxxxx>
To switch to the DIGEST mode, E-mail to <linrad-digest@xxxxxxxxxxxxxxxxxxxxx>
To switch to the INDEX mode, E-mail to <linrad-index@xxxxxxxxxxxxxxxxxxxxx>
Send administrative queries to  <linrad-request@xxxxxxxxxxxxxxxxxxxxx>