To differentiate between when a packet should be dropped or when a keyframe
is missing its SPS and/or SPS CopyAndFixBitstream now returns:
- kInsert, the packet should be inserted into the PacketBuffer.
- kDrop, the packet should be dropped.
- kRequestKeyframe, a keyframe should be requested.
BUG=webrtc:5514
Review-Url: https://codereview.webrtc.org/2477343002
Cr-Commit-Position: refs/heads/master@{#14948}
The H264SpsPpsTracker class:
- Keeps track of all received SPS/PPS.
- Decides whether a packet should be inserted into the PacketBuffer or not.
- Don't insert if this packet only contains SPS and/or PPS.
- Don't insert if this is the first packet of and IDR and we have not
received the required SPS/PPS.
- Insert start codes, and in the case of the first packet of an IDR prepend
the bitstream with the given SPS/PPS for this IDR.
BUG=webrtc:5514
Review-Url: https://codereview.webrtc.org/2466993003
Cr-Commit-Position: refs/heads/master@{#14906}