CVSD Encoder

From GNU Radio
Revision as of 15:29, 27 October 2023 by Notou (talk | contribs) (Created page with "Category:Block Docs This is a wrapper for the CVSD encoder that performs interpolation and filtering necessary to work with the vocoding. It converts an incoming float (+-1) to a short, scales it (to 32000, slightly below the maximum value), interpolates it, and then vocodes it. The sampling rate can be anything, though, of course, the higher the sampling rate and the higher the interpolation rate are, the better the sound quality. When using the CVSD vocoder, a...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search


This is a wrapper for the CVSD encoder that performs interpolation and filtering necessary to work with the vocoding. It converts an incoming float (+-1) to a short, scales it (to 32000, slightly below the maximum value), interpolates it, and then vocodes it.

The sampling rate can be anything, though, of course, the higher the sampling rate and the higher the interpolation rate are, the better the sound quality.

When using the CVSD vocoder, appropriate sampling rates are from 8k to 64k with resampling rates from 1 to 8. A rate of 8k with a resampling rate of 8 provides a good quality signal.


Parameters

Resample
Resampling (interpolation) rate before vocoder decoding
Frac. Bandwidth
Low pass filter bandwidth (relative , should be <= 0.5)


Example Flowgraph

Source Files

Python file
Here
Block definition
Yaml