diff options
| author | Carl Hetherington <cth@carlh.net> | 2016-08-15 00:17:58 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2016-08-15 00:17:58 +0100 |
| commit | ceeb74f2059005f604d00d955c68cb5be4ded284 (patch) | |
| tree | fb1bc4e98823a07f595d3c1a5cf175acac2af092 | |
| parent | a46dc9818f2d244023fbc0a8362db7203ff610ce (diff) | |
Fix loading of some old metadata versions.
| -rw-r--r-- | src/lib/dcp_content.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/lib/dcp_content.cc b/src/lib/dcp_content.cc index 44c7ce578..d866a6b86 100644 --- a/src/lib/dcp_content.cc +++ b/src/lib/dcp_content.cc @@ -85,7 +85,10 @@ DCPContent::DCPContent (shared_ptr<const Film> film, cxml::ConstNodePtr node, in AudioStreamPtr ( new AudioStream ( node->number_child<int> ("AudioFrameRate"), - node->number_child<Frame> ("AudioLength"), + /* AudioLength was not present in some old metadata versions */ + node->optional_number_child<Frame>("AudioLength").get_value_or ( + video->length() * node->number_child<int>("AudioFrameRate") / video_frame_rate().get() + ), AudioMapping (node->node_child ("AudioMapping"), version) ) ) |
