diff mbox

[FFmpeg-devel,1/1] avcodec/h264: Fix poc_lsb in open gop context

Message ID 20190723120859.3080-2-nicolas.gaullier@arkena.com
State Accepted
Commit cae5b36e207117f883fb0929a7cb1882807471b8
Headers show

Commit Message

Gaullier Nicolas July 23, 2019, 12:08 p.m. UTC
When no IDR nor mmco_reset is found, prev_poc_lsb is
undefined and shall not be assumed to be zero
---
 libavcodec/h264_parse.c | 2 ++
 libavcodec/h264dec.c    | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

Comments

Gaullier Nicolas Sept. 2, 2019, 8:01 a.m. UTC | #1
>Envoyé : mardi 23 juillet 2019 14:09
>When no IDR nor mmco_reset is found, prev_poc_lsb is undefined and shall not be assumed to be zero
>---
> libavcodec/h264_parse.c | 2 ++
> libavcodec/h264dec.c    | 2 +-
> 2 files changed, 3 insertions(+), 1 deletion(-)
I have not received any feeback, do you think this patch could be applied ?
Thank you,
Nicolas
Kieran Kunhya Sept. 2, 2019, 4:12 p.m. UTC | #2
On Mon, 2 Sep 2019 at 09:01, Gaullier Nicolas <nicolas.gaullier@arkena.com>
wrote:

> >Envoyé : mardi 23 juillet 2019 14:09
> >When no IDR nor mmco_reset is found, prev_poc_lsb is undefined and shall
> not be assumed to be zero
> >---
> > libavcodec/h264_parse.c | 2 ++
> > libavcodec/h264dec.c    | 2 +-
> > 2 files changed, 3 insertions(+), 1 deletion(-)
> I have not received any feeback, do you think this patch could be applied ?
> Thank you,
> Nicolas
>

Patch seems good.

Kieran
Gaullier Nicolas Sept. 10, 2019, 10:07 a.m. UTC | #3
>De : ffmpeg-devel [mailto:ffmpeg-devel-bounces@ffmpeg.org] De la part de Kieran Kunhya

>Envoyé : lundi 2 septembre 2019 18:12

>Objet : Re: [FFmpeg-devel] [PATCH 1/1] avcodec/h264: Fix poc_lsb in open gop context

>

>Patch seems good.

>

>Kieran


Can someone please apply the patch ?
Thanks
Nicolas
Paul B Mahol Sept. 10, 2019, 10:30 a.m. UTC | #4
On 9/10/19, Gaullier Nicolas <nicolas.gaullier@arkena.com> wrote:
>>De : ffmpeg-devel [mailto:ffmpeg-devel-bounces@ffmpeg.org] De la part de
>> Kieran Kunhya
>>Envoyé : lundi 2 septembre 2019 18:12
>>Objet : Re: [FFmpeg-devel] [PATCH 1/1] avcodec/h264: Fix poc_lsb in open
>> gop context
>>
>>Patch seems good.
>>
>>Kieran
>
> Can someone please apply the patch ?
> Thanks

applied.

> Nicolas
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
diff mbox

Patch

diff --git a/libavcodec/h264_parse.c b/libavcodec/h264_parse.c
index ac31f54e07..60fff1a549 100644
--- a/libavcodec/h264_parse.c
+++ b/libavcodec/h264_parse.c
@@ -287,6 +287,8 @@  int ff_h264_init_poc(int pic_field_poc[2], int *pic_poc,
 
     if (sps->poc_type == 0) {
         const int max_poc_lsb = 1 << sps->log2_max_poc_lsb;
+        if (pc->prev_poc_lsb < 0)
+            pc->prev_poc_lsb =  pc->poc_lsb;
 
         if (pc->poc_lsb < pc->prev_poc_lsb &&
             pc->prev_poc_lsb - pc->poc_lsb >= max_poc_lsb / 2)
diff --git a/libavcodec/h264dec.c b/libavcodec/h264dec.c
index 8d1bd16a8e..f12651fa3d 100644
--- a/libavcodec/h264dec.c
+++ b/libavcodec/h264dec.c
@@ -474,7 +474,7 @@  static void idr(H264Context *h)
     h->poc.prev_frame_num        =
     h->poc.prev_frame_num_offset = 0;
     h->poc.prev_poc_msb          = 1<<16;
-    h->poc.prev_poc_lsb          = 0;
+    h->poc.prev_poc_lsb          = -1;
     for (i = 0; i < MAX_DELAYED_PIC_COUNT; i++)
         h->last_pocs[i] = INT_MIN;
 }