summaryrefslogtreecommitdiff
path: root/src/lib/ffmpeg_audio_stream.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2016-05-10 15:06:19 +0100
committerCarl Hetherington <cth@carlh.net>2016-05-18 11:50:29 +0100
commit3db1df492e1009ee28641cdc593a139df156e8d7 (patch)
tree7d86e74117a701515f381ee707d7699acab7b2dc /src/lib/ffmpeg_audio_stream.cc
parent4fe27489ad67267081d048b45a4df9ee37541fde (diff)
Store audio length in AudioStream.
Diffstat (limited to 'src/lib/ffmpeg_audio_stream.cc')
-rw-r--r--src/lib/ffmpeg_audio_stream.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/lib/ffmpeg_audio_stream.cc b/src/lib/ffmpeg_audio_stream.cc
index d7fc7eaed..31cbe2609 100644
--- a/src/lib/ffmpeg_audio_stream.cc
+++ b/src/lib/ffmpeg_audio_stream.cc
@@ -27,7 +27,11 @@ using boost::optional;
FFmpegAudioStream::FFmpegAudioStream (cxml::ConstNodePtr node, int version)
: FFmpegStream (node)
- , AudioStream (node->number_child<int> ("FrameRate"), AudioMapping (node->node_child ("Mapping"), version))
+ , AudioStream (
+ node->number_child<int> ("FrameRate"),
+ node->optional_number_child<Frame>("Length").get_value_or (0),
+ AudioMapping (node->node_child ("Mapping"), version)
+ )
{
optional<ContentTime::Type> const f = node->optional_number_child<ContentTime::Type> ("FirstAudio");
if (f) {
@@ -40,6 +44,7 @@ FFmpegAudioStream::as_xml (xmlpp::Node* root) const
{
FFmpegStream::as_xml (root);
root->add_child("FrameRate")->add_child_text (raw_convert<string> (frame_rate ()));
+ root->add_child("Length")->add_child_text (raw_convert<string> (length ()));
mapping().as_xml (root->add_child("Mapping"));
if (first_audio) {
root->add_child("FirstAudio")->add_child_text (raw_convert<string> (first_audio.get().get ()));