X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Ffilter_graph.h;fp=src%2Flib%2Ffilter_graph.h;h=e294812c2baa9836f5aeff99711057bae611148e;hb=996b0c06e23bcb6b300d7b8799df94993692e07d;hp=c7a01f58e1f66c446c3c1ce21390d200bb182790;hpb=4f03da3aa12525cb8389ddefee629f5d0b2ac0aa;p=dcpomatic.git diff --git a/src/lib/filter_graph.h b/src/lib/filter_graph.h index c7a01f58e..e294812c2 100644 --- a/src/lib/filter_graph.h +++ b/src/lib/filter_graph.h @@ -25,11 +25,9 @@ #define DCPOMATIC_FILTER_GRAPH_H #include "util.h" -#include "ffmpeg_compatibility.h" class Image; class VideoFilter; -class FFmpegDecoder; /** @class FilterGraph * @brief A graph of FFmpeg filters. @@ -37,16 +35,18 @@ class FFmpegDecoder; class FilterGraph { public: - FilterGraph (boost::weak_ptr, FFmpegDecoder* decoder, libdcp::Size s, AVPixelFormat p); + FilterGraph (boost::shared_ptr content, libdcp::Size s, AVPixelFormat p); + ~FilterGraph (); bool can_process (libdcp::Size s, AVPixelFormat p) const; - std::list > process (AVFrame const * frame); + std::list > process (AVFrame * frame); private: AVFilterContext* _buffer_src_context; AVFilterContext* _buffer_sink_context; libdcp::Size _size; ///< size of the images that this chain can process AVPixelFormat _pixel_format; ///< pixel format of the images that this chain can process + AVFrame* _frame; }; #endif