[Live-devel] Continuous 2-3s Lag in android port of live555

serdel serdel at toya.net.pl
Fri Nov 23 03:05:51 PST 2012


Hello, 

I am testing an WiFi android streaming that uses live555 as native jni
library. The problem is that after some time of running (totally random but
usually after more than 10 min) the application gets a lag for 2-3 seconds
which doesn't go away. Sometimes there are some 'janks', you can see that
some frames are definitely missing but that's only for a blink and the the
stream get's back to normal - that's OK. However, the lag I am referring to
freezes the app for about 2seconds and then stays that way, meaning that
the stream is from this point delayed (for approximately this 2 seconds).
This delay is unacceptable. It is quite hard to log this situation due to
complete randomness of the lag, but I have noticed that when the lag occurs
the 'packetLossPreceded' variable in 'MultiFramedRTPSource.cpp' file is set
to true and following that, in the MultiFramedRTPSource::doGetNextFrame1()
function, multiple times the packet is rejected after
MultiFramedRTPSource::networkReadHandler call (this can last even up to
500ms). Following by that the decoding function in the video decoder throws
0 frames finished and the 'ReorderingPacketBuffer::reset' is called (this
happens about 2 seconds). For the reordering packets I tried setting the
PacketReorderingThresholdTime from 200ms to 0 or 1 us - unfortunately it
did not helped. On the other hand since the transmission is only on WiFi it
shouldn't matter since WiFi does not allow reordering packets... with this
I am quite lost here... does any one have a suggestion?


More information about the live-devel mailing list