audio control / mixer

Ideas, technical topics, help and discussion for ATV enthusiasts
Forum rules
This forum is run by the BATC (British Amateur Television Club), it is service made freely available to all interested parties, please do not abuse this privilege.

Thank you
Post Reply
oe6rke
Posts: 14
Joined: Wed Apr 03, 2013 3:16 pm

audio control / mixer

Post by oe6rke » Mon May 28, 2018 9:41 pm

Hi All,

might be a old Question but i seek a sort of intelligent mixer for atv Inputs. There the Audio must met a threshhold being passed through to the mixer and final stage. any schematic of Ready to use device out there?

thanks for sharing your thoughts in Advance,
br Robert, 73 de oe6rke

M0DTS
Posts: 653
Joined: Sun Feb 24, 2008 9:03 pm

Re: audio control / mixer

Post by M0DTS » Sun Jun 10, 2018 9:16 pm

I can't offer a finished solution but here is something i have been working on...
It's a 12 to 6 audio mixer.

Any of the 12 input channels can be passed to any of the 6 output channels.
channels 1-4 have mute if the squelch threshold is not met, i could not fit any more than 4 filters into the fpga at present.

http://m0dts.co.uk/?tag=FPGA&item=180

It's only really in alpha testing at the moment so not good for release for general use but if you have some fpga/code knowledge you maybe able to alter to suit your needs.
It maybe possible/better? to do this with a fast micro controller instead of the fpga.

Let me know if you have any interest and i can forward the code as is.

Rob
M0DTS

markaren1
Posts: 59
Joined: Sat Sep 10, 2011 8:49 pm

Re: audio control / mixer

Post by markaren1 » Wed Jun 13, 2018 8:48 pm

Hi Rob,

Not sure if this will be any less computationally intensive, but have you considered an FIR LPF filter, then subtracting the output from input (with suitable delays to equalise path lengths). I have used this in the (chroma) video path of an FPGA PAL vectorscope and it worked quite well.

https://www.youtube.com/watch?v=7Doc8XZvGPk

Regards, Mark

markaren1
Posts: 59
Joined: Sat Sep 10, 2011 8:49 pm

Re: audio control / mixer

Post by markaren1 » Thu Jun 14, 2018 1:50 am

2nd thought was to just use an FIR HPF - bandpass is more numerically intensive than HPF (?).

What is the ratio of your master clock to sample rate ?

Are you implementing the filter in one crunch (huge number of multipliers), or are you doing multiple MACs between samples, using master clock ?

Have some recollection that if the cut-off frequency of the filter is a 1/(2 to the N) of sample rate then some (many ?) of the coefficients approach zero.

What happened to the days of making filters using valves ! :)

-Mark

M0DTS
Posts: 653
Joined: Sun Feb 24, 2008 9:03 pm

Re: audio control / mixer

Post by M0DTS » Mon Jun 18, 2018 8:10 am

I attempted to do the filter MAC with the master clock after reading all of ADC samples, this is currently how it works but probably not implemented correctly!
This is my first 'real' FPGA project so there will be a million ways to do it better.
It uses a 49 point 10bit FIR HPF.
Sample rate is ~60KHz if i remember correctly, master clock is 50MHz.
I may get back to the project this winter, very time consuming ;-)

Rob

markaren1
Posts: 59
Joined: Sat Sep 10, 2011 8:49 pm

Re: audio control / mixer

Post by markaren1 » Wed Jun 20, 2018 8:46 pm

Doing the processing on a sample-by-sample basis ...

Sounds like you need a block which takes 8 audio samples in (1 per channel, per sample clock), and stores them in 8 input arrays, each 64 samples long (easy 2^n addressing).

~1000 clocks per sample available, so starting with input sample buffer 1, fetch next sample, add to circular input buffer, MAC input buffer against the FIR coefficients to create one output sample (which is passed onto next block : rectifier, smoothing, and squelch thresholding). Also need to manage the circular buffer of 49 samples within a 64 sample memory space. Repeat for the remaining 7 channels.

Resources sound roughly like:
512 x 10 bits of audio input buffer
1 x 6 bit input sample pointer (with 64 byte offset to next channel)
1 x 3 bit channel counter
49 x 10 bits of FIR filter coefficients
1 x signed MAC (haven't had enough coffee to work out size)
input and output multiplex
circular buffer management
8 x 10 bits of audio output buffer
+ stuff I have forgotten :)

~55 clocks per channel x 8 channels = 440 master clocks to filter all 8 channels

Sounds all very doable on a sample by sample basis, no need for pipelining; shouldn't be too large.

Interested to see how this end up.

Regards, Mark

M0DTS
Posts: 653
Joined: Sun Feb 24, 2008 9:03 pm

Re: audio control / mixer

Post by M0DTS » Fri Jun 22, 2018 7:22 pm

Thanks Mark,

It will help me when i return to the project, i'll post my efforts here sometime in the future!

Rob

Post Reply

Return to “General ATV Discussion”