X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Faudio_content.h;h=963f759e82fd68e260ab5a7f7f4d16566573cf82;hb=38e89b25f6042d7a9dc023bbdeff98b09cbdd26f;hp=83a5e327e87c02c0da9f98d987269bd858e72f6d;hpb=dd9be86db6cde0afa5da0d1d1ac43b42e05dca26;p=dcpomatic.git diff --git a/src/lib/audio_content.h b/src/lib/audio_content.h index 83a5e327e..963f759e8 100644 --- a/src/lib/audio_content.h +++ b/src/lib/audio_content.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2013-2016 Carl Hetherington + Copyright (C) 2013-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,17 +18,21 @@ */ + /** @file src/lib/audio_content.h * @brief AudioContent and AudioContentProperty classes. */ + #ifndef DCPOMATIC_AUDIO_CONTENT_H #define DCPOMATIC_AUDIO_CONTENT_H + #include "content_part.h" #include "audio_stream.h" #include "audio_mapping.h" + /** @class AudioContentProperty * @brief Names for properties of AudioContent. */ @@ -40,11 +44,13 @@ public: static int const DELAY; }; + class AudioContent : public ContentPart { public: explicit AudioContent (Content* parent); - AudioContent (Content* parent, std::vector >); + AudioContent (Content* parent, std::vector>); + AudioContent (Content* parent, cxml::ConstNodePtr); void as_xml (xmlpp::Node *) const; std::string technical_summary () const; @@ -55,7 +61,10 @@ public: int resampled_frame_rate (std::shared_ptr film) const; std::vector channel_names () const; - void set_gain (double); + /** Set gain in dB. + * @param double g New gain in dB. + */ + void set_gain (double g); void set_delay (int); double gain () const { @@ -89,12 +98,10 @@ public: private: - AudioContent (Content* parent, cxml::ConstNodePtr); - /** Gain to apply to audio in dB */ - double _gain; + double _gain = 0; /** Delay to apply to audio (positive moves audio later) in milliseconds */ - int _delay; + int _delay = 0; std::vector _streams; };