← Back to team overview

rohc team mailing list archive

Re: [Question #229419]: What protocol number should be for RTP header compression


Question #229419 on rohc changed:

Didier Barvaux requested more information:
> It seems the problem is the UDP checksum bytes. I just copied the values
> from the IP headers. After I changed them to 0, I can see many compressed
> packet sizes are 19, which means, 40 header bytes are compressed to 3 bytes,
> great!! Still need your confirm this result is expected.

UDP checksums are not the same as IP checksums, you cannot copy them. The
ROHC library can compress RTP streams with non-zero UDP checksums well.
Maybe your bad checksums caused some side effect...

Setting UDP checksums to 0 kind of solves your problem because zero
checkums are not transmitted at all by the ROHC compressor.

> However, another problem rises. The decompressed packet size is negative.
> There is an error line in log.
> [ERROR] [d_generic.c:3508 d_generic_decode()] non-IR packet (2) received in
> No Context state

It happens if you decompress some ROHC packets with a decompressor that
knows nothing about your stream. It cannot decompress 40-byte headers
from 3 bytes without the information from the larger IR packets sent at
the beginning of the stream. Did you decompress the first 25 ROHC
packets you compressed? If yes, did you use the same decompressor?


You received this question notification because you are a member of ROHC
Team, which is an answer contact for rohc.