J2KImageProxy (boost::shared_ptr<cxml::Node> xml, boost::shared_ptr<Socket> socket);
- std::pair<boost::shared_ptr<Image>, int> image (
- boost::optional<dcp::NoteHandler> note = boost::optional<dcp::NoteHandler> (),
+ Result image (
boost::optional<dcp::Size> size = boost::optional<dcp::Size> ()
) const;
void add_metadata (xmlpp::Node *) const;
- void send_binary (boost::shared_ptr<Socket>) const;
+ void write_to_socket (boost::shared_ptr<Socket>) const;
/** @return true if our image is definitely the same as another, false if it is probably not */
bool same (boost::shared_ptr<const ImageProxy>) const;
int prepare (boost::optional<dcp::Size> = boost::optional<dcp::Size>()) const;
- AVPixelFormat pixel_format () const {
- return _pixel_format;
- }
dcp::Data j2k () const {
return _data;
dcp::Data _data;
dcp::Size _size;
boost::optional<dcp::Eye> _eye;
- mutable boost::shared_ptr<dcp::OpenJPEGImage> _decompressed;
+ mutable boost::shared_ptr<Image> _image;
mutable boost::optional<dcp::Size> _target_size;
mutable boost::optional<int> _reduce;
AVPixelFormat _pixel_format;
mutable boost::mutex _mutex;
boost::optional<int> _forced_reduction;
+ /** true if an error occurred while decoding the JPEG2000 data, false if not */
+ mutable bool _error;
};