40 #ifndef LIBDCP_SOUND_ASSET_H
41 #define LIBDCP_SOUND_ASSET_H
46 #include "language_tag.h"
57 extern std::shared_ptr<dcp::SoundAsset> simple_sound (
58 boost::filesystem::path path, std::string suffix,
dcp::MXFMetadata mxf_meta, std::string language,
int frames,
int sample_rate, boost::optional<dcp::Key>
66 class SoundAssetWriter;
78 std::shared_ptr<SoundAssetWriter> start_write (boost::filesystem::path
file,
bool atmos_sync =
false);
79 std::shared_ptr<SoundAssetReader> start_read ()
const;
82 std::shared_ptr<const Asset> other,
101 int64_t intrinsic_duration ()
const {
105 boost::optional<std::string> language ()
const {
109 static bool valid_mxf (boost::filesystem::path);
110 static std::string static_pkl_type (Standard standard);
113 friend class SoundAssetWriter;
114 friend std::shared_ptr<dcp::SoundAsset> (::simple_sound) (
115 boost::filesystem::path path, std::string suffix,
dcp::MXFMetadata mxf_meta, std::string language,
int frames,
int sample_rate, boost::optional<dcp::Key>
118 std::string
pkl_type (Standard standard)
const override {
119 return static_pkl_type (standard);
129 boost::optional<std::string> _language;
Parent class for DCP assets, i.e. picture, sound, subtitles, closed captions, CPLs,...
virtual std::string pkl_type(Standard standard) const =0
boost::optional< boost::filesystem::path > file() const
A fraction (i.e. a thing with an integer numerator and an integer denominator).
Parent for classes which represent MXF files.
Representation of a sound asset.
int sampling_rate() const
int _channels
number of channels
int _sampling_rate
sampling rate in Hz
int64_t _intrinsic_duration
Namespace for everything in libdcp.
SoundAssetReader typedef.
A class to describe what "equality" means for a particular test.