Thanks very much for your help, Ross.<div><br></div><div>BACKGROUND: (CLARIFICATION ONLY) Indeed I only have one thread calling doEventLoop(). That's all I meant by my penultimate background sentence. The last background sentence points out a separate thread for MF, that's independent of Live555, and is in fact the thread taking advantage of the one exception within Live555: calling triggerEvent().</div>
<div><br></div><div>FOLLOWUP QUESTION: Having incorporated your question one answer, my output is better and now only "very poor" rather than "horrible". My uncompressed stream is 640 x 480 x 30fps. It passes through NV12 format, which when considered as YUV I think has about 16 bits of info per pixel (8 bits for Y, 8 bits for UV, like YUV422). So an uncompressed 640 x 480 frame should have nearly 5Mbits of info. However, the compressed frames I'm sending to Live555 are generally 160kbits each (after an initial 384kbit frame). I realize you're not responsible for MF, but perhaps you can give your opinion, please. This suggests to me that my MF H.264 encoder is compressing roughly 5Mbits/160kbits = 31 times. Perhaps my remaining "very poor" quality is because this is too much compression. I reconfigured the encoder for 10 times the average bit rate, but this typical 160kbits/frame output size didn't really change. DO YOU AGREE that I ought to be able to increase encoder output quality by increasing average bit rate, and that the 160kbits per compressed frame should rise toward 5Mbits?</div>
<div><br></div><div>Thanks again.</div><div><br></div><div><br></div><div><br></div>