#pragma once #ifdef CAMU_HAVE_FFMPEG #include AL_IGNORE_WARNING("-Wswitch") // PL_LIBAV_IMPLEMENTATION defined in impl_libplacebo.c. #include AL_IGNORE_WARNING_END #endif #include #include #ifdef CAMU_HAVE_SUBTITLES #include #endif #include "../buffer/frame_queue.h" struct camu_frame_queue_lp { struct camu_frame_queue q; pl_gpu gpu; pl_queue queue; struct pl_queue_params params; #ifdef CAMU_HAVE_FFMPEG bool copy_frame_fallback; AVFrame *swframe; #endif #ifdef CAMU_HAVE_SUBTITLES struct { bool are_present; bool conversion_needed; AVCodecContext *converter; ASS_Library *ass; ASS_Renderer *renderer; ASS_Track *track; struct camu_overlay *last; array(struct camu_overlay *) overlays; struct nn_mutex lock; } subs; #endif }; struct camu_frame_queue *camu_frame_queue_lp_create(void);