- J2KImageProxy (boost::filesystem::path path, dcp::Size);
- J2KImageProxy (boost::shared_ptr<const dcp::MonoPictureFrame> frame, dcp::Size);
- J2KImageProxy (boost::shared_ptr<const dcp::StereoPictureFrame> frame, dcp::Size, dcp::Eye);
- J2KImageProxy (boost::shared_ptr<cxml::Node> xml, boost::shared_ptr<Socket> socket);
-
- boost::shared_ptr<Image> image (boost::optional<dcp::NoteHandler> note = boost::optional<dcp::NoteHandler> ()) const;
- void add_metadata (xmlpp::Node *) const;
- void send_binary (boost::shared_ptr<Socket>) const;
+ J2KImageProxy (boost::filesystem::path path, dcp::Size, AVPixelFormat pixel_format);
+
+ J2KImageProxy (
+ std::shared_ptr<const dcp::MonoPictureFrame> frame,
+ dcp::Size,
+ AVPixelFormat pixel_format,
+ boost::optional<int> forced_reduction
+ );
+
+ J2KImageProxy (
+ std::shared_ptr<const dcp::StereoPictureFrame> frame,
+ dcp::Size,
+ dcp::Eye,
+ AVPixelFormat pixel_format,
+ boost::optional<int> forced_reduction
+ );
+
+ J2KImageProxy (std::shared_ptr<cxml::Node> xml, std::shared_ptr<Socket> socket);
+
+ /* For tests */
+ J2KImageProxy (dcp::ArrayData data, dcp::Size size, AVPixelFormat pixel_format);
+
+ Result image (
+ Image::Alignment alignment,
+ boost::optional<dcp::Size> size = boost::optional<dcp::Size> ()
+ ) const override;
+
+ void add_metadata (xmlpp::Node *) const override;
+ void write_to_socket (std::shared_ptr<Socket> override) const override;