4 ms·
Clicked the download link wanting to take a look at the source... and was a bit perplexed before quickly canceling it. 237MB, compressed, for an audio codec!? A
by userbinator 3y ago
Clicked the download link wanting to take a look at the source... and was a bit perplexed before quickly canceling it. 237MB, compressed, for an audio codec!? At that point one can't help but think that the samples are already in the decoder itself.
I wonder how it compares to https://en.wikipedia.org/wiki/Codec2 https://en.wikipedia.org/wiki/Codec2 and related codecs, which go even lower for bitrate.
- woodson 3y agoThe difference is that Codec2 encodes audio at 8 kHz sampling rate while this TSAC codec encodes audio at 44.1 kHz, which makes a pretty big difference in terms of audio fidelity.
- femto 3y agoAlso, codec2 is a vocoder, meaning it is specialised to compressing speech. Give it any old 8kHz sampled audio and it probably wouldn't sound so good.
- deleted 3y ago[deleted]
- retrac 3y ago> one can't help but think that the samples are already in the decoder itself In a certain sense, maybe they are. Or more accurately, small fragments of samples, and just how to mix them together, is what is transmitted. It reminds me of pre-generated dictionaries with classic LZ compression. If an algorithm is going to work on mostly English text, then it might make sense to include an English dictionary with the algorithm. Brotli does this [Wikipedia]: > Unlike most general-purpose compression algorithms, Brotli uses a predefined dictionary, roughly 120 KiB in size, in addition to the dynamically populated ("sliding window") dictionary. The predefined dictionary contains over 13000 common words, phrases and other substrings derived from a large corpus of text and HTML documents
- unwind 3y agoThat sounded interesting, so I did the download and had a look in the archive. Here's the list of contents: $ tar tvzf ~/Downloads/tsac-2024-04-08.tar.gz drwxrwxr-x bellard/bellard 0 2024-04-08 14:47 tsac-2024-04-08/ -rw-rw-r-- bellard/bellard 3040 2024-04-08 14:47 tsac-2024-04-08/readme.txt -rwxrwxr-x bellard/bellard 3979504 2024-04-08 14:47 tsac-2024-04-08/libnc_cuda.so -rwxrwxr-x bellard/bellard 565336 2024-04-08 14:47 tsac-2024-04-08/libnc.so -rw-rw-r-- bellard/bellard 49639706 2024-04-08 14:47 tsac-2024-04-08/tsac_stereo_q8.bin -rw-rw-r-- bellard/bellard 85407494 2024-04-08 14:47 tsac-2024-04-08/dac_stereo_q8.bin -rw-rw-r-- bellard/bellard 49633561 2024-04-08 14:47 tsac-2024-04-08/tsac_mono_q8.bin -rw-rw-r-- bellard/bellard 31 2024-04-08 14:47 tsac-2024-04-08/Changelog -rwxrwxr-x bellard/bellard 287536 2024-04-08 14:47 tsac-2024-04-08/tsac -rw-rw-r-- bellard/bellard 85143422 2024-04-08 14:47 tsac-2024-04-08/dac_mono_q8.bin So yeah, it's not exactly a compact stand-alone implementation, but on the other hand it does advanced GPU stuff so I guess nobody expected it to ... or perhaps I did, just a little, based on the author's reputation. :)
- Morelesshell 3y agoBut thats the point of it.