mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
rtpdec_vp8: Make sure the previous packet is returned
This is a bug from c7d4de3d73
- if the previous frame wasn't
returned yet (due to missing the final packets), but we have
enough data of it to return the first partition, we write that into
pkt and set returned_old_frame. That commit forgot returning 0 for
the case where this current packet didn't have the end_packet flag
set.
Signed-off-by: Martin Storsjö <martin@martin.st>
This commit is contained in:
parent
92e354b655
commit
09ed8098ff
@ -233,12 +233,13 @@ static int vp8_handle_packet(AVFormatContext *ctx, PayloadContext *vp8,
|
||||
vp8->prev_seq = seq;
|
||||
avio_write(vp8->data, buf, len);
|
||||
|
||||
if (returned_old_frame) {
|
||||
*timestamp = old_timestamp;
|
||||
return end_packet ? 1 : 0;
|
||||
}
|
||||
|
||||
if (end_packet) {
|
||||
int ret;
|
||||
if (returned_old_frame) {
|
||||
*timestamp = old_timestamp;
|
||||
return 1;
|
||||
}
|
||||
ret = ff_rtp_finalize_packet(pkt, &vp8->data, st->index);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
Loading…
Reference in New Issue
Block a user