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
