(assume hdrlen constant across all packets of the same picture).
It keeps packets being transmitted in order.
Without it last (and thus the smallest one) packet usually arrive out of order
(before the previous one)
Usually tiles recalculated when new image comes in, however when 'overlap' option is in effect - tiles recalculated multiple times.
And when layout also has 'zoom' option - when image recalculated it each round zooms itself deeper and deeper, until new images comes and image resets to proper state.
This looks like flicker.
The fix is to always take for zoom calculations real image dimensions instead of previously recalculated.
HOWEVER!
There are too many math and corner cases in mod_conference, so i propose it to be reviewed by widest audience of people who wrote mod_conference!
When we handle DTLS layer in do_dtls() and there are no incoming packets yet - we still call BIO_write() with NULL buffer and it is an error and BIO_write() will stuck for a long time in libssl/libcrypto error subsystem.
(that also possibly relates to fact that libssl/libcrypto init/deinit/error-handling is broken in general in FS, however that is another big issue)
RTCP/Receiver Report/lost field is a _signed_ 24bit integer and it could be negative (in case of UDP duplication)
+ any negatives now threated as huge uint32_t
+ set this field properly on __BIG_ENDIAN
+ correctly read this value in received RTCP on all arches
Allow to force SIP REGISTER Expires: to be within MIN and MAX values.
Not just to force it to one specific value using "sip-force-expires".
New profile parameters:
"sip-force-expires-min"
"sip-force-expires-max"