HI all,

On 12-04-13 20:04, Bruce Perens wrote:
>> The low-pass filter should be passing everything below about 22.05 or 
>> 24 kHz, right? Even an imperfect filter should be fine. 
> Oh. Kristoff, is the modem not using Manchester encoding?
No, I might be wrong but I guess this would double the required baudrate.

The 4800  bps modem is simply 4800 baud at 1 bit/symbol. For Manchester 
encoding, you would needs 2 bits per symbol.


>> The comment about the modem output itself driving the circuit is 
>> interesting. That would seem to take away any ability to adjust 
>> relative timing, but maybe there could be a preamble.
> Several operators are currently using VOX to key their radios, which 
> is effectively the same thing. The way the codec is built there is 
> fast clock recovery, so there isn't really a need for a preamble - you 
> just lose a little audio at the start. If Kristoff's implementation 
> puts much info in a header, that would be a problem. I like the way 
> the HF codec sends data alongside codec audio, repeatedly. Possibly we 
> need to add a checksum or FEC to that. It would slow it down but 
> perhaps not too much.

The modem actually triggers the PTT a couple of hunderd ms before 
actually starting the stream. Then there is a header, a c2gmsk versionid 
code and -in a future version- there will be the option to add a header too.


The versionid code is important because it indicates how the rest of the 
stream should be interpreted.
The header is important (especially once you think of repeaters and 
networks of repeaters) because it indicates how a stream should be 
processed over the network (not repeated, repeated on local repeater, 
forwarded to other repeaters / conferences/ ...)


In the current implementation of the modem, there is quite some space 
available in the stream itself for syncronisation (that could 
potentionally used for repeating the header inside the stream) but in 
future versions that will surely not be the case.

The next version of the 4800 bps modem will infact very simular to the 
2400 bps modem, but with a 1/2 FEC on top of that. In the 2400 bps 
modem, there is not much space left to put something else but the voice.
In the version of the modem after that, I want to look into the 
possibily to make the bitrate used for voice and for data much more 
dynamic per timeslot so that data can be incorperated inside the stream 
more easily (at the cost of lowering the FEC for voice during that 
timeslot).

That way, the sender should be able to descide if he/she wants to 
sacrifice FEC of the voice communication to add data (or a repetition of 
the header) to the stream.



Another option I would like to see is simply not send any voice at all 
and use all space of a 40 ms timeslot for data (or repeating the 
header). For the codec2 decoding process, the options would be either 
"codec2 voice-data of current sample = codec2 voice-data of previous 
timeslot", "codec2 voice-data = silence" or "codec2 voice-data = comfort 
noise".

If somebody is interested in looking into this, this would be a nice 
field of research. If somebody can write a good "silence detection" 
module, please do so and upload it somewhere on the web. We can then add 
this into the "audiotool" and from there on also in the modem API.

I think this is something that can be done by a person, completely next 
to any developement on codec2 itself, on freeDV or the modems. So, if 
you want to get your feed went and do your part of the codec2 project 
and learn something about voice encoding; this is your change!! :-)



>> USB adds latency.
> I suspect that the USB to serial adapter is the slowest piece in the 
> chain. The rest of USB usually runs a lot faster than we need.
I have never noticed that the PTT circuit using a USB-to-serial adapter 
is to slow. If needed, the "begin-silence" parameter can be changed 
during startup of the modem.



>     Thanks
>     Bruce
73
Kristoff - ON1ARF


------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
_______________________________________________
Freetel-codec2 mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freetel-codec2

Reply via email to