From 910bc642f86911fd04df01105fd4dad9680384cd Mon Sep 17 00:00:00 2001 From: Martin Pulec Date: Fri, 28 Jan 2022 10:08:32 +0100 Subject: [PATCH] Rpi callbacks moved to rpi4_out.cpp av_frame_wrapper_recycle() and av_frame_wrapper_copy() moved from header to rpi4_out.cpp. --- src/hwaccel_rpi4.h | 21 --------------------- src/video_display/rpi4_out.cpp | 16 ++++++++++++++++ 2 files changed, 16 insertions(+), 21 deletions(-) diff --git a/src/hwaccel_rpi4.h b/src/hwaccel_rpi4.h index 5f024cdc0..b3fba5171 100644 --- a/src/hwaccel_rpi4.h +++ b/src/hwaccel_rpi4.h @@ -59,27 +59,6 @@ typedef struct av_frame_wrapper{ struct AVFrame *av_frame; } av_frame_wrapper; -#ifdef HAVE_LAVC - -#include "libavcodec_common.h" - -static inline void av_frame_wrapper_recycle(struct video_frame *f){ - for(unsigned i = 0; i < f->tile_count; i++){ - av_frame_wrapper *wrapper = (av_frame_wrapper *)(void *) f->tiles[i].data; - - av_frame_unref(wrapper->av_frame); - } -} - -static inline void av_frame_wrapper_copy(struct video_frame *f){ - for(unsigned i = 0; i < f->tile_count; i++){ - av_frame_wrapper *wrapper = (av_frame_wrapper *)(void *) f->tiles[i].data; - - wrapper->av_frame = av_frame_clone(wrapper->av_frame); - } -} -#endif // HAVE_LAVC - #ifdef __cplusplus } #endif diff --git a/src/video_display/rpi4_out.cpp b/src/video_display/rpi4_out.cpp index dac8aeb7e..82e7f5d86 100644 --- a/src/video_display/rpi4_out.cpp +++ b/src/video_display/rpi4_out.cpp @@ -443,6 +443,22 @@ static void frame_data_deleter(struct video_frame *buf){ delete wrapper; } +static inline void av_frame_wrapper_recycle(struct video_frame *f){ + for(unsigned i = 0; i < f->tile_count; i++){ + av_frame_wrapper *wrapper = (av_frame_wrapper *)(void *) f->tiles[i].data; + + av_frame_unref(wrapper->av_frame); + } +} + +static inline void av_frame_wrapper_copy(struct video_frame *f){ + for(unsigned i = 0; i < f->tile_count; i++){ + av_frame_wrapper *wrapper = (av_frame_wrapper *)(void *) f->tiles[i].data; + + wrapper->av_frame = av_frame_clone(wrapper->av_frame); + } +} + static struct video_frame *alloc_new_frame(rpi4_display_state *s){ auto new_frame = vf_alloc_desc(s->current_desc);