In Dirac version 0.9.1
When decoding I frames that are incomplete the module
ParseUnitByteIO::SyncToUnitStart can enter a loop condition from which it never returns.
It appears to be searching for 'BBCD' but never finds
it and never exits the loop. This occurs even though
BBCD is at the start of the frame.
It is possible to force this condition by sending a malformed frame of data to the parser (by dropping or adding a byte). The decoder returns the state STATE_BUFFER indicating it needs more data. When the
next I frame is received (starting BBCD) the decoder
does not recover and enters an endless loop.