X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fab_transcoder.h;h=58a08af04ca7fbe67eddd78937af60c0fd53b51d;hb=019e44f1a19e366b1771b3a0fb1dbec2d343597f;hp=a136fd27091462a7a4d2735d45f4b898b4b7514f;hpb=4fb0a5ab9eebc0f07981edc3a6813102520b8233;p=dcpomatic.git diff --git a/src/lib/ab_transcoder.h b/src/lib/ab_transcoder.h index a136fd270..58a08af04 100644 --- a/src/lib/ab_transcoder.h +++ b/src/lib/ab_transcoder.h @@ -25,15 +25,20 @@ #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 ABTranscoder * @brief A transcoder which uses one Film for the left half of the screen, and a different one @@ -45,25 +50,23 @@ 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 _image; };