using std::string;
using boost::shared_ptr;
+using boost::optional;
+
+/** Construct a J2KImageProxy from a JPEG2000 file */
+J2KImageProxy::J2KImageProxy (boost::filesystem::path path, dcp::Size size)
+ : _mono (new dcp::MonoPictureFrame (path))
+ , _size (size)
+{
+
+}
J2KImageProxy::J2KImageProxy (shared_ptr<const dcp::MonoPictureFrame> frame, dcp::Size size)
: _mono (frame)
}
shared_ptr<Image>
-J2KImageProxy::image () const
+J2KImageProxy::image (optional<dcp::NoteHandler> note) const
{
- shared_ptr<Image> image (new Image (PIX_FMT_RGB24, _size, false));
+ shared_ptr<Image> image (new Image (PIX_FMT_RGB48LE, _size, false));
if (_mono) {
- _mono->rgb_frame (image->data()[0]);
+ _mono->rgb_frame (reinterpret_cast<uint16_t*> (image->data()[0]), note);
} else {
- _stereo->rgb_frame (_eye, image->data()[0]);
+ _stereo->rgb_frame (_eye, reinterpret_cast<uint16_t*> (image->data()[0]));
}
return shared_ptr<Image> (new Image (image, true));