diff options
| author | Carl Hetherington <cth@carlh.net> | 2013-09-25 17:19:59 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2013-09-25 17:19:59 +0100 |
| commit | e563727ee7b72881ee163db9b777559c8ceb5074 (patch) | |
| tree | 691966d59ee49912c6c020f67759ee13ece0a925 /src/picture_asset.cc | |
| parent | 43465aa4037cec6d351a842a6624a50685d6c127 (diff) | |
Add round-trip KDM test. Fix various bugs in KDM generation. Some string -> path.
Diffstat (limited to 'src/picture_asset.cc')
| -rw-r--r-- | src/picture_asset.cc | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/src/picture_asset.cc b/src/picture_asset.cc index bc38a3f9..78d7576d 100644 --- a/src/picture_asset.cc +++ b/src/picture_asset.cc @@ -54,14 +54,16 @@ using boost::dynamic_pointer_cast; using boost::lexical_cast; using namespace libdcp; -PictureAsset::PictureAsset (string directory, string mxf_name, boost::signals2::signal<void (float)>* progress, int fps, int intrinsic_duration, Size size) +PictureAsset::PictureAsset ( + boost::filesystem::path directory, string mxf_name, boost::signals2::signal<void (float)>* progress, int fps, int intrinsic_duration, Size size + ) : MXFAsset (directory, mxf_name, progress, fps, intrinsic_duration) , _size (size) { } -PictureAsset::PictureAsset (string directory, string mxf_name) +PictureAsset::PictureAsset (boost::filesystem::path directory, string mxf_name) : MXFAsset (directory, mxf_name) { @@ -189,8 +191,8 @@ PictureAsset::equals (shared_ptr<const Asset> other, EqualityOptions opt, boost: MonoPictureAsset::MonoPictureAsset ( - boost::function<string (int)> get_path, - string directory, + boost::function<boost::filesystem::path (int)> get_path, + boost::filesystem::path directory, string mxf_name, boost::signals2::signal<void (float)>* progress, int fps, @@ -205,8 +207,8 @@ MonoPictureAsset::MonoPictureAsset ( } MonoPictureAsset::MonoPictureAsset ( - vector<string> const & files, - string directory, + vector<boost::filesystem::path> const & files, + boost::filesystem::path directory, string mxf_name, boost::signals2::signal<void (float)>* progress, int fps, @@ -220,13 +222,13 @@ MonoPictureAsset::MonoPictureAsset ( construct (boost::bind (&MonoPictureAsset::path_from_list, this, _1, files), interop, metadata); } -MonoPictureAsset::MonoPictureAsset (string directory, string mxf_name, int fps, Size size) +MonoPictureAsset::MonoPictureAsset (boost::filesystem::path directory, string mxf_name, int fps, Size size) : PictureAsset (directory, mxf_name, 0, fps, 0, size) { } -MonoPictureAsset::MonoPictureAsset (string directory, string mxf_name) +MonoPictureAsset::MonoPictureAsset (boost::filesystem::path directory, string mxf_name) : PictureAsset (directory, mxf_name) { ASDCP::JP2K::MXFReader reader; @@ -247,7 +249,7 @@ MonoPictureAsset::MonoPictureAsset (string directory, string mxf_name) } void -MonoPictureAsset::construct (boost::function<string (int)> get_path, bool interop, MXFMetadata const & metadata) +MonoPictureAsset::construct (boost::function<boost::filesystem::path (int)> get_path, bool interop, MXFMetadata const & metadata) { ASDCP::JP2K::CodestreamParser j2k_parser; ASDCP::JP2K::FrameBuffer frame_buffer (4 * Kumu::Megabyte); @@ -269,7 +271,7 @@ MonoPictureAsset::construct (boost::function<string (int)> get_path, bool intero for (int i = 0; i < _intrinsic_duration; ++i) { - string const path = get_path (i); + boost::filesystem::path const path = get_path (i); if (ASDCP_FAILURE (j2k_parser.OpenReadFrame (path.c_str(), frame_buffer))) { boost::throw_exception (FileError ("could not open JPEG2000 file for reading", path)); @@ -289,8 +291,8 @@ MonoPictureAsset::construct (boost::function<string (int)> get_path, bool intero } } -string -MonoPictureAsset::path_from_list (int f, vector<string> const & files) const +boost::filesystem::path +MonoPictureAsset::path_from_list (int f, vector<boost::filesystem::path> const & files) const { return files[f]; } @@ -434,7 +436,7 @@ PictureAsset::frame_buffer_equals ( } -StereoPictureAsset::StereoPictureAsset (string directory, string mxf_name, int fps, int intrinsic_duration) +StereoPictureAsset::StereoPictureAsset (boost::filesystem::path directory, string mxf_name, int fps, int intrinsic_duration) : PictureAsset (directory, mxf_name, 0, fps, intrinsic_duration, Size (0, 0)) { ASDCP::JP2K::MXFSReader reader; @@ -470,7 +472,7 @@ PictureAsset::key_type () const return "MDIK"; } -StereoPictureAsset::StereoPictureAsset (string directory, string mxf_name, int fps, Size size) +StereoPictureAsset::StereoPictureAsset (boost::filesystem::path directory, string mxf_name, int fps, Size size) : PictureAsset (directory, mxf_name, 0, fps, 0, size) { |
