diff options
| author | Carl Hetherington <cth@carlh.net> | 2015-02-02 18:46:58 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2015-02-02 18:46:58 +0000 |
| commit | b255fcca7f57c7068603a104adbb645fe5701c21 (patch) | |
| tree | b463feeb0d0c7e1283d6eb8fd0851eaa1f48750d | |
| parent | 78dd04db5ee5d1aa5fc915f04dc71cb53d33d059 (diff) | |
Improve efficiency of DCP -> image decoding.
| -rw-r--r-- | cscript | 2 | ||||
| -rw-r--r-- | src/lib/dcp_examiner.cc | 4 | ||||
| -rw-r--r-- | src/lib/j2k_image_proxy.cc | 8 |
3 files changed, 7 insertions, 7 deletions
@@ -156,7 +156,7 @@ def make_control(debian_version, bits, filename, debug): def dependencies(target): return (('ffmpeg-cdist', 'f69bb08'), - ('libdcp', 'a8d0450'), + ('libdcp', '923d5a1'), ('libsub', 'f66b11f')) def build(target, options): diff --git a/src/lib/dcp_examiner.cc b/src/lib/dcp_examiner.cc index de7e95399..35be422c1 100644 --- a/src/lib/dcp_examiner.cc +++ b/src/lib/dcp_examiner.cc @@ -120,9 +120,9 @@ DCPExaminer::DCPExaminer (shared_ptr<const DCPContent> content) shared_ptr<Image> image (new Image (PIX_FMT_RGB48LE, _video_size.get(), false)); if (mono) { - mono->get_frame(0)->rgb_frame (reinterpret_cast<uint16_t*> (image->data()[0])); + mono->get_frame(0)->rgb_frame (image); } else { - stereo->get_frame(0)->rgb_frame (dcp::EYE_LEFT, reinterpret_cast<uint16_t*> (image->data()[0])); + stereo->get_frame(0)->rgb_frame (dcp::EYE_LEFT, image); } } diff --git a/src/lib/j2k_image_proxy.cc b/src/lib/j2k_image_proxy.cc index 09eaa4695..2c4a2db5b 100644 --- a/src/lib/j2k_image_proxy.cc +++ b/src/lib/j2k_image_proxy.cc @@ -77,15 +77,15 @@ J2KImageProxy::J2KImageProxy (shared_ptr<cxml::Node> xml, shared_ptr<Socket> soc shared_ptr<Image> J2KImageProxy::image (optional<dcp::NoteHandler> note) const { - shared_ptr<Image> image (new Image (PIX_FMT_RGB48LE, _size, false)); + shared_ptr<Image> image (new Image (PIX_FMT_RGB48LE, _size, true)); if (_mono) { - _mono->rgb_frame (reinterpret_cast<uint16_t*> (image->data()[0]), note); + _mono->rgb_frame (image, note); } else { - _stereo->rgb_frame (_eye, reinterpret_cast<uint16_t*> (image->data()[0])); + _stereo->rgb_frame (_eye, image); } - return shared_ptr<Image> (new Image (image, true)); + return image; } void |
