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/2] avcodec/dirac_dwt(_template): Don't use ff_-prefix for static func
@ 2022-09-25 23:00 Andreas Rheinhardt
  2022-09-25 23:01 ` [FFmpeg-devel] [PATCH 2/2] avcodec/dirac_dwt: Avoid conversions between function pointers and void* Andreas Rheinhardt
  2022-09-28  1:05 ` [FFmpeg-devel] [PATCH 1/2] avcodec/dirac_dwt(_template): Don't use ff_-prefix for static func Andreas Rheinhardt
  0 siblings, 2 replies; 4+ messages in thread
From: Andreas Rheinhardt @ 2022-09-25 23:00 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Andreas Rheinhardt

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

diff --git a/libavcodec/dirac_dwt.c b/libavcodec/dirac_dwt.c
index af29932c6d..4039899cf0 100644
--- a/libavcodec/dirac_dwt.c
+++ b/libavcodec/dirac_dwt.c
@@ -45,11 +45,11 @@ int ff_spatial_idwt_init(DWTContext *d, DWTPlane *p, enum dwt_type type,
     d->decomposition_count = decomposition_count;
 
     if (bit_depth == 8)
-        ret = ff_spatial_idwt_init_8bit(d, type);
+        ret = spatial_idwt_init_8bit(d, type);
     else if (bit_depth == 10)
-        ret = ff_spatial_idwt_init_10bit(d, type);
+        ret = spatial_idwt_init_10bit(d, type);
     else if (bit_depth == 12)
-        ret = ff_spatial_idwt_init_12bit(d, type);
+        ret = spatial_idwt_init_12bit(d, type);
     else
         av_log(NULL, AV_LOG_WARNING, "Unsupported bit depth = %i\n", bit_depth);
 
diff --git a/libavcodec/dirac_dwt_template.c b/libavcodec/dirac_dwt_template.c
index 5d55d932a1..f1d7f8b22f 100644
--- a/libavcodec/dirac_dwt_template.c
+++ b/libavcodec/dirac_dwt_template.c
@@ -516,7 +516,7 @@ static void RENAME(spatial_compose_dd137i_init)(DWTCompose *cs, uint8_t *buffer,
     cs->y = -5;
 }
 
-static int RENAME(ff_spatial_idwt_init)(DWTContext *d, enum dwt_type type)
+static int RENAME(spatial_idwt_init)(DWTContext *d, enum dwt_type type)
 {
     int level;
 
-- 
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] 4+ messages in thread

* [FFmpeg-devel] [PATCH 2/2] avcodec/dirac_dwt: Avoid conversions between function pointers and void*
  2022-09-25 23:00 [FFmpeg-devel] [PATCH 1/2] avcodec/dirac_dwt(_template): Don't use ff_-prefix for static func Andreas Rheinhardt
@ 2022-09-25 23:01 ` Andreas Rheinhardt
  2022-09-28  1:05 ` [FFmpeg-devel] [PATCH 1/2] avcodec/dirac_dwt(_template): Don't use ff_-prefix for static func Andreas Rheinhardt
  1 sibling, 0 replies; 4+ messages in thread
From: Andreas Rheinhardt @ 2022-09-25 23:01 UTC (permalink / raw)
  To: ffmpeg-devel; +Cc: Andreas Rheinhardt

Pointers to void can be converted to any pointer to incomplete or
object type and back; but they are nevertheless not completely generic
pointers: There is no provision in the C standard that guarantees their
convertibility with function pointers. C90 lacks a generic function
pointer, C99 made every function pointer a generic function pointer and
still disallows the convertibility with void *. Both GCC as well as
Clang warn about this when using -pedantic.

Therefore use unions to avoid these conversions.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/dirac_dwt.h          | 13 +++++----
 libavcodec/dirac_dwt_template.c | 52 ++++++++++++++++-----------------
 libavcodec/x86/dirac_dwt_init.c | 16 +++++-----
 3 files changed, 42 insertions(+), 39 deletions(-)

diff --git a/libavcodec/dirac_dwt.h b/libavcodec/dirac_dwt.h
index 994dc21d70..84f71d9120 100644
--- a/libavcodec/dirac_dwt.h
+++ b/libavcodec/dirac_dwt.h
@@ -61,11 +61,14 @@ typedef struct DWTContext {
     int support;
 
     void (*spatial_compose)(struct DWTContext *cs, int level, int width, int height, int stride);
-    void (*vertical_compose_l0)(void);
-    void (*vertical_compose_h0)(void);
-    void (*vertical_compose_l1)(void);
-    void (*vertical_compose_h1)(void);
-    void (*vertical_compose)(void);     ///< one set of lowpass and highpass combined
+    union {
+        vertical_compose_3tap tap3;
+        vertical_compose_5tap tap5;
+        vertical_compose_9tap tap9;
+    } vertical_compose_l0, vertical_compose_h0;
+    vertical_compose_3tap vertical_compose_l1;
+    vertical_compose_3tap vertical_compose_h1;
+    vertical_compose_2tap vertical_compose;     ///< one set of lowpass and highpass combined
     void (*horizontal_compose)(uint8_t *b, uint8_t *tmp, int width);
 
     DWTCompose cs[MAX_DECOMPOSITIONS];
diff --git a/libavcodec/dirac_dwt_template.c b/libavcodec/dirac_dwt_template.c
index f1d7f8b22f..0d39754ed8 100644
--- a/libavcodec/dirac_dwt_template.c
+++ b/libavcodec/dirac_dwt_template.c
@@ -338,8 +338,8 @@ static void RENAME(vertical_compose_daub97iL1)(uint8_t *_b0, uint8_t *_b1, uint8
 
 static void RENAME(spatial_compose_dd97i_dy)(DWTContext *d, int level, int width, int height, int stride)
 {
-    vertical_compose_3tap vertical_compose_l0 = (void*)d->vertical_compose_l0;
-    vertical_compose_5tap vertical_compose_h0 = (void*)d->vertical_compose_h0;
+    vertical_compose_3tap vertical_compose_l0 = d->vertical_compose_l0.tap3;
+    vertical_compose_5tap vertical_compose_h0 = d->vertical_compose_h0.tap5;
     DWTCompose *cs = d->cs + level;
 
     int i, y = cs->y;
@@ -362,8 +362,8 @@ static void RENAME(spatial_compose_dd97i_dy)(DWTContext *d, int level, int width
 
 static void RENAME(spatial_compose_dirac53i_dy)(DWTContext *d, int level, int width, int height, int stride)
 {
-    vertical_compose_3tap vertical_compose_l0 = (void*)d->vertical_compose_l0;
-    vertical_compose_3tap vertical_compose_h0 = (void*)d->vertical_compose_h0;
+    vertical_compose_3tap vertical_compose_l0 = d->vertical_compose_l0.tap3;
+    vertical_compose_3tap vertical_compose_h0 = d->vertical_compose_h0.tap3;
     DWTCompose *cs = d->cs + level;
 
     int y= cs->y;
@@ -384,8 +384,8 @@ static void RENAME(spatial_compose_dirac53i_dy)(DWTContext *d, int level, int wi
 
 static void RENAME(spatial_compose_dd137i_dy)(DWTContext *d, int level, int width, int height, int stride)
 {
-    vertical_compose_5tap vertical_compose_l0 = (void*)d->vertical_compose_l0;
-    vertical_compose_5tap vertical_compose_h0 = (void*)d->vertical_compose_h0;
+    vertical_compose_5tap vertical_compose_l0 = d->vertical_compose_l0.tap5;
+    vertical_compose_5tap vertical_compose_h0 = d->vertical_compose_h0.tap5;
     DWTCompose *cs = d->cs + level;
 
     int i, y = cs->y;
@@ -409,7 +409,7 @@ static void RENAME(spatial_compose_dd137i_dy)(DWTContext *d, int level, int widt
 // haar makes the assumption that height is even (always true for dirac)
 static void RENAME(spatial_compose_haari_dy)(DWTContext *d, int level, int width, int height, int stride)
 {
-    vertical_compose_2tap vertical_compose = (void*)d->vertical_compose;
+    vertical_compose_2tap vertical_compose = d->vertical_compose;
     int y = d->cs[level].y;
     uint8_t *b0 = d->buffer + (y-1)*stride;
     uint8_t *b1 = d->buffer + (y  )*stride;
@@ -425,8 +425,8 @@ static void RENAME(spatial_compose_haari_dy)(DWTContext *d, int level, int width
 // Fortunately, this filter isn't used in practice.
 static void RENAME(spatial_compose_fidelity)(DWTContext *d, int level, int width, int height, int stride)
 {
-    vertical_compose_9tap vertical_compose_l0 = (void*)d->vertical_compose_l0;
-    vertical_compose_9tap vertical_compose_h0 = (void*)d->vertical_compose_h0;
+    vertical_compose_9tap vertical_compose_l0 = d->vertical_compose_l0.tap9;
+    vertical_compose_9tap vertical_compose_h0 = d->vertical_compose_h0.tap9;
     int i, y;
     uint8_t *b[8];
 
@@ -450,10 +450,10 @@ static void RENAME(spatial_compose_fidelity)(DWTContext *d, int level, int width
 
 static void RENAME(spatial_compose_daub97i_dy)(DWTContext *d, int level, int width, int height, int stride)
 {
-    vertical_compose_3tap vertical_compose_l0 = (void*)d->vertical_compose_l0;
-    vertical_compose_3tap vertical_compose_h0 = (void*)d->vertical_compose_h0;
-    vertical_compose_3tap vertical_compose_l1 = (void*)d->vertical_compose_l1;
-    vertical_compose_3tap vertical_compose_h1 = (void*)d->vertical_compose_h1;
+    vertical_compose_3tap vertical_compose_l0 = d->vertical_compose_l0.tap3;
+    vertical_compose_3tap vertical_compose_h0 = d->vertical_compose_h0.tap3;
+    vertical_compose_3tap vertical_compose_l1 = d->vertical_compose_l1;
+    vertical_compose_3tap vertical_compose_h1 = d->vertical_compose_h1;
     DWTCompose *cs = d->cs + level;
 
     int i, y = cs->y;
@@ -552,29 +552,29 @@ static int RENAME(spatial_idwt_init)(DWTContext *d, enum dwt_type type)
     switch (type) {
         case DWT_DIRAC_DD9_7:
             d->spatial_compose = RENAME(spatial_compose_dd97i_dy);
-            d->vertical_compose_l0 = (void*)RENAME(vertical_compose53iL0);
-            d->vertical_compose_h0 = (void*)RENAME(vertical_compose_dd97iH0);
+            d->vertical_compose_l0.tap3 = RENAME(vertical_compose53iL0);
+            d->vertical_compose_h0.tap5 = RENAME(vertical_compose_dd97iH0);
             d->horizontal_compose = RENAME(horizontal_compose_dd97i);
             d->support = 7;
             break;
         case DWT_DIRAC_LEGALL5_3:
             d->spatial_compose = RENAME(spatial_compose_dirac53i_dy);
-            d->vertical_compose_l0 = (void*)RENAME(vertical_compose53iL0);
-            d->vertical_compose_h0 = (void*)RENAME(vertical_compose_dirac53iH0);
+            d->vertical_compose_l0.tap3 = RENAME(vertical_compose53iL0);
+            d->vertical_compose_h0.tap3 = RENAME(vertical_compose_dirac53iH0);
             d->horizontal_compose = RENAME(horizontal_compose_dirac53i);
             d->support = 3;
             break;
         case DWT_DIRAC_DD13_7:
             d->spatial_compose = RENAME(spatial_compose_dd137i_dy);
-            d->vertical_compose_l0 = (void*)RENAME(vertical_compose_dd137iL0);
-            d->vertical_compose_h0 = (void*)RENAME(vertical_compose_dd97iH0);
+            d->vertical_compose_l0.tap5 = RENAME(vertical_compose_dd137iL0);
+            d->vertical_compose_h0.tap5 = RENAME(vertical_compose_dd97iH0);
             d->horizontal_compose = RENAME(horizontal_compose_dd137i);
             d->support = 7;
             break;
         case DWT_DIRAC_HAAR0:
         case DWT_DIRAC_HAAR1:
             d->spatial_compose = RENAME(spatial_compose_haari_dy);
-            d->vertical_compose = (void*)RENAME(vertical_compose_haar);
+            d->vertical_compose = RENAME(vertical_compose_haar);
             if (type == DWT_DIRAC_HAAR0)
                 d->horizontal_compose = RENAME(horizontal_compose_haar0i);
             else
@@ -583,17 +583,17 @@ static int RENAME(spatial_idwt_init)(DWTContext *d, enum dwt_type type)
             break;
         case DWT_DIRAC_FIDELITY:
             d->spatial_compose = RENAME(spatial_compose_fidelity);
-            d->vertical_compose_l0 = (void*)RENAME(vertical_compose_fidelityiL0);
-            d->vertical_compose_h0 = (void*)RENAME(vertical_compose_fidelityiH0);
+            d->vertical_compose_l0.tap9 = RENAME(vertical_compose_fidelityiL0);
+            d->vertical_compose_h0.tap9 = RENAME(vertical_compose_fidelityiH0);
             d->horizontal_compose = RENAME(horizontal_compose_fidelityi);
             d->support = 0; // not really used
             break;
         case DWT_DIRAC_DAUB9_7:
             d->spatial_compose = RENAME(spatial_compose_daub97i_dy);
-            d->vertical_compose_l0 = (void*)RENAME(vertical_compose_daub97iL0);
-            d->vertical_compose_h0 = (void*)RENAME(vertical_compose_daub97iH0);
-            d->vertical_compose_l1 = (void*)RENAME(vertical_compose_daub97iL1);
-            d->vertical_compose_h1 = (void*)RENAME(vertical_compose_daub97iH1);
+            d->vertical_compose_l0.tap3 = RENAME(vertical_compose_daub97iL0);
+            d->vertical_compose_h0.tap3 = RENAME(vertical_compose_daub97iH0);
+            d->vertical_compose_l1 = RENAME(vertical_compose_daub97iL1);
+            d->vertical_compose_h1 = RENAME(vertical_compose_daub97iH1);
             d->horizontal_compose = RENAME(horizontal_compose_daub97i);
             d->support = 5;
             break;
diff --git a/libavcodec/x86/dirac_dwt_init.c b/libavcodec/x86/dirac_dwt_init.c
index 9200618283..13b42b60cb 100644
--- a/libavcodec/x86/dirac_dwt_init.c
+++ b/libavcodec/x86/dirac_dwt_init.c
@@ -165,23 +165,23 @@ void ff_spatial_idwt_init_x86(DWTContext *d, enum dwt_type type)
 
     switch (type) {
     case DWT_DIRAC_DD9_7:
-        d->vertical_compose_l0 = (void*)vertical_compose53iL0_sse2;
-        d->vertical_compose_h0 = (void*)vertical_compose_dd97iH0_sse2;
+        d->vertical_compose_l0.tap3 = vertical_compose53iL0_sse2;
+        d->vertical_compose_h0.tap5 = vertical_compose_dd97iH0_sse2;
         break;
     case DWT_DIRAC_LEGALL5_3:
-        d->vertical_compose_l0 = (void*)vertical_compose53iL0_sse2;
-        d->vertical_compose_h0 = (void*)vertical_compose_dirac53iH0_sse2;
+        d->vertical_compose_l0.tap3 = vertical_compose53iL0_sse2;
+        d->vertical_compose_h0.tap3 = vertical_compose_dirac53iH0_sse2;
         break;
     case DWT_DIRAC_DD13_7:
-        d->vertical_compose_l0 = (void*)vertical_compose_dd137iL0_sse2;
-        d->vertical_compose_h0 = (void*)vertical_compose_dd97iH0_sse2;
+        d->vertical_compose_l0.tap5 = vertical_compose_dd137iL0_sse2;
+        d->vertical_compose_h0.tap5 = vertical_compose_dd97iH0_sse2;
         break;
     case DWT_DIRAC_HAAR0:
-        d->vertical_compose   = (void*)vertical_compose_haar_sse2;
+        d->vertical_compose   = vertical_compose_haar_sse2;
         d->horizontal_compose = horizontal_compose_haar0i_sse2;
         break;
     case DWT_DIRAC_HAAR1:
-        d->vertical_compose   = (void*)vertical_compose_haar_sse2;
+        d->vertical_compose   = vertical_compose_haar_sse2;
         d->horizontal_compose = horizontal_compose_haar1i_sse2;
         break;
     }
-- 
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] 4+ messages in thread

* Re: [FFmpeg-devel] [PATCH 1/2] avcodec/dirac_dwt(_template): Don't use ff_-prefix for static func
  2022-09-25 23:00 [FFmpeg-devel] [PATCH 1/2] avcodec/dirac_dwt(_template): Don't use ff_-prefix for static func Andreas Rheinhardt
  2022-09-25 23:01 ` [FFmpeg-devel] [PATCH 2/2] avcodec/dirac_dwt: Avoid conversions between function pointers and void* Andreas Rheinhardt
@ 2022-09-28  1:05 ` Andreas Rheinhardt
  2022-09-28  2:39   ` Lynne
  1 sibling, 1 reply; 4+ messages in thread
From: Andreas Rheinhardt @ 2022-09-28  1:05 UTC (permalink / raw)
  To: ffmpeg-devel

Andreas Rheinhardt:
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
> ---
>  libavcodec/dirac_dwt.c          | 6 +++---
>  libavcodec/dirac_dwt_template.c | 2 +-
>  2 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/libavcodec/dirac_dwt.c b/libavcodec/dirac_dwt.c
> index af29932c6d..4039899cf0 100644
> --- a/libavcodec/dirac_dwt.c
> +++ b/libavcodec/dirac_dwt.c
> @@ -45,11 +45,11 @@ int ff_spatial_idwt_init(DWTContext *d, DWTPlane *p, enum dwt_type type,
>      d->decomposition_count = decomposition_count;
>  
>      if (bit_depth == 8)
> -        ret = ff_spatial_idwt_init_8bit(d, type);
> +        ret = spatial_idwt_init_8bit(d, type);
>      else if (bit_depth == 10)
> -        ret = ff_spatial_idwt_init_10bit(d, type);
> +        ret = spatial_idwt_init_10bit(d, type);
>      else if (bit_depth == 12)
> -        ret = ff_spatial_idwt_init_12bit(d, type);
> +        ret = spatial_idwt_init_12bit(d, type);
>      else
>          av_log(NULL, AV_LOG_WARNING, "Unsupported bit depth = %i\n", bit_depth);
>  
> diff --git a/libavcodec/dirac_dwt_template.c b/libavcodec/dirac_dwt_template.c
> index 5d55d932a1..f1d7f8b22f 100644
> --- a/libavcodec/dirac_dwt_template.c
> +++ b/libavcodec/dirac_dwt_template.c
> @@ -516,7 +516,7 @@ static void RENAME(spatial_compose_dd137i_init)(DWTCompose *cs, uint8_t *buffer,
>      cs->y = -5;
>  }
>  
> -static int RENAME(ff_spatial_idwt_init)(DWTContext *d, enum dwt_type type)
> +static int RENAME(spatial_idwt_init)(DWTContext *d, enum dwt_type type)
>  {
>      int level;
>  

Will apply tonight 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] 4+ messages in thread

* Re: [FFmpeg-devel] [PATCH 1/2] avcodec/dirac_dwt(_template): Don't use ff_-prefix for static func
  2022-09-28  1:05 ` [FFmpeg-devel] [PATCH 1/2] avcodec/dirac_dwt(_template): Don't use ff_-prefix for static func Andreas Rheinhardt
@ 2022-09-28  2:39   ` Lynne
  0 siblings, 0 replies; 4+ messages in thread
From: Lynne @ 2022-09-28  2:39 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

Sep 28, 2022, 03:05 by andreas.rheinhardt@outlook.com:

> Andreas Rheinhardt:
>
>> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
>> ---
>>  libavcodec/dirac_dwt.c          | 6 +++---
>>  libavcodec/dirac_dwt_template.c | 2 +-
>>  2 files changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/libavcodec/dirac_dwt.c b/libavcodec/dirac_dwt.c
>> index af29932c6d..4039899cf0 100644
>> --- a/libavcodec/dirac_dwt.c
>> +++ b/libavcodec/dirac_dwt.c
>> @@ -45,11 +45,11 @@ int ff_spatial_idwt_init(DWTContext *d, DWTPlane *p, enum dwt_type type,
>>  d->decomposition_count = decomposition_count;
>>  
>>  if (bit_depth == 8)
>> -        ret = ff_spatial_idwt_init_8bit(d, type);
>> +        ret = spatial_idwt_init_8bit(d, type);
>>  else if (bit_depth == 10)
>> -        ret = ff_spatial_idwt_init_10bit(d, type);
>> +        ret = spatial_idwt_init_10bit(d, type);
>>  else if (bit_depth == 12)
>> -        ret = ff_spatial_idwt_init_12bit(d, type);
>> +        ret = spatial_idwt_init_12bit(d, type);
>>  else
>>  av_log(NULL, AV_LOG_WARNING, "Unsupported bit depth = %i\n", bit_depth);
>>  
>> diff --git a/libavcodec/dirac_dwt_template.c b/libavcodec/dirac_dwt_template.c
>> index 5d55d932a1..f1d7f8b22f 100644
>> --- a/libavcodec/dirac_dwt_template.c
>> +++ b/libavcodec/dirac_dwt_template.c
>> @@ -516,7 +516,7 @@ static void RENAME(spatial_compose_dd137i_init)(DWTCompose *cs, uint8_t *buffer,
>>  cs->y = -5;
>>  }
>>  
>> -static int RENAME(ff_spatial_idwt_init)(DWTContext *d, enum dwt_type type)
>> +static int RENAME(spatial_idwt_init)(DWTContext *d, enum dwt_type type)
>>  {
>>  int level;
>>
>
> Will apply tonight unless there are objections.
>

LGTM

_______________________________________________
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] 4+ messages in thread

end of thread, other threads:[~2022-09-28  2:39 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-25 23:00 [FFmpeg-devel] [PATCH 1/2] avcodec/dirac_dwt(_template): Don't use ff_-prefix for static func Andreas Rheinhardt
2022-09-25 23:01 ` [FFmpeg-devel] [PATCH 2/2] avcodec/dirac_dwt: Avoid conversions between function pointers and void* Andreas Rheinhardt
2022-09-28  1:05 ` [FFmpeg-devel] [PATCH 1/2] avcodec/dirac_dwt(_template): Don't use ff_-prefix for static func Andreas Rheinhardt
2022-09-28  2:39   ` Lynne

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