InterCom is a low-latency full-duplex intercom(municator) designed for the transmission of media (audio) between networked users. It is implemented in Python and designed as a set of layers that provide an incremental functionality, following a multilevel (one-to-one) inheritance model:
minimal
: records/plays raw (CD quality) audio, and sends/receives the chunks of audio to/from anotherintercom
instance.buffer
: delays the playing of chunks to hide the network jitter.compress
: uses DEFLATE to compress the chunks.br_control
: uses quantization to control the transmission bit-rate.stereo_coding
: removes spatial (inter-channel) redundancy.temporal_coding
: removes temporal (intra-channel) redundancy.threshold
: removes phycho-acoustic redundancy generated by the expected threshold of hearing.temporal_masking
: removes phycho-acoustic redundancy generated by the expected temporal masking effect.spectral_masking
: removes phycho-acoustic redundancy generated by the expected simultaneous masking effect.