Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: Anton Khirnov <anton@khirnov.net>
To: ffmpeg-devel@ffmpeg.org
Subject: [FFmpeg-devel] [PATCH 4/6] lavfi: replace av_fast_realloc() with av_realloc_reuse()
Date: Wed, 28 Sep 2022 12:48:52 +0200
Message-ID: <20220928104854.18629-4-anton@khirnov.net> (raw)
In-Reply-To: <20220928104854.18629-1-anton@khirnov.net>

---
 libavfilter/af_adelay.c        |  4 ++--
 libavfilter/asrc_afirsrc.c     | 12 ++++++------
 libavfilter/avf_showspectrum.c |  8 ++++----
 libavfilter/f_drawgraph.c      | 18 +++++++++---------
 libavfilter/f_graphmonitor.c   |  8 ++++----
 libavfilter/f_reverse.c        | 16 ++++++++--------
 6 files changed, 33 insertions(+), 33 deletions(-)

diff --git a/libavfilter/af_adelay.c b/libavfilter/af_adelay.c
index 9e63e2d618..6eb2aa400c 100644
--- a/libavfilter/af_adelay.c
+++ b/libavfilter/af_adelay.c
@@ -31,7 +31,7 @@ typedef struct ChanDelay {
     int64_t delay;
     size_t delay_index;
     size_t index;
-    unsigned int samples_size;
+    size_t samples_size;
     uint8_t *samples;
 } ChanDelay;
 
@@ -116,7 +116,7 @@ static int resize_samples_## name ##p(ChanDelay *d, int64_t new_delay)
         return 0;                                                                                       \
     }                                                                                                   \
                                                                                                         \
-    samples = (type *) av_fast_realloc(d->samples, &d->samples_size, new_delay * sizeof(type));         \
+    samples = (type *) av_realloc_reuse(d->samples, &d->samples_size, new_delay * sizeof(type));        \
     if (!samples) {                                                                                     \
         return AVERROR(ENOMEM);                                                                         \
     }                                                                                                   \
diff --git a/libavfilter/asrc_afirsrc.c b/libavfilter/asrc_afirsrc.c
index 615242e0f5..ad65b7498b 100644
--- a/libavfilter/asrc_afirsrc.c
+++ b/libavfilter/asrc_afirsrc.c
@@ -43,9 +43,9 @@ typedef struct AudioFIRSourceContext {
     float *freq;
     float *magnitude;
     float *phase;
-    int freq_size;
-    int magnitude_size;
-    int phase_size;
+    size_t freq_size;
+    size_t magnitude_size;
+    size_t phase_size;
     int nb_freq;
     int nb_magnitude;
     int nb_phase;
@@ -126,12 +126,12 @@ static av_cold int query_formats(AVFilterContext *ctx)
     return ff_set_common_samplerates_from_list(ctx, sample_rates);
 }
 
