Dear CELT Developers, I wrote a proposal on how to integrate CELT into Digital Radio Mondiale (DRM+). The CELT codec has been integrated in the Spark transmission software and SoDiRa receiver software. Please download the proposal here: http://www.drm-sender.de/celt_in_drm.pdf Suggestions and comments are welcome! A live on-air DRM+ transmission using CELT (v.0.7.1) for audio encoding was presented on May, 27th at the Symposium in Kaiserslautern: http://www.drm-radio-kl.eu/symposium2010/symposium2010en.htm Although the codec delivers very good audio quality and runs stable if the bitstream is error-free, the decoder (v0.7.1) produces a segfault under Windows in case the bitstream contains bit-errors. Currently, we detect faulty frames by an additional CRC check and avoid decoding them. I wonder if this behavior is intentional or if it might be a bug in the codec? Thank you! Best regards, Michael Feilen
Hi Michael, Thanks for the link to your DRM work. I hope CELT works well for your application. On 10-05-31 07:38 AM, Feilen, Michael wrote:> Although the codec delivers very good audio quality and runs stable > if the bitstream is error-free, the decoder (v0.7.1) produces a > segfault under Windows in case the bitstream contains bit-errors.I've done a quick investigation (need to do more), but it seems like the problem is related to frames of >512 samples, which are relatively new in CELT. If the problem is what I think, it occurs when one of the first four bits are corrupted. It shouldn't be too hard to fix (will do that ASAP).> Currently, we detect faulty frames by an additional CRC check and > avoid decoding them. I wonder if this behavior is intentional or if > it might be a bug in the codec?Once I fix this, what could actually be a good idea is to use some error correction codes, but only on the first 32-64 bits. These are the most important bits in CELT. We've done some experiments with SECDED codes in the past and using that can help bit error robustness quite a bit. Cheers, Jean-Marc
Hi Michael, As I suspected, the bug was simple and so was the fix. I checked it in for the git master branch, but that is *not* compatible with release 0.7.1. However, the patch should apply to 0.7.1: http://git.xiph.org/?p=celt.git;a=commitdiff;h=32589cd33e166ff62d0e842a1a9407542a104e22 Let me know if that fixes the problem for you. Cheers, Jean-Marc On 10-05-31 07:38 AM, Feilen, Michael wrote:> Dear CELT Developers, > > I wrote a proposal on how to integrate CELT into Digital Radio Mondiale (DRM+). The CELT codec has been integrated in the Spark transmission software and SoDiRa receiver software. > > Please download the proposal here: > http://www.drm-sender.de/celt_in_drm.pdf > Suggestions and comments are welcome! > > A live on-air DRM+ transmission using CELT (v.0.7.1) for audio encoding was presented on May, 27th at the Symposium in Kaiserslautern: > http://www.drm-radio-kl.eu/symposium2010/symposium2010en.htm > > Although the codec delivers very good audio quality and runs stable if the bitstream is error-free, the decoder (v0.7.1) produces a segfault under Windows in case the bitstream contains bit-errors. Currently, we detect faulty frames by an additional CRC check and avoid decoding them. > I wonder if this behavior is intentional or if it might be a bug in the codec? > > Thank you! > > Best regards, > Michael Feilen > _______________________________________________ > celt-dev mailing list > celt-dev at xiph.org > http://lists.xiph.org/mailman/listinfo/celt-dev > >