- // We need to do our own interleaving since we do explicit flushes
- // before each keyframe. This queue contains every packet that we
- // couldn't send yet, in add order. Essentially, we can't send a packet
- // before we know we cannot receive an earlier (dts-wise) packet
- // from another stream. This means that this queue will either contain
- // video packets only or audio packets only, and as soon as a packet
- // of the other type comes in, we can empty the flush the queue up
- // to that point.
- // Protected by <mu>.
- std::queue<AVPacket *> waiting_packets;
-