-static int parse_string(char *str, float **items, int *nb_items, int *items_size)
+static int parse_string(char *str, float **items, int *nb_items, size_t *items_size)
 {
     float *new_items;
     char *tail;
 
-    new_items = av_fast_realloc(NULL, items_size, 1 * sizeof(float));
+    new_items = av_realloc_reuse(NULL, items_size, 1 * sizeof(float));
     if (!new_items)
         return AVERROR(ENOMEM);
     *items = new_items;
@@ -142,7 +142,7 @@ static int parse_string(char *str, float **items, int *nb_items, int *items_size
 
     do {
         (*items)[(*nb_items)++] = av_strtod(tail, &tail);
-        new_items = av_fast_realloc(*items, items_size, (*nb_items + 1) * sizeof(float));
+        new_items = av_realloc_reuse(*items, items_size, (*nb_items + 1) * sizeof(float));
         if (!new_items)
             return AVERROR(ENOMEM);
         *items = new_items;
diff --git a/libavfilter/avf_showspectrum.c b/libavfilter/avf_showspectrum.c
index b111471116..a9ee8458f3 100644
--- a/libavfilter/avf_showspectrum.c
+++ b/libavfilter/avf_showspectrum.c
@@ -114,7 +114,7 @@ typedef struct ShowSpectrumContext {
 
     AVFrame **frames;
     unsigned int nb_frames;
-    unsigned int frames_size;
+    size_t frames_size;
 } ShowSpectrumContext;
 
 #define OFFSET(x) offsetof(ShowSpectrumContext, x)
@@ -1300,8 +1300,8 @@ static int config_output(AVFilterLink *outlink)
     if (!s->in_frame)
         return AVERROR(ENOMEM);
 
-    s->frames = av_fast_realloc(NULL, &s->frames_size,
-                                DEFAULT_LENGTH * sizeof(*(s->frames)));
+    s->frames = av_realloc_reuse(NULL, &s->frames_size,
+                                 DEFAULT_LENGTH * sizeof(*(s->frames)));
     if (!s->frames)
         return AVERROR(ENOMEM);
 
@@ -1840,7 +1840,7 @@ static int showspectrumpic_filter_frame(AVFilterLink *inlink, AVFrame *insamples
     void *ptr;
 
     if (s->nb_frames + 1ULL > s->frames_size / sizeof(*(s->frames))) {
-        ptr = av_fast_realloc(s->frames, &s->frames_size, s->frames_size * 2);
+        ptr = av_realloc_reuse(s->frames, &s->frames_size, s->frames_size * 2);
         if (!ptr)
             return AVERROR(ENOMEM);
         s->frames = ptr;
diff --git a/libavfilter/f_drawgraph.c b/libavfilter/f_drawgraph.c
index 000255fc52..f616bd2c04 100644
--- a/libavfilter/f_drawgraph.c
+++ b/libavfilter/f_drawgraph.c
@@ -49,7 +49,7 @@ typedef struct DrawGraphContext {
     int           prev_y[4];
     int           first[4];
     float         *values[4];
-    int           values_size[4];
+    size_t        values_size[4];
     int           nb_values;
     int64_t       prev_pts;
 } DrawGraphContext;
@@ -114,10 +114,10 @@ static av_cold int init(AVFilterContext *ctx)
     s->first[0] = s->first[1] = s->first[2] = s->first[3] = 1;
 
     if (s->slide == 4) {
-        s->values[0] = av_fast_realloc(NULL, &s->values_size[0], 2000);
-        s->values[1] = av_fast_realloc(NULL, &s->values_size[1], 2000);
-        s->values[2] = av_fast_realloc(NULL, &s->values_size[2], 2000);
-        s->values[3] = av_fast_realloc(NULL, &s->values_size[3], 2000);
+        s->values[0] = av_realloc_reuse(NULL, &s->values_size[0], 2000);
+        s->values[1] = av_realloc_reuse(NULL, &s->values_size[1], 2000);
+        s->values[2] = av_realloc_reuse(NULL, &s->values_size[2], 2000);
+        s->values[3] = av_realloc_reuse(NULL, &s->values_size[3], 2000);
 
         if (!s->values[0] || !s->values[1] ||
             !s->values[2] || !s->values[3]) {
@@ -174,22 +174,22 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in)
     if (s->slide == 4 && s->nb_values >= s->values_size[0] / sizeof(float)) {
         float *ptr;
 
-        ptr = av_fast_realloc(s->values[0], &s->values_size[0], s->values_size[0] * 2);
+        ptr = av_realloc_reuse(s->values[0], &s->values_size[0], s->values_size[0] * 2);
         if (!ptr)
             return AVERROR(ENOMEM);
         s->values[0] = ptr;
 
-        ptr = av_fast_realloc(s->values[1], &s->values_size[1], s->values_size[1] * 2);
+        ptr = av_realloc_reuse(s->values[1], &s->values_size[1], s->values_size[1] * 2);
         if (!ptr)
             return AVERROR(ENOMEM);
         s->values[1] = ptr;
 
-        ptr = av_fast_realloc(s->values[2], &s->values_size[2], s->values_size[2] * 2);
+        ptr = av_realloc_reuse(s->values[2], &s->values_size[2], s->values_size[2] * 2);
         if (!ptr)
             return AVERROR(ENOMEM);
         s->values[2] = ptr;
 
-        ptr = av_fast_realloc(s->values[3], &s->values_size[3], s->values_size[3] * 2);
+        ptr = av_realloc_reuse(s->values[3], &s->values_size[3], s->values_size[3] * 2);
         if (!ptr)
             return AVERROR(ENOMEM);
         s->values[3] = ptr;
diff --git a/libavfilter/f_graphmonitor.c b/libavfilter/f_graphmonitor.c
index 016a707a27..3f0f35ea68 100644
--- a/libavfilter/f_graphmonitor.c
+++ b/libavfilter/f_graphmonitor.c
@@ -57,7 +57,7 @@ typedef struct GraphMonitorContext {
     uint8_t bg[4];
 
     CacheItem *cache;
-    unsigned int cache_size;
+    size_t cache_size;
     unsigned int cache_index;
 } GraphMonitorContext;
 
@@ -119,8 +119,8 @@ static av_cold int init(AVFilterContext *ctx)
 {
     GraphMonitorContext *s = ctx->priv;
 
-    s->cache = av_fast_realloc(NULL, &s->cache_size,
-                               8192 * sizeof(*(s->cache)));
+    s->cache = av_realloc_reuse(NULL, &s->cache_size,
+                                8192 * sizeof(*(s->cache)));
     if (!s->cache)
         return AVERROR(ENOMEM);
 
@@ -314,7 +314,7 @@ static int draw_items(AVFilterContext *ctx, AVFrame *out,
     s->cache[s->cache_index].previous_pts_us = l->current_pts_us;
 
     if (s->cache_index + 1 >= s->cache_size / sizeof(*(s->cache))) {
-        void *ptr = av_fast_realloc(s->cache, &s->cache_size, s->cache_size * 2);
+        void *ptr = av_realloc_reuse(s->cache, &s->cache_size, s->cache_size * 2);
 
         if (!ptr)
             return AVERROR(ENOMEM);
diff --git a/libavfilter/f_reverse.c b/libavfilter/f_reverse.c
index 2c99557c75..301f36d823 100644
--- a/libavfilter/f_reverse.c
+++ b/libavfilter/f_reverse.c
@@ -31,8 +31,8 @@
 typedef struct ReverseContext {
     int nb_frames;
     AVFrame **frames;
-    unsigned int frames_size;
-    unsigned int pts_size;
+    size_t frames_size;
+    size_t pts_size;
     int64_t *pts;
     int flush_idx;
     int64_t nb_samples;
@@ -42,13 +42,13 @@ static av_cold int init(AVFilterContext *ctx)
 {
     ReverseContext *s = ctx->priv;
 
-    s->pts = av_fast_realloc(NULL, &s->pts_size,
-                             DEFAULT_LENGTH * sizeof(*(s->pts)));
+    s->pts = av_realloc_reuse(NULL, &s->pts_size,
+                              DEFAULT_LENGTH * sizeof(*(s->pts)));
     if (!s->pts)
         return AVERROR(ENOMEM);
 
-    s->frames = av_fast_realloc(NULL, &s->frames_size,
-                                DEFAULT_LENGTH * sizeof(*(s->frames)));
+    s->frames = av_realloc_reuse(NULL, &s->frames_size,
+                                 DEFAULT_LENGTH * sizeof(*(s->frames)));
     if (!s->frames) {
         av_freep(&s->pts);
         return AVERROR(ENOMEM);
@@ -77,14 +77,14 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in)
     void *ptr;
 
     if (s->nb_frames + 1 > s->pts_size / sizeof(*(s->pts))) {
-        ptr = av_fast_realloc(s->pts, &s->pts_size, s->pts_size * 2);
+        ptr = av_realloc_reuse(s->pts, &s->pts_size, s->pts_size * 2);
         if (!ptr)
             return AVERROR(ENOMEM);
         s->pts = ptr;
     }
 
     if (s->nb_frames + 1 > s->frames_size / sizeof(*(s->frames))) {
-        ptr = av_fast_realloc(s->frames, &s->frames_size, s->frames_size * 2);
+        ptr = av_realloc_reuse(s->frames, &s->frames_size, s->frames_size * 2);
         if (!ptr)
             return AVERROR(ENOMEM);
         s->frames = ptr;
-- 
2.35.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".

  parent reply	other threads:[~2022-09-28 10:49 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-28 10:48 [FFmpeg-devel] [PATCH 1/6] lavu/mem: add av_realloc_reuse() as a replacement for av_fast_realloc() Anton Khirnov
2022-09-28 10:48 ` [FFmpeg-devel] [PATCH 2/6] lavu: replace av_fast_realloc() with av_realloc_reuse() Anton Khirnov
2022-09-28 10:48 ` [FFmpeg-devel] [PATCH 3/6] lavc: " Anton Khirnov
2022-09-28 10:48 ` Anton Khirnov [this message]
2022-09-28 10:48 ` [FFmpeg-devel] [PATCH 5/6] lavf: " Anton Khirnov
2022-09-28 10:48 ` [FFmpeg-devel] [PATCH 6/6] sws: " Anton Khirnov
2022-09-28 10:51 ` [FFmpeg-devel] [PATCH 1/6] lavu/mem: add av_realloc_reuse() as a replacement for av_fast_realloc() Rémi Denis-Courmont
2022-09-28 10:55   ` Rémi Denis-Courmont
2022-09-28 11:48 ` Tomas Härdin
2022-09-28 15:04   ` Anton Khirnov
2022-09-28 15:33   ` Andreas Rheinhardt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220928104854.18629-4-anton@khirnov.net \
    --to=anton@khirnov.net \
    --cc=ffmpeg-devel@ffmpeg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

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