diff options
| author | Carl Hetherington <cth@carlh.net> | 2013-05-26 01:26:21 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2013-05-26 01:26:21 +0100 |
| commit | 951a81dbb75db9850ee0226f74a575af7335a576 (patch) | |
| tree | d24f9012b41edfb1315ddb51a15250578f62dbb9 /src/lib/sndfile_content.cc | |
| parent | ecbfa72a19756eab3fb1e3b0a9c5cab1c0b2ed39 (diff) | |
Improve audio mapping handling a bit.
Diffstat (limited to 'src/lib/sndfile_content.cc')
| -rw-r--r-- | src/lib/sndfile_content.cc | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/lib/sndfile_content.cc b/src/lib/sndfile_content.cc index a80c7dbe5..8eede89f4 100644 --- a/src/lib/sndfile_content.cc +++ b/src/lib/sndfile_content.cc @@ -1,5 +1,3 @@ -/* -*- c-basic-offset: 8; default-tab-width: 8; -*- */ - /* Copyright (C) 2013 Carl Hetherington <cth@carlh.net> @@ -50,6 +48,7 @@ SndfileContent::SndfileContent (shared_ptr<const Film> f, shared_ptr<const cxml: _audio_channels = node->number_child<int> ("AudioChannels"); _audio_length = node->number_child<ContentAudioFrame> ("AudioLength"); _audio_frame_rate = node->number_child<int> ("AudioFrameRate"); + _audio_mapping = AudioMapping (node->node_child ("AudioMapping")); } string @@ -113,6 +112,10 @@ SndfileContent::examine (shared_ptr<Job> job) signal_changed (AudioContentProperty::AUDIO_CHANNELS); signal_changed (AudioContentProperty::AUDIO_LENGTH); signal_changed (AudioContentProperty::AUDIO_FRAME_RATE); + + /* XXX: do this in signal_changed...? */ + _audio_mapping = AudioMapping (_audio_channels); + signal_changed (AudioContentProperty::AUDIO_MAPPING); } void @@ -124,6 +127,7 @@ SndfileContent::as_xml (xmlpp::Node* node) const node->add_child("AudioChannels")->add_child_text (lexical_cast<string> (_audio_channels)); node->add_child("AudioLength")->add_child_text (lexical_cast<string> (_audio_length)); node->add_child("AudioFrameRate")->add_child_text (lexical_cast<string> (_audio_frame_rate)); + _audio_mapping.as_xml (node->add_child("AudioMapping")); } Time @@ -143,3 +147,14 @@ SndfileContent::output_audio_frame_rate () const return film->dcp_audio_frame_rate (); } + +void +SndfileContent::set_audio_mapping (AudioMapping m) +{ + { + boost::mutex::scoped_lock lm (_mutex); + _audio_mapping = m; + } + + signal_changed (AudioContentProperty::AUDIO_MAPPING); +} |
