X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fab_transcoder.h;h=4f1b14e48ef27bea3072510ae58088046c784ca0;hb=6aea66f4331d0f543416acd55a7d99772e274414;hp=a136fd27091462a7a4d2735d45f4b898b4b7514f;hpb=b7466a9653345bc51db4cb1d7e960bfc4c12721f;p=dcpomatic.git diff --git a/src/lib/ab_transcoder.h b/src/lib/ab_transcoder.h index a136fd270..4f1b14e48 100644 --- a/src/lib/ab_transcoder.h +++ b/src/lib/ab_transcoder.h @@ -25,15 +25,21 @@ #include #include #include "util.h" +#include "decoder_factory.h" class Job; class Encoder; -class Decoder; -class Options; +class VideoDecoder; +class AudioDecoder; class Image; class Log; class Subtitle; class Film; +class Matcher; +class DelayLine; +class Gain; +class Combiner; +class Trimmer; /** @class ABTranscoder * @brief A transcoder which uses one Film for the left half of the screen, and a different one @@ -45,25 +51,24 @@ public: ABTranscoder ( boost::shared_ptr a, boost::shared_ptr b, - boost::shared_ptr o, + DecodeOptions o, Job* j, boost::shared_ptr e ); - ~ABTranscoder (); - void go (); private: - void process_video (boost::shared_ptr, SourceFrame, boost::shared_ptr, int); - boost::shared_ptr _film_a; boost::shared_ptr _film_b; - boost::shared_ptr _opt; Job* _job; boost::shared_ptr _encoder; - boost::shared_ptr _da; - boost::shared_ptr _db; - SourceFrame _last_frame; + Decoders _da; + Decoders _db; + boost::shared_ptr _combiner; + boost::shared_ptr _matcher; + boost::shared_ptr _delay_line; + boost::shared_ptr _gain; + boost::shared_ptr _trimmer; boost::shared_ptr _image; };