This is an automated email from the git hooks/post-receive script. Git pushed a commit to branch master in repository ffmpeg.
commit 0b43b8ef316e15c8ab9f66a45ed9f86c032925ee Author: Niklas Haas <[email protected]> AuthorDate: Sun Mar 29 16:44:38 2026 +0200 Commit: Niklas Haas <[email protected]> CommitDate: Fri Apr 10 15:12:18 2026 +0200 avfilter/framepool: make FFFramePool public This struct is overally pretty trivial and there is little to no internal state or invariants that need to be protected. Making it public allows e.g. libswscale to allocate buffers for individual planes directly. Signed-off-by: Niklas Haas <[email protected]> --- libavfilter/framepool.c | 24 ------------------------ libavfilter/framepool.h | 29 +++++++++++++++++++++++++---- 2 files changed, 25 insertions(+), 28 deletions(-) diff --git a/libavfilter/framepool.c b/libavfilter/framepool.c index 752a16eb64..7542e94436 100644 --- a/libavfilter/framepool.c +++ b/libavfilter/framepool.c @@ -28,30 +28,6 @@ #include "libavutil/mem.h" #include "libavutil/pixfmt.h" -struct FFFramePool { - - enum AVMediaType type; - union { - enum AVPixelFormat pix_fmt; - enum AVSampleFormat sample_fmt; - }; - - /* video */ - int width; - int height; - - /* audio */ - int planes; - int channels; - int nb_samples; - - /* common */ - int align; - int linesize[4]; - AVBufferPool *pools[4]; - -}; - static av_cold FFFramePool *frame_pool_video_init(int width, int height, enum AVPixelFormat format, int align) diff --git a/libavfilter/framepool.h b/libavfilter/framepool.h index 63e8df2730..0f05ec56fc 100644 --- a/libavfilter/framepool.h +++ b/libavfilter/framepool.h @@ -26,11 +26,32 @@ #include "libavutil/internal.h" /** - * Frame pool. This structure is opaque and not meant to be accessed - * directly. It is allocated with ff_frame_pool_init() and freed with - * ff_frame_pool_uninit(). + * Frame pool. This structure must be allocated with + * ff_frame_pool_{video,audio}_reinit() and freed with ff_frame_pool_uninit(). */ -typedef struct FFFramePool FFFramePool; +typedef struct FFFramePool { + + enum AVMediaType type; + union { + enum AVPixelFormat pix_fmt; + enum AVSampleFormat sample_fmt; + }; + + /* video */ + int width; + int height; + + /* audio */ + int planes; + int channels; + int nb_samples; + + /* common */ + int align; + int linesize[4]; + AVBufferPool *pools[4]; /* for audio, only pools[0] is used */ + +} FFFramePool; /** * Recreate the video frame pool if its current configuration differs from the _______________________________________________ ffmpeg-cvslog mailing list -- [email protected] To unsubscribe send an email to [email protected]
