I've seen this code referenced in two different places, yet I haven't seen anybody bring this up, but it seems that on line 00339 there is an empty if block and I just copied the code to compile try it out but it won't even compile cause of that. if (frame_count >= STREAM_NB_FRAMES) { /* no more frame to compress. The codec has a latency of a few    frames if using B frames, so we get the last frames by    passing the same picture again */} else {Any idea or explanation why it is like that. Is it a mistake on the author's part when copying it? What is supposed to be going on in that if block anyways?
libavcodec/libavformat question
c++;c
There is no mistake. The if part of that block is indeed empty. It is often easier to express the logic by making the if part empty and doing the work in the else part. In, this case, the if part has a comment specifically explaining why it is empty and why there is nothing to do.The code is legal C and will compile fine.