diff options
| author | Carl Hetherington <cth@carlh.net> | 2015-06-10 14:04:10 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2015-06-10 14:04:10 +0100 |
| commit | 5c0a67869dbddb924c9f5ccb4126aa06d85b9b8b (patch) | |
| tree | c923ed014e373f5ad84cfe82f3736bcba6b7eabf /src/lib/writer.cc | |
| parent | 717ad0a42f8f3b744ad3bffcb094518ad59ef7b3 (diff) | |
Rename EncodedData -> Data and trim it a bit.
Diffstat (limited to 'src/lib/writer.cc')
| -rw-r--r-- | src/lib/writer.cc | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/src/lib/writer.cc b/src/lib/writer.cc index 97b8eefbe..a0a57e0bb 100644 --- a/src/lib/writer.cc +++ b/src/lib/writer.cc @@ -30,7 +30,7 @@ #include "cross.h" #include "audio_buffers.h" #include "md5_digester.h" -#include "encoded_data.h" +#include "data.h" #include "version.h" #include "font.h" #include "util.h" @@ -158,7 +158,7 @@ Writer::~Writer () } void -Writer::write (shared_ptr<const EncodedData> encoded, int frame, Eyes eyes) +Writer::write (shared_ptr<const Data> encoded, int frame, Eyes eyes) { boost::mutex::scoped_lock lock (_mutex); @@ -328,11 +328,16 @@ try { LOG_GENERAL (N_("Writer FULL-writes %1 (%2)"), qi.frame, qi.eyes); if (!qi.encoded) { - qi.encoded.reset (new EncodedData (_film->j2c_path (qi.frame, qi.eyes, false))); + qi.encoded.reset (new Data (_film->j2c_path (qi.frame, qi.eyes, false))); } - dcp::FrameInfo fin = _picture_asset_writer->write (qi.encoded->data(), qi.encoded->size()); - qi.encoded->write_info (_film, qi.frame, qi.eyes, fin); + dcp::FrameInfo fin = _picture_asset_writer->write (qi.encoded->data().get (), qi.encoded->size()); + FILE* file = fopen_boost (_film->info_file(), "ab"); + if (!file) { + throw OpenFileError (_film->info_file ()); + } + write_frame_info (file, qi.frame, qi.eyes, fin); + fclose (file); _last_written[qi.eyes] = qi.encoded; ++_full_written; break; @@ -390,8 +395,8 @@ try _last_written_frame + 1, _last_written_eyes, i->frame ); - - i->encoded->write (_film, i->frame, i->eyes); + + i->encoded->write_via_temp (_film->j2c_path (i->frame, i->eyes, true), _film->j2c_path (i->frame, i->eyes, false)); lock.lock (); i->encoded.reset (); @@ -596,15 +601,15 @@ Writer::check_existing_picture_asset_frame (FILE* asset, int f, Eyes eyes) /* Read the data from the asset and hash it */ dcpomatic_fseek (asset, info.offset, SEEK_SET); - EncodedData data (info.size); - size_t const read = fread (data.data(), 1, data.size(), asset); + Data data (info.size); + size_t const read = fread (data.data().get(), 1, data.size(), asset); if (read != static_cast<size_t> (data.size ())) { LOG_GENERAL ("Existing frame %1 is incomplete", f); return false; } MD5Digester digester; - digester.add (data.data(), data.size()); + digester.add (data.data().get(), data.size()); if (digester.get() != info.hash) { LOG_GENERAL ("Existing frame %1 failed hash check", f); return false; |
