diff options
| author | Carl Hetherington <cth@carlh.net> | 2014-07-09 17:05:52 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2014-07-09 17:05:52 +0100 |
| commit | f853cbd6d1ca683a3403202357b02041626abd84 (patch) | |
| tree | 60229da5257491ef7509da1913628e691740b3d7 /src | |
| parent | 205fd96fc2592d5b50c91871fe0f2bd9d79783c5 (diff) | |
Allow construction of empty PictureFrames; some accessors.
Diffstat (limited to 'src')
| -rw-r--r-- | src/mono_picture_frame.cc | 12 | ||||
| -rw-r--r-- | src/mono_picture_frame.h | 2 | ||||
| -rw-r--r-- | src/reel_asset.h | 4 | ||||
| -rw-r--r-- | src/stereo_picture_frame.cc | 17 | ||||
| -rw-r--r-- | src/stereo_picture_frame.h | 3 |
5 files changed, 38 insertions, 0 deletions
diff --git a/src/mono_picture_frame.cc b/src/mono_picture_frame.cc index c2503a64..a06634a5 100644 --- a/src/mono_picture_frame.cc +++ b/src/mono_picture_frame.cc @@ -58,6 +58,11 @@ MonoPictureFrame::MonoPictureFrame (boost::filesystem::path mxf_path, int n, ASD } } +MonoPictureFrame::MonoPictureFrame () +{ + _buffer = new ASDCP::JP2K::FrameBuffer (4 * Kumu::Megabyte); +} + /** MonoPictureFrame destructor */ MonoPictureFrame::~MonoPictureFrame () { @@ -71,6 +76,13 @@ MonoPictureFrame::j2k_data () const return _buffer->RoData (); } +/** @return Pointer to JPEG2000 data */ +uint8_t * +MonoPictureFrame::j2k_data () +{ + return _buffer->Data (); +} + /** @return Size of JPEG2000 data in bytes */ int MonoPictureFrame::j2k_size () const diff --git a/src/mono_picture_frame.h b/src/mono_picture_frame.h index 57e890a8..707c54cd 100644 --- a/src/mono_picture_frame.h +++ b/src/mono_picture_frame.h @@ -46,11 +46,13 @@ class MonoPictureFrame : public boost::noncopyable { public: MonoPictureFrame (boost::filesystem::path mxf_path, int n, ASDCP::AESDecContext *); + MonoPictureFrame (); ~MonoPictureFrame (); boost::shared_ptr<ARGBFrame> argb_frame (int reduce = 0, float srgb_gamma = 2.4) const; void rgb_frame (uint8_t* buffer) const; uint8_t const * j2k_data () const; + uint8_t* j2k_data (); int j2k_size () const; private: diff --git a/src/reel_asset.h b/src/reel_asset.h index e6e0fff5..d2ea56bf 100644 --- a/src/reel_asset.h +++ b/src/reel_asset.h @@ -74,6 +74,10 @@ public: return !_key_id.empty (); } + int64_t entry_point () const { + return _entry_point; + } + int64_t duration () const { return _duration; } diff --git a/src/stereo_picture_frame.cc b/src/stereo_picture_frame.cc index 9d9bef7d..bcc17e3a 100644 --- a/src/stereo_picture_frame.cc +++ b/src/stereo_picture_frame.cc @@ -53,6 +53,11 @@ StereoPictureFrame::StereoPictureFrame (boost::filesystem::path mxf_path, int n) } } +StereoPictureFrame::StereoPictureFrame () +{ + _buffer = new ASDCP::JP2K::SFrameBuffer (4 * Kumu::Megabyte); +} + StereoPictureFrame::~StereoPictureFrame () { delete _buffer; @@ -109,6 +114,12 @@ StereoPictureFrame::left_j2k_data () const return _buffer->Left.RoData (); } +uint8_t* +StereoPictureFrame::left_j2k_data () +{ + return _buffer->Left.Data (); +} + int StereoPictureFrame::left_j2k_size () const { @@ -121,6 +132,12 @@ StereoPictureFrame::right_j2k_data () const return _buffer->Right.RoData (); } +uint8_t* +StereoPictureFrame::right_j2k_data () +{ + return _buffer->Right.Data (); +} + int StereoPictureFrame::right_j2k_size () const { diff --git a/src/stereo_picture_frame.h b/src/stereo_picture_frame.h index ed407cf9..578bb3de 100644 --- a/src/stereo_picture_frame.h +++ b/src/stereo_picture_frame.h @@ -40,13 +40,16 @@ class StereoPictureFrame : public boost::noncopyable { public: StereoPictureFrame (boost::filesystem::path mxf_path, int n); + StereoPictureFrame (); ~StereoPictureFrame (); boost::shared_ptr<ARGBFrame> argb_frame (Eye eye, int reduce = 0, float srgb_gamma = 2.4) const; void rgb_frame (Eye eye, uint8_t* buffer) const; uint8_t const * left_j2k_data () const; + uint8_t* left_j2k_data (); int left_j2k_size () const; uint8_t const * right_j2k_data () const; + uint8_t* right_j2k_data (); int right_j2k_size () const; private: |
