projects
/
libdcp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix tests again on Windows.
[libdcp.git]
/
src
/
sound_asset.h
diff --git
a/src/sound_asset.h
b/src/sound_asset.h
index 91a213b85736bcf833c74f03b20591f121692add..717aab82b809eb77ef2671dd21dd858a5c1d5911 100644
(file)
--- a/
src/sound_asset.h
+++ b/
src/sound_asset.h
@@
-1,5
+1,5
@@
/*
/*
- Copyright (C) 2012-202
0
Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2012-202
1
Carl Hetherington <cth@carlh.net>
This file is part of libdcp.
This file is part of libdcp.
@@
-31,13
+31,16
@@
files in the program, then also delete it here.
*/
files in the program, then also delete it here.
*/
+
/** @file src/sound_asset.h
* @brief SoundAsset class
*/
/** @file src/sound_asset.h
* @brief SoundAsset class
*/
+
#ifndef LIBDCP_SOUND_ASSET_H
#define LIBDCP_SOUND_ASSET_H
#ifndef LIBDCP_SOUND_ASSET_H
#define LIBDCP_SOUND_ASSET_H
+
#include "mxf.h"
#include "types.h"
#include "language_tag.h"
#include "mxf.h"
#include "types.h"
#include "language_tag.h"
@@
-45,11
+48,24
@@
#include "sound_frame.h"
#include "sound_asset_reader.h"
#include "sound_frame.h"
#include "sound_asset_reader.h"
+
+namespace dcp {
+ class SoundAsset;
+}
+
+
+extern std::shared_ptr<dcp::SoundAsset> simple_sound (
+ boost::filesystem::path path, std::string suffix, dcp::MXFMetadata mxf_meta, std::string language, int frames, int sample_rate, boost::optional<dcp::Key>, int channels
+ );
+
+
namespace dcp
{
namespace dcp
{
+
class SoundAssetWriter;
class SoundAssetWriter;
+
/** @class SoundAsset
* @brief Representation of a sound asset
*/
/** @class SoundAsset
* @brief Representation of a sound asset
*/
@@
-59,14
+75,14
@@
public:
explicit SoundAsset (boost::filesystem::path file);
SoundAsset (Fraction edit_rate, int sampling_rate, int channels, LanguageTag language, Standard standard);
explicit SoundAsset (boost::filesystem::path file);
SoundAsset (Fraction edit_rate, int sampling_rate, int channels, LanguageTag language, Standard standard);
- std::shared_ptr<SoundAssetWriter> start_write (boost::filesystem::path file,
std::vector<Channel> active_channels,
bool atmos_sync = false);
+ std::shared_ptr<SoundAssetWriter> start_write (boost::filesystem::path file, bool atmos_sync = false);
std::shared_ptr<SoundAssetReader> start_read () const;
bool equals (
std::shared_ptr<const Asset> other,
EqualityOptions opt,
NoteHandler note
std::shared_ptr<SoundAssetReader> start_read () const;
bool equals (
std::shared_ptr<const Asset> other,
EqualityOptions opt,
NoteHandler note
- ) const;
+ ) const
override
;
/** @return number of channels */
int channels () const {
/** @return number of channels */
int channels () const {
@@
-86,7
+102,7
@@
public:
return _intrinsic_duration;
}
return _intrinsic_duration;
}
-
std::string
language () const {
+
boost::optional<std::string>
language () const {
return _language;
}
return _language;
}
@@
-95,8
+111,11
@@
public:
private:
friend class SoundAssetWriter;
private:
friend class SoundAssetWriter;
+ friend std::shared_ptr<dcp::SoundAsset> (::simple_sound) (
+ boost::filesystem::path path, std::string suffix, dcp::MXFMetadata mxf_meta, std::string language, int frames, int sample_rate, boost::optional<dcp::Key>, int channels
+ );
- std::string pkl_type (Standard standard) const {
+ std::string pkl_type (Standard standard) const
override
{
return static_pkl_type (standard);
}
return static_pkl_type (standard);
}
@@
-104,12
+123,14
@@
private:
/** The total length of this content in video frames. The amount of
* content presented may be less than this.
*/
/** The total length of this content in video frames. The amount of
* content presented may be less than this.
*/
- int64_t _intrinsic_duration;
- int _channels; ///< number of channels
- int _sampling_rate; ///< sampling rate in Hz
-
std::string
_language;
+ int64_t _intrinsic_duration
= 0
;
+ int _channels
= 0
; ///< number of channels
+ int _sampling_rate
= 0
; ///< sampling rate in Hz
+
boost::optional<std::string>
_language;
};
};
+
}
}
+
#endif
#endif