X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fdcp_video_frame.h;h=4e9a777bd78ec909c4c0bd303b289880c5c0cfe4;hb=6cdd7dc3149d7df921bbf24623d48de195d02673;hp=d82aee36782872e1c6f6ac3d6b85f0fdc7811b91;hpb=46f1b3106ab959e21946fe1f035efc6dc1743b49;p=dcpomatic.git diff --git a/src/lib/dcp_video_frame.h b/src/lib/dcp_video_frame.h index d82aee367..4e9a777bd 100644 --- a/src/lib/dcp_video_frame.h +++ b/src/lib/dcp_video_frame.h @@ -31,6 +31,7 @@ class ServerDescription; class Scaler; class Image; class Log; +class Subtitle; /** @class EncodedData * @brief Container for J2K-encoded data. @@ -48,13 +49,9 @@ public: virtual ~EncodedData () {} - void send (DeadlineWrapper& wrapper); + void send (boost::shared_ptr socket); void write (boost::shared_ptr, int); -#ifdef DEBUG_HASH - void hash (std::string) const; -#endif - /** @return data */ uint8_t* data () const { return _data; @@ -109,7 +106,7 @@ public: class DCPVideoFrame { public: - DCPVideoFrame (boost::shared_ptr, Size, int, Scaler const *, int, float, std::string, int, int, Log *); + DCPVideoFrame (boost::shared_ptr, boost::shared_ptr, Size, int, int, float, Scaler const *, int, float, std::string, int, int, Log *); virtual ~DCPVideoFrame (); boost::shared_ptr encode_locally (); @@ -124,8 +121,11 @@ private: void write_encoded (boost::shared_ptr, uint8_t *, int); boost::shared_ptr _input; ///< the input image + boost::shared_ptr _subtitle; ///< any subtitle that should be on the image Size _out_size; ///< the required size of the output, in pixels int _padding; + int _subtitle_offset; + float _subtitle_scale; Scaler const * _scaler; ///< scaler to use int _frame; ///< frame index within the Film int _frames_per_second; ///< Frames per second that we will use for the DCP (rounded)