Merge master.
[dcpomatic.git] / src / lib / transcoder.h
index 8d34af9481ebc8fc34b72c71000026dcbe5abf59..ecc8ebf629a2b245a4c9b0ae22862aebed3fe96b 100644 (file)
 */
 
 /** @file  src/transcoder.h
- *  @brief A class which takes a Film and some Options, then uses those to transcode the film.
  *
  *  A decoder is selected according to the content type, and the encoder can be specified
  *  as a parameter to the constructor.
  */
 
-#include "decoder_factory.h"
-
 class Film;
 class Job;
 class Encoder;
@@ -33,10 +30,9 @@ class Matcher;
 class VideoFilter;
 class Gain;
 class DelayLine;
-class Playlist;
+class Player;
 
 /** @class Transcoder
- *  @brief A class which takes a Film and some Options, then uses those to transcode the film.
  *
  *  A decoder is selected according to the content type, and the encoder can be specified
  *  as a parameter to the constructor.
@@ -46,16 +42,18 @@ class Transcoder
 public:
        Transcoder (
                boost::shared_ptr<Film> f,
-               DecodeOptions o,
                boost::shared_ptr<Job> j
                );
 
        void go ();
 
+       float current_encoding_rate () const;
+       int video_frames_out () const;
+
 protected:
        /** A Job that is running this Transcoder, or 0 */
        boost::shared_ptr<Job> _job;
-       boost::shared_ptr<Playlist> _playlist;
+       boost::shared_ptr<Player> _player;
        boost::shared_ptr<Encoder> _encoder;
        boost::shared_ptr<Matcher> _matcher;
        boost::shared_ptr<DelayLine> _delay_line;