Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap
@ 2022-10-16 20:43 Andreas Rheinhardt
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 2/9] avcodec/vc1_block: Remove dead calls to ff_mpeg_draw_horiz_band() Andreas Rheinhardt
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: Andreas Rheinhardt @ 2022-10-16 20:43 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Andreas Rheinhardt

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/ffv1dec.c | 2 +-
 libavcodec/h264dec.c | 2 +-
 libavcodec/pngdec.c  | 4 ++--
 libavcodec/snowdec.c | 2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/libavcodec/ffv1dec.c b/libavcodec/ffv1dec.c
index d4bc60a7da..9a610c2ff9 100644
--- a/libavcodec/ffv1dec.c
+++ b/libavcodec/ffv1dec.c
@@ -1099,7 +1099,7 @@ const FFCodec ff_ffv1_decoder = {
     .close          = ffv1_decode_close,
     FF_CODEC_DECODE_CB(decode_frame),
     UPDATE_THREAD_CONTEXT(update_thread_context),
-    .p.capabilities = AV_CODEC_CAP_DR1 /*| AV_CODEC_CAP_DRAW_HORIZ_BAND*/ |
+    .p.capabilities = AV_CODEC_CAP_DR1 |
                       AV_CODEC_CAP_FRAME_THREADS | AV_CODEC_CAP_SLICE_THREADS,
     .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP |
                       FF_CODEC_CAP_ALLOCATE_PROGRESS,
diff --git a/libavcodec/h264dec.c b/libavcodec/h264dec.c
index 8f56f3ff92..6ede4e8c9f 100644
--- a/libavcodec/h264dec.c
+++ b/libavcodec/h264dec.c
@@ -1075,7 +1075,7 @@ const FFCodec ff_h264_decoder = {
     .init                  = h264_decode_init,
     .close                 = h264_decode_end,
     FF_CODEC_DECODE_CB(h264_decode_frame),
-    .p.capabilities        = /*AV_CODEC_CAP_DRAW_HORIZ_BAND |*/ AV_CODEC_CAP_DR1 |
+    .p.capabilities        = AV_CODEC_CAP_DR1 |
                              AV_CODEC_CAP_DELAY | AV_CODEC_CAP_SLICE_THREADS |
                              AV_CODEC_CAP_FRAME_THREADS,
     .hw_configs            = (const AVCodecHWConfigInternal *const []) {
diff --git a/libavcodec/pngdec.c b/libavcodec/pngdec.c
index 3c3eca601e..8080094d65 100644
--- a/libavcodec/pngdec.c
+++ b/libavcodec/pngdec.c
@@ -1723,7 +1723,7 @@ const FFCodec ff_apng_decoder = {
     .close          = png_dec_end,
     FF_CODEC_DECODE_CB(decode_frame_apng),
     UPDATE_THREAD_CONTEXT(update_thread_context),
-    .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS /*| AV_CODEC_CAP_DRAW_HORIZ_BAND*/,
+    .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS,
     .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP |
                       FF_CODEC_CAP_ALLOCATE_PROGRESS |
                       FF_CODEC_CAP_ICC_PROFILES,
@@ -1741,7 +1741,7 @@ const FFCodec ff_png_decoder = {
     .close          = png_dec_end,
     FF_CODEC_DECODE_CB(decode_frame_png),
     UPDATE_THREAD_CONTEXT(update_thread_context),
-    .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS /*| AV_CODEC_CAP_DRAW_HORIZ_BAND*/,
+    .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS,
     .caps_internal  = FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM |
                       FF_CODEC_CAP_ALLOCATE_PROGRESS | FF_CODEC_CAP_INIT_CLEANUP |
                       FF_CODEC_CAP_ICC_PROFILES,
diff --git a/libavcodec/snowdec.c b/libavcodec/snowdec.c
index 5c95ffde11..bed29d3390 100644
--- a/libavcodec/snowdec.c
+++ b/libavcodec/snowdec.c
@@ -662,6 +662,6 @@ const FFCodec ff_snow_decoder = {
     .init           = ff_snow_common_init,
     .close          = decode_end,
     FF_CODEC_DECODE_CB(decode_frame),
-    .p.capabilities = AV_CODEC_CAP_DR1 /*| AV_CODEC_CAP_DRAW_HORIZ_BAND*/,
+    .p.capabilities = AV_CODEC_CAP_DR1,
     .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
 };
-- 
2.34.1

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [FFmpeg-devel] [PATCH 2/9] avcodec/vc1_block: Remove dead calls to ff_mpeg_draw_horiz_band()
  2022-10-16 20:43 [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap Andreas Rheinhardt
@ 2022-10-16 20:46 ` Andreas Rheinhardt
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 3/9] avcodec/mpegvideo: Don't check for draw_horiz_band Andreas Rheinhardt
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: Andreas Rheinhardt @ 2022-10-16 20:46 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Andreas Rheinhardt

The VC-1 decoders don't support draw_horiz_band at all.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/dxva2_vc1.c |  2 --
 libavcodec/vaapi_vc1.c |  2 --
 libavcodec/vc1_block.c | 23 -----------------------
 3 files changed, 27 deletions(-)

diff --git a/libavcodec/dxva2_vc1.c b/libavcodec/dxva2_vc1.c
index cf660a50d2..12e3de59ec 100644
--- a/libavcodec/dxva2_vc1.c
+++ b/libavcodec/dxva2_vc1.c
@@ -372,8 +372,6 @@ static int dxva2_vc1_end_frame(AVCodecContext *avctx)
                                     &ctx_pic->pp, sizeof(ctx_pic->pp),
                                     NULL, 0,
                                     commit_bitstream_and_slice_buffer);
-    if (!ret)
-        ff_mpeg_draw_horiz_band(&v->s, 0, avctx->height);
     return ret;
 }
 
diff --git a/libavcodec/vaapi_vc1.c b/libavcodec/vaapi_vc1.c
index d82336a3b3..fb2132e814 100644
--- a/libavcodec/vaapi_vc1.c
+++ b/libavcodec/vaapi_vc1.c
@@ -457,8 +457,6 @@ static int vaapi_vc1_end_frame(AVCodecContext *avctx)
     if (ret < 0)
         goto fail;
 
-    ff_mpeg_draw_horiz_band(s, 0, s->avctx->height);
-
 fail:
     return ret;
 }
diff --git a/libavcodec/vc1_block.c b/libavcodec/vc1_block.c
index 3267fc269b..ef8ce40e68 100644
--- a/libavcodec/vc1_block.c
+++ b/libavcodec/vc1_block.c
@@ -2640,15 +2640,9 @@ static void vc1_decode_i_blocks(VC1Context *v)
             v->left_blk_idx = (v->left_blk_idx + 1) % (v->end_mb_x + 2);
             v->cur_blk_idx = (v->cur_blk_idx + 1) % (v->end_mb_x + 2);
         }
-        if (!v->s.loop_filter)
-            ff_mpeg_draw_horiz_band(s, s->mb_y * 16, 16);
-        else if (s->mb_y)
-            ff_mpeg_draw_horiz_band(s, (s->mb_y - 1) * 16, 16);
 
         s->first_slice_line = 0;
     }
-    if (v->s.loop_filter)
-        ff_mpeg_draw_horiz_band(s, (s->end_mb_y - 1) * 16, 16);
 
     /* This is intentionally mb_height and not end_mb_y - unlike in advanced
      * profile, these only differ are when decoding MSS2 rectangles. */
@@ -2786,15 +2780,9 @@ static int vc1_decode_i_blocks_adv(VC1Context *v)
             inc_blk_idx(v->left_blk_idx);
             inc_blk_idx(v->cur_blk_idx);
         }
-        if (!v->s.loop_filter)
-            ff_mpeg_draw_horiz_band(s, s->mb_y * 16, 16);
-        else if (s->mb_y)
-            ff_mpeg_draw_horiz_band(s, (s->mb_y-1) * 16, 16);
         s->first_slice_line = 0;
     }
 
-    if (v->s.loop_filter)
-        ff_mpeg_draw_horiz_band(s, (s->end_mb_y - 1) * 16, 16);
     ff_er_add_slice(&s->er, 0, s->start_mb_y << v->field_mode, s->mb_width - 1,
                     (s->end_mb_y << v->field_mode) - 1, ER_MB_END);
     return 0;
@@ -2882,12 +2870,8 @@ static void vc1_decode_p_blocks(VC1Context *v)
         memmove(v->luma_mv_base,
                 v->luma_mv - s->mb_stride,
                 sizeof(v->luma_mv_base[0]) * 2 * s->mb_stride);
-        if (s->mb_y != s->start_mb_y)
-            ff_mpeg_draw_horiz_band(s, (s->mb_y - 1) * 16, 16);
         s->first_slice_line = 0;
     }
-    if (s->end_mb_y >= s->start_mb_y)
-        ff_mpeg_draw_horiz_band(s, (s->end_mb_y - 1) * 16, 16);
     ff_er_add_slice(&s->er, 0, s->start_mb_y << v->field_mode, s->mb_width - 1,
                     (s->end_mb_y << v->field_mode) - 1, ER_MB_END);
 }
@@ -2964,14 +2948,8 @@ static void vc1_decode_b_blocks(VC1Context *v)
         memmove(v->is_intra_base,
                 v->is_intra - s->mb_stride,
                 sizeof(v->is_intra_base[0]) * 2 * s->mb_stride);
-        if (!v->s.loop_filter)
-            ff_mpeg_draw_horiz_band(s, s->mb_y * 16, 16);
-        else if (s->mb_y)
-            ff_mpeg_draw_horiz_band(s, (s->mb_y - 1) * 16, 16);
         s->first_slice_line = 0;
     }
-    if (v->s.loop_filter)
-        ff_mpeg_draw_horiz_band(s, (s->end_mb_y - 1) * 16, 16);
     ff_er_add_slice(&s->er, 0, s->start_mb_y << v->field_mode, s->mb_width - 1,
                     (s->end_mb_y << v->field_mode) - 1, ER_MB_END);
 }
@@ -2992,7 +2970,6 @@ static void vc1_decode_skip_blocks(VC1Context *v)
         memcpy(s->dest[0], s->last_picture.f->data[0] + s->mb_y * 16 * s->linesize,   s->linesize   * 16);
         memcpy(s->dest[1], s->last_picture.f->data[1] + s->mb_y *  8 * s->uvlinesize, s->uvlinesize *  8);
         memcpy(s->dest[2], s->last_picture.f->data[2] + s->mb_y *  8 * s->uvlinesize, s->uvlinesize *  8);
-        ff_mpeg_draw_horiz_band(s, s->mb_y * 16, 16);
         s->first_slice_line = 0;
     }
     s->pict_type = AV_PICTURE_TYPE_P;
-- 
2.34.1

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [FFmpeg-devel] [PATCH 3/9] avcodec/mpegvideo: Don't check for draw_horiz_band
  2022-10-16 20:43 [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap Andreas Rheinhardt
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 2/9] avcodec/vc1_block: Remove dead calls to ff_mpeg_draw_horiz_band() Andreas Rheinhardt
@ 2022-10-16 20:46 ` Andreas Rheinhardt
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 4/9] avcodec/mpegvideo: Reindent after the last commit Andreas Rheinhardt
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: Andreas Rheinhardt @ 2022-10-16 20:46 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Andreas Rheinhardt

Some parts of mpegvideo.c behave differently depending
upon whether AVCodecContext.draw_horiz_band is set or not.
This differing behaviour makes lots of FATE tests fail
and leads to garbage output, although setting this callback
is not supposed to change the output at all.

These checks have been added in commits
3994623df2efd2749631c3492184dd8d4ffa9d1b and
b68ab2609c67d07b6f12ed65125d76bf9a054479. The commit messages
do not contain a real reason for adding the checks and it is
indeed a mystery to me. But removing these checks fixes
the FATE tests when one adds an (empty) draw_horiz_band
when using a codec that claims to support it.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/mpegvideo.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/libavcodec/mpegvideo.c b/libavcodec/mpegvideo.c
index 5095149eaa..ad13832fff 100644
--- a/libavcodec/mpegvideo.c
+++ b/libavcodec/mpegvideo.c
@@ -1337,7 +1337,7 @@ void mpv_reconstruct_mb_internal(MpegEncContext *s, int16_t block[12][64],
         qpel_mc_func (*op_qpix)[16];
         const int linesize   = s->current_picture.f->linesize[0]; //not s->linesize as this would be wrong for field pics
         const int uvlinesize = s->current_picture.f->linesize[1];
-        const int readable = s->pict_type != AV_PICTURE_TYPE_B || IS_ENCODER(s) || s->avctx->draw_horiz_band || lowres_flag;
+        const int readable = s->pict_type != AV_PICTURE_TYPE_B || IS_ENCODER(s) || lowres_flag;
         const int block_size= lowres_flag ? 8>>s->avctx->lowres : 8;
 
         /* avoid copy if macroblock skipped in last frame too */
@@ -1584,8 +1584,6 @@ void ff_init_block_index(MpegEncContext *s){ //FIXME maybe rename
     s->dest[1] = s->current_picture.f->data[1] + (int)((s->mb_x - 1U) << (width_of_mb - s->chroma_x_shift));
     s->dest[2] = s->current_picture.f->data[2] + (int)((s->mb_x - 1U) << (width_of_mb - s->chroma_x_shift));
 
-    if(!(s->pict_type==AV_PICTURE_TYPE_B && s->avctx->draw_horiz_band && s->picture_structure==PICT_FRAME))
-    {
         if(s->picture_structure==PICT_FRAME){
         s->dest[0] += s->mb_y *   linesize << height_of_mb;
         s->dest[1] += s->mb_y * uvlinesize << (height_of_mb - s->chroma_y_shift);
@@ -1596,7 +1594,6 @@ void ff_init_block_index(MpegEncContext *s){ //FIXME maybe rename
             s->dest[2] += (s->mb_y>>1) * uvlinesize << (height_of_mb - s->chroma_y_shift);
             av_assert1((s->mb_y&1) == (s->picture_structure == PICT_BOTTOM_FIELD));
         }
-    }
 }
 
 /**
-- 
2.34.1

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [FFmpeg-devel] [PATCH 4/9] avcodec/mpegvideo: Reindent after the last commit
  2022-10-16 20:43 [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap Andreas Rheinhardt
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 2/9] avcodec/vc1_block: Remove dead calls to ff_mpeg_draw_horiz_band() Andreas Rheinhardt
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 3/9] avcodec/mpegvideo: Don't check for draw_horiz_band Andreas Rheinhardt
@ 2022-10-16 20:46 ` Andreas Rheinhardt
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 5/9] avcodec/h261: Use ptrdiff_t for stride Andreas Rheinhardt
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: Andreas Rheinhardt @ 2022-10-16 20:46 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Andreas Rheinhardt

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/mpegvideo.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/libavcodec/mpegvideo.c b/libavcodec/mpegvideo.c
index ad13832fff..87dae1b098 100644
--- a/libavcodec/mpegvideo.c
+++ b/libavcodec/mpegvideo.c
@@ -1584,16 +1584,16 @@ void ff_init_block_index(MpegEncContext *s){ //FIXME maybe rename
     s->dest[1] = s->current_picture.f->data[1] + (int)((s->mb_x - 1U) << (width_of_mb - s->chroma_x_shift));
     s->dest[2] = s->current_picture.f->data[2] + (int)((s->mb_x - 1U) << (width_of_mb - s->chroma_x_shift));
 
-        if(s->picture_structure==PICT_FRAME){
+    if (s->picture_structure == PICT_FRAME) {
         s->dest[0] += s->mb_y *   linesize << height_of_mb;
         s->dest[1] += s->mb_y * uvlinesize << (height_of_mb - s->chroma_y_shift);
         s->dest[2] += s->mb_y * uvlinesize << (height_of_mb - s->chroma_y_shift);
-        }else{
-            s->dest[0] += (s->mb_y>>1) *   linesize << height_of_mb;
-            s->dest[1] += (s->mb_y>>1) * uvlinesize << (height_of_mb - s->chroma_y_shift);
-            s->dest[2] += (s->mb_y>>1) * uvlinesize << (height_of_mb - s->chroma_y_shift);
-            av_assert1((s->mb_y&1) == (s->picture_structure == PICT_BOTTOM_FIELD));
-        }
+    } else {
+        s->dest[0] += (s->mb_y>>1) *   linesize << height_of_mb;
+        s->dest[1] += (s->mb_y>>1) * uvlinesize << (height_of_mb - s->chroma_y_shift);
+        s->dest[2] += (s->mb_y>>1) * uvlinesize << (height_of_mb - s->chroma_y_shift);
+        av_assert1((s->mb_y&1) == (s->picture_structure == PICT_BOTTOM_FIELD));
+    }
 }
 
 /**
-- 
2.34.1

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [FFmpeg-devel] [PATCH 5/9] avcodec/h261: Use ptrdiff_t for stride
  2022-10-16 20:43 [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap Andreas Rheinhardt
                   ` (2 preceding siblings ...)
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 4/9] avcodec/mpegvideo: Reindent after the last commit Andreas Rheinhardt
@ 2022-10-16 20:46 ` Andreas Rheinhardt
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 6/9] avcodec/mpegvideo: Move VIDEO_FORMAT_* defines to mpeg12enc.c Andreas Rheinhardt
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: Andreas Rheinhardt @ 2022-10-16 20:46 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Andreas Rheinhardt

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/h261.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/libavcodec/h261.c b/libavcodec/h261.c
index 7dfaee7dc4..8e0e13459a 100644
--- a/libavcodec/h261.c
+++ b/libavcodec/h261.c
@@ -30,9 +30,9 @@
 
 #define IS_FIL(a)    ((a) & MB_TYPE_H261_FIL)
 
-static void h261_loop_filter(uint8_t *src, int stride)
+static void h261_loop_filter(uint8_t *src, ptrdiff_t stride)
 {
-    int x, y, xy, yz;
+    int x, y;
     int temp[64];
 
     for (x = 0; x < 8; x++) {
@@ -41,8 +41,8 @@ static void h261_loop_filter(uint8_t *src, int stride)
     }
     for (y = 1; y < 7; y++) {
         for (x = 0; x < 8; x++) {
-            xy       = y * stride + x;
-            yz       = y * 8      + x;
+            ptrdiff_t xy = y * stride + x;
+            ptrdiff_t yz = y * 8      + x;
             temp[yz] = src[xy - stride] + 2 * src[xy] + src[xy + stride];
         }
     }
@@ -51,8 +51,8 @@ static void h261_loop_filter(uint8_t *src, int stride)
         src[y * stride]     = (temp[y * 8]     + 2) >> 2;
         src[y * stride + 7] = (temp[y * 8 + 7] + 2) >> 2;
         for (x = 1; x < 7; x++) {
-            xy      = y * stride + x;
-            yz      = y * 8      + x;
+            ptrdiff_t xy = y * stride + x;
+            ptrdiff_t yz = y * 8      + x;
             src[xy] = (temp[yz - 1] + 2 * temp[yz] + temp[yz + 1] + 8) >> 4;
         }
     }
@@ -61,8 +61,8 @@ static void h261_loop_filter(uint8_t *src, int stride)
 void ff_h261_loop_filter(MpegEncContext *s)
 {
     H261Context *const h = s->private_ctx;
-    const int linesize   = s->linesize;
-    const int uvlinesize = s->uvlinesize;
+    const ptrdiff_t linesize   = s->linesize;
+    const ptrdiff_t uvlinesize = s->uvlinesize;
     uint8_t *dest_y      = s->dest[0];
     uint8_t *dest_cb     = s->dest[1];
     uint8_t *dest_cr     = s->dest[2];
-- 
2.34.1

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [FFmpeg-devel] [PATCH 6/9] avcodec/mpegvideo: Move VIDEO_FORMAT_* defines to mpeg12enc.c
  2022-10-16 20:43 [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap Andreas Rheinhardt
                   ` (3 preceding siblings ...)
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 5/9] avcodec/h261: Use ptrdiff_t for stride Andreas Rheinhardt
@ 2022-10-16 20:46 ` Andreas Rheinhardt
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 7/9] avcodec/mpegutils: Return early in ff_draw_horiz_band() Andreas Rheinhardt
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: Andreas Rheinhardt @ 2022-10-16 20:46 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Andreas Rheinhardt

Forgotten in f899e3b51bc85c45f54f7ac64abfbde6b2cd7d3d.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/mpeg12enc.c | 6 ++++++
 libavcodec/mpegvideo.h | 6 ------
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c
index 01cfd1c1fa..c3df924b64 100644
--- a/libavcodec/mpeg12enc.c
+++ b/libavcodec/mpeg12enc.c
@@ -83,6 +83,12 @@ typedef struct MPEG12EncContext {
     int a53_cc;
     int seq_disp_ext;
     int video_format;
+#define VIDEO_FORMAT_COMPONENT   0
+#define VIDEO_FORMAT_PAL         1
+#define VIDEO_FORMAT_NTSC        2
+#define VIDEO_FORMAT_SECAM       3
+#define VIDEO_FORMAT_MAC         4
+#define VIDEO_FORMAT_UNSPECIFIED 5
 } MPEG12EncContext;
 
 #define A53_MAX_CC_COUNT 0x1f
diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h
index 1ddf8034aa..daaa7c95b4 100644
--- a/libavcodec/mpegvideo.h
+++ b/libavcodec/mpegvideo.h
@@ -445,12 +445,6 @@ typedef struct MpegEncContext {
     int brd_scale;
     int intra_vlc_format;
     int alternate_scan;
-#define VIDEO_FORMAT_COMPONENT   0
-#define VIDEO_FORMAT_PAL         1
-#define VIDEO_FORMAT_NTSC        2
-#define VIDEO_FORMAT_SECAM       3
-#define VIDEO_FORMAT_MAC         4
-#define VIDEO_FORMAT_UNSPECIFIED 5
     int repeat_first_field;
     int chroma_420_type;
     int chroma_format;
-- 
2.34.1

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [FFmpeg-devel] [PATCH 7/9] avcodec/mpegutils: Return early in ff_draw_horiz_band()
  2022-10-16 20:43 [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap Andreas Rheinhardt
                   ` (4 preceding siblings ...)
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 6/9] avcodec/mpegvideo: Move VIDEO_FORMAT_* defines to mpeg12enc.c Andreas Rheinhardt
@ 2022-10-16 20:46 ` Andreas Rheinhardt
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 8/9] avcodec/mpegutils: Reindent after the previous commit Andreas Rheinhardt
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: Andreas Rheinhardt @ 2022-10-16 20:46 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Andreas Rheinhardt

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/mpegutils.c | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/libavcodec/mpegutils.c b/libavcodec/mpegutils.c
index ff9418232b..afbb16e201 100644
--- a/libavcodec/mpegutils.c
+++ b/libavcodec/mpegutils.c
@@ -53,9 +53,14 @@ void ff_draw_horiz_band(AVCodecContext *avctx,
                         int y, int h, int picture_structure,
                         int first_field, int low_delay)
 {
-    const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(avctx->pix_fmt);
-    int vshift = desc->log2_chroma_h;
     const int field_pic = picture_structure != PICT_FRAME;
+    const AVFrame *src;
+    int offset[AV_NUM_DATA_POINTERS];
+    int i;
+
+    if (!avctx->draw_horiz_band)
+        return;
+
     if (field_pic) {
         h <<= 1;
         y <<= 1;
@@ -67,11 +72,6 @@ void ff_draw_horiz_band(AVCodecContext *avctx,
         !(avctx->slice_flags & SLICE_FLAG_ALLOW_FIELD))
         return;
 
-    if (avctx->draw_horiz_band) {
-        const AVFrame *src;
-        int offset[AV_NUM_DATA_POINTERS];
-        int i;
-
         if (cur->pict_type == AV_PICTURE_TYPE_B || low_delay ||
            (avctx->slice_flags & SLICE_FLAG_CODED_ORDER))
             src = cur;
@@ -86,6 +86,9 @@ void ff_draw_horiz_band(AVCodecContext *avctx,
             for (i = 0; i < AV_NUM_DATA_POINTERS; i++)
                 offset[i] = 0;
         } else {
+            const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(avctx->pix_fmt);
+            int vshift = desc->log2_chroma_h;
+
             offset[0]= y * src->linesize[0];
             offset[1]=
             offset[2]= (y >> vshift) * src->linesize[1];
@@ -97,7 +100,6 @@ void ff_draw_horiz_band(AVCodecContext *avctx,
 
         avctx->draw_horiz_band(avctx, src, offset,
                                y, picture_structure, h);
-    }
 }
 
 static char get_type_mv_char(int mb_type)
-- 
2.34.1

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [FFmpeg-devel] [PATCH 8/9] avcodec/mpegutils: Reindent after the previous commit
  2022-10-16 20:43 [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap Andreas Rheinhardt
                   ` (5 preceding siblings ...)
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 7/9] avcodec/mpegutils: Return early in ff_draw_horiz_band() Andreas Rheinhardt
@ 2022-10-16 20:46 ` Andreas Rheinhardt
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 9/9] avcodec/ffv1: Move ffv1_template.c inclusion to dec/enc templates Andreas Rheinhardt
  2022-10-19 12:13 ` [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap Andreas Rheinhardt
  8 siblings, 0 replies; 10+ messages in thread
From: Andreas Rheinhardt @ 2022-10-16 20:46 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Andreas Rheinhardt

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/mpegutils.c | 51 +++++++++++++++++++++---------------------
 1 file changed, 25 insertions(+), 26 deletions(-)

diff --git a/libavcodec/mpegutils.c b/libavcodec/mpegutils.c
index afbb16e201..36d75b9633 100644
--- a/libavcodec/mpegutils.c
+++ b/libavcodec/mpegutils.c
@@ -56,7 +56,6 @@ void ff_draw_horiz_band(AVCodecContext *avctx,
     const int field_pic = picture_structure != PICT_FRAME;
     const AVFrame *src;
     int offset[AV_NUM_DATA_POINTERS];
-    int i;
 
     if (!avctx->draw_horiz_band)
         return;
@@ -72,34 +71,34 @@ void ff_draw_horiz_band(AVCodecContext *avctx,
         !(avctx->slice_flags & SLICE_FLAG_ALLOW_FIELD))
         return;
 
-        if (cur->pict_type == AV_PICTURE_TYPE_B || low_delay ||
-           (avctx->slice_flags & SLICE_FLAG_CODED_ORDER))
-            src = cur;
-        else if (last)
-            src = last;
-        else
-            return;
+    if (cur->pict_type == AV_PICTURE_TYPE_B || low_delay ||
+        (avctx->slice_flags & SLICE_FLAG_CODED_ORDER))
+        src = cur;
+    else if (last)
+        src = last;
+    else
+        return;
 
-        if (cur->pict_type == AV_PICTURE_TYPE_B &&
-            picture_structure == PICT_FRAME &&
-            avctx->codec_id != AV_CODEC_ID_SVQ3) {
-            for (i = 0; i < AV_NUM_DATA_POINTERS; i++)
-                offset[i] = 0;
-        } else {
-            const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(avctx->pix_fmt);
-            int vshift = desc->log2_chroma_h;
-
-            offset[0]= y * src->linesize[0];
-            offset[1]=
-            offset[2]= (y >> vshift) * src->linesize[1];
-            for (i = 3; i < AV_NUM_DATA_POINTERS; i++)
-                offset[i] = 0;
-        }
+    if (cur->pict_type == AV_PICTURE_TYPE_B &&
+        picture_structure == PICT_FRAME &&
+        avctx->codec_id != AV_CODEC_ID_SVQ3) {
+        for (int i = 0; i < AV_NUM_DATA_POINTERS; i++)
+            offset[i] = 0;
+    } else {
+        const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(avctx->pix_fmt);
+        int vshift = desc->log2_chroma_h;
+
+        offset[0] = y * src->linesize[0];
+        offset[1] =
+        offset[2] = (y >> vshift) * src->linesize[1];
+        for (int i = 3; i < AV_NUM_DATA_POINTERS; i++)
+            offset[i] = 0;
+    }
 
-        emms_c();
+    emms_c();
 
-        avctx->draw_horiz_band(avctx, src, offset,
-                               y, picture_structure, h);
+    avctx->draw_horiz_band(avctx, src, offset,
+                            y, picture_structure, h);
 }
 
 static char get_type_mv_char(int mb_type)
-- 
2.34.1

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [FFmpeg-devel] [PATCH 9/9] avcodec/ffv1: Move ffv1_template.c inclusion to dec/enc templates
  2022-10-16 20:43 [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap Andreas Rheinhardt
                   ` (6 preceding siblings ...)
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 8/9] avcodec/mpegutils: Reindent after the previous commit Andreas Rheinhardt
@ 2022-10-16 20:46 ` Andreas Rheinhardt
  2022-10-19 12:13 ` [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap Andreas Rheinhardt
  8 siblings, 0 replies; 10+ messages in thread
From: Andreas Rheinhardt @ 2022-10-16 20:46 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Andreas Rheinhardt

Both the FFV1 decoder and encoder use a template of their own
to generate code multiple times. They also use a common template,
used by both decoder and encoder templates which is currently
instantiated in ffv1.h (and therefore also in ffv1.c, which
doesn't need it at all).

All these templates have the prerequisite that two macros
are defined, namely RENAME() and TYPE. The codec-specific
templates call the functions generated via the common template
via the RENAME() macro and therefore the macros used for
the common template must coincide with the macros used for
the codec-specific templates. But then it is better to not
instantiate the common template in ffv1.h, but in the codec
specific templates.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/ffv1.h             | 12 ------------
 libavcodec/ffv1dec_template.c |  2 ++
 libavcodec/ffv1enc_template.c |  2 ++
 3 files changed, 4 insertions(+), 12 deletions(-)

diff --git a/libavcodec/ffv1.h b/libavcodec/ffv1.h
index 3532815501..005f308784 100644
--- a/libavcodec/ffv1.h
+++ b/libavcodec/ffv1.h
@@ -182,16 +182,4 @@ static inline void update_vlc_state(VlcState *const state, const int v)
     state->count = count;
 }
 
-#define TYPE int16_t
-#define RENAME(name) name
-#include "ffv1_template.c"
-#undef TYPE
-#undef RENAME
-
-#define TYPE int32_t
-#define RENAME(name) name ## 32
-#include "ffv1_template.c"
-#undef TYPE
-#undef RENAME
-
 #endif /* AVCODEC_FFV1_H */
diff --git a/libavcodec/ffv1dec_template.c b/libavcodec/ffv1dec_template.c
index 9b1d65e825..590ccac022 100644
--- a/libavcodec/ffv1dec_template.c
+++ b/libavcodec/ffv1dec_template.c
@@ -20,6 +20,8 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#include "ffv1_template.c"
+
 static av_always_inline int RENAME(decode_line)(FFV1Context *s, int w,
                                                  TYPE *sample[2],
                                                  int plane_index, int bits)
diff --git a/libavcodec/ffv1enc_template.c b/libavcodec/ffv1enc_template.c
index 8a4a387923..8953dbe07c 100644
--- a/libavcodec/ffv1enc_template.c
+++ b/libavcodec/ffv1enc_template.c
@@ -20,6 +20,8 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#include "ffv1_template.c"
+
 static av_always_inline int RENAME(encode_line)(FFV1Context *s, int w,
                                                 TYPE *sample[3],
                                                 int plane_index, int bits)
-- 
2.34.1

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap
  2022-10-16 20:43 [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap Andreas Rheinhardt
                   ` (7 preceding siblings ...)
  2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 9/9] avcodec/ffv1: Move ffv1_template.c inclusion to dec/enc templates Andreas Rheinhardt
@ 2022-10-19 12:13 ` Andreas Rheinhardt
  8 siblings, 0 replies; 10+ messages in thread
From: Andreas Rheinhardt @ 2022-10-19 12:13 UTC (permalink / raw)
  To: ffmpeg-devel

Andreas Rheinhardt:
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
> ---
>  libavcodec/ffv1dec.c | 2 +-
>  libavcodec/h264dec.c | 2 +-
>  libavcodec/pngdec.c  | 4 ++--
>  libavcodec/snowdec.c | 2 +-
>  4 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/libavcodec/ffv1dec.c b/libavcodec/ffv1dec.c
> index d4bc60a7da..9a610c2ff9 100644
> --- a/libavcodec/ffv1dec.c
> +++ b/libavcodec/ffv1dec.c
> @@ -1099,7 +1099,7 @@ const FFCodec ff_ffv1_decoder = {
>      .close          = ffv1_decode_close,
>      FF_CODEC_DECODE_CB(decode_frame),
>      UPDATE_THREAD_CONTEXT(update_thread_context),
> -    .p.capabilities = AV_CODEC_CAP_DR1 /*| AV_CODEC_CAP_DRAW_HORIZ_BAND*/ |
> +    .p.capabilities = AV_CODEC_CAP_DR1 |
>                        AV_CODEC_CAP_FRAME_THREADS | AV_CODEC_CAP_SLICE_THREADS,
>      .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP |
>                        FF_CODEC_CAP_ALLOCATE_PROGRESS,
> diff --git a/libavcodec/h264dec.c b/libavcodec/h264dec.c
> index 8f56f3ff92..6ede4e8c9f 100644
> --- a/libavcodec/h264dec.c
> +++ b/libavcodec/h264dec.c
> @@ -1075,7 +1075,7 @@ const FFCodec ff_h264_decoder = {
>      .init                  = h264_decode_init,
>      .close                 = h264_decode_end,
>      FF_CODEC_DECODE_CB(h264_decode_frame),
> -    .p.capabilities        = /*AV_CODEC_CAP_DRAW_HORIZ_BAND |*/ AV_CODEC_CAP_DR1 |
> +    .p.capabilities        = AV_CODEC_CAP_DR1 |
>                               AV_CODEC_CAP_DELAY | AV_CODEC_CAP_SLICE_THREADS |
>                               AV_CODEC_CAP_FRAME_THREADS,
>      .hw_configs            = (const AVCodecHWConfigInternal *const []) {
> diff --git a/libavcodec/pngdec.c b/libavcodec/pngdec.c
> index 3c3eca601e..8080094d65 100644
> --- a/libavcodec/pngdec.c
> +++ b/libavcodec/pngdec.c
> @@ -1723,7 +1723,7 @@ const FFCodec ff_apng_decoder = {
>      .close          = png_dec_end,
>      FF_CODEC_DECODE_CB(decode_frame_apng),
>      UPDATE_THREAD_CONTEXT(update_thread_context),
> -    .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS /*| AV_CODEC_CAP_DRAW_HORIZ_BAND*/,
> +    .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS,
>      .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP |
>                        FF_CODEC_CAP_ALLOCATE_PROGRESS |
>                        FF_CODEC_CAP_ICC_PROFILES,
> @@ -1741,7 +1741,7 @@ const FFCodec ff_png_decoder = {
>      .close          = png_dec_end,
>      FF_CODEC_DECODE_CB(decode_frame_png),
>      UPDATE_THREAD_CONTEXT(update_thread_context),
> -    .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS /*| AV_CODEC_CAP_DRAW_HORIZ_BAND*/,
> +    .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS,
>      .caps_internal  = FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM |
>                        FF_CODEC_CAP_ALLOCATE_PROGRESS | FF_CODEC_CAP_INIT_CLEANUP |
>                        FF_CODEC_CAP_ICC_PROFILES,
> diff --git a/libavcodec/snowdec.c b/libavcodec/snowdec.c
> index 5c95ffde11..bed29d3390 100644
> --- a/libavcodec/snowdec.c
> +++ b/libavcodec/snowdec.c
> @@ -662,6 +662,6 @@ const FFCodec ff_snow_decoder = {
>      .init           = ff_snow_common_init,
>      .close          = decode_end,
>      FF_CODEC_DECODE_CB(decode_frame),
> -    .p.capabilities = AV_CODEC_CAP_DR1 /*| AV_CODEC_CAP_DRAW_HORIZ_BAND*/,
> +    .p.capabilities = AV_CODEC_CAP_DR1,
>      .caps_internal  = FF_CODEC_CAP_INIT_CLEANUP,
>  };

Will apply this patchset tomorrow unless there are objections.

- Andreas

_______________________________________________
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".

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2022-10-19 12:13 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-16 20:43 [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap Andreas Rheinhardt
2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 2/9] avcodec/vc1_block: Remove dead calls to ff_mpeg_draw_horiz_band() Andreas Rheinhardt
2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 3/9] avcodec/mpegvideo: Don't check for draw_horiz_band Andreas Rheinhardt
2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 4/9] avcodec/mpegvideo: Reindent after the last commit Andreas Rheinhardt
2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 5/9] avcodec/h261: Use ptrdiff_t for stride Andreas Rheinhardt
2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 6/9] avcodec/mpegvideo: Move VIDEO_FORMAT_* defines to mpeg12enc.c Andreas Rheinhardt
2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 7/9] avcodec/mpegutils: Return early in ff_draw_horiz_band() Andreas Rheinhardt
2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 8/9] avcodec/mpegutils: Reindent after the previous commit Andreas Rheinhardt
2022-10-16 20:46 ` [FFmpeg-devel] [PATCH 9/9] avcodec/ffv1: Move ffv1_template.c inclusion to dec/enc templates Andreas Rheinhardt
2022-10-19 12:13 ` [FFmpeg-devel] [PATCH 1/9] avcodec/(ffv1|h264|png|snow)dec: Remove comment out DRAW_HORIZ_BAND cap Andreas Rheinhardt

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git