summaryrefslogtreecommitdiff
path: root/src/sound_asset.cc
AgeCommit message (Collapse)Author
2025-12-18Add can_be_read() to ReelFileAsset and subclasses.Carl Hetherington
2025-03-20Rename LanguageTag::to_string -> as_string().Carl Hetherington
2024-05-24Check that DCPs have 24-bit audio.Carl Hetherington
2024-03-22Bump asdcplib to dcpomatic-2.13.0 branch.v1.9.4Carl Hetherington
2023-10-09Add wrappers around boost::filesystem methods that handle theCarl Hetherington
required mangling of long filenames on Windows. Also wrap lots of missing places (e.g. calls to asdcplib, libxml++, libcxml etc.) in dcp::filesystem::fix_long_path(). The idea is to keep paths un-mangled until they we call some filesystem-related API and mangle them at that point. Otherwise we end up serialising mangled names, which seems like it will not end well. Should fix DoM #2623.
2023-07-29Add equality option sound_assets_can_differ.Carl Hetherington
2023-07-25Cleanup: move EqualityOptions into its own file.Carl Hetherington
2023-07-25Cleanup: pass EqualityOptions as const&Carl Hetherington
This exposes a useless assignment of export_differing_subtitles, which I've removed (and altered the comment accordingly).
2023-05-28Add SoundAsset::active_channels().v1.8.72Carl Hetherington
2023-03-21Allow specification of channels that need a MCASubDescriptor.Carl Hetherington
2023-03-20Remove the bools and default parameters from SoundAsset::start_write().Carl Hetherington
They were more confusing than they were worth.
2023-03-16Cleanup: using sorting.Carl Hetherington
2023-03-01Add include_mca_subdescriptors flag to SoundAsset writer.v1.8.64Carl Hetherington
2023-02-17Don't crash if the descriptor's sampling rate denominator is 0.Carl Hetherington
2021-04-29Slightly more details message when sound data differs in ::equals().Carl Hetherington
2021-04-14Fix/hide some warnings.Carl Hetherington
2021-04-09Make sound asset language optional.Carl Hetherington
2021-03-26Write MCA tags based on the specified sound field.Carl Hetherington
I had previously assumed that one should write MCA information into the sound MXF based on what channels actually contain sound rather than silence. However a previous example of a stereo DCP gives a verification error in EasyDCP (see DoM bug #1935) which is solved by adding MCA tags for each channel in the specified sound field (e.g. at least 6 tags for a file which is marked as 5.1) even if the audio is really stereo. This commit removes the "active channels" stuff and makes sure that if we say a file is 5.1 we write at least 6 MCA tags (and similarly for 7.1).
2021-01-24Tidying.Carl Hetherington
2021-01-21Use enum class for the things in types.hCarl Hetherington
2021-01-17Store sound asset language as a string, but set it as aCarl Hetherington
dcp::LanguageTag. This makes it work the same as other language tags, and tolerates bad values while trying not to allow them to be created.
2021-01-08std::shared_ptrCarl Hetherington
2020-11-29Fix terrible SoundAsset::equals() implementation.Carl Hetherington
It would check individual bytes of samples to see if they differed by more than the threshold. Not only is this almost useless, but the default threshold is 256 so with the default settings it would always say that two assets of the same length (and channels, etc.) were the same, even if the sample data was different.
2020-09-22Fix crashes when static linking due to tricky lifetimecrashCarl Hetherington
management of ASDCP::DefaultSMPTEDict().
2020-09-21Support MCA sound channel tags in MXF/CPL.Carl Hetherington
2020-07-11Allow creation of ATMOS sync on channel 14.Carl Hetherington
2020-04-14s/DCPReadError/ReadError/gCarl Hetherington
2018-08-17Use PKL types rather than file extensions.Carl Hetherington
2018-03-13Merge EncryptionContext with DecryptionContext and use HMAC when decrypting.Carl Hetherington
2018-03-13Store interop/SMPTE in MXF.Carl Hetherington
2016-09-27Add Atmos read/write and untested MXF decryption tool.1.0-templatesCarl Hetherington
2016-09-09Simplify previous commit and remove some debugging.Carl Hetherington
2016-09-08Add channel assignment support for SMPTE DCPs.Carl Hetherington
2016-08-17Use an optional<> where there should be one.Carl Hetherington
2016-07-21Trim some unused stream includes / usings.Carl Hetherington
2016-07-01asdcp headers moved into subdirectory.Carl Hetherington
2016-06-30More detailed notes when audio descriptor comparisons fail.Carl Hetherington
2016-06-13Add OpenSSL licence exception.Carl Hetherington
2016-06-01Still more licence fixups.Carl Hetherington
2016-06-01Add Reader classes to permit much more efficient DCP reading.Carl Hetherington
2016-05-25No-op; Fix GPL address and mention libdcp by name.Carl Hetherington
2016-05-15Try to fix comparison of encrypted sound assets.Carl Hetherington
2016-02-28Add SoundAsset::valid_mxf().Carl Hetherington
2015-06-24No-op: whitespace.Carl Hetherington
2015-06-05MXF -> Asset in lots of places.Carl Hetherington
2014-01-17Asset -> MXF in some cases.Carl Hetherington
2014-01-17Remove create-by-files method for sound and picture assets.Carl Hetherington
2014-01-17Asset -> ContentAsset.Carl Hetherington
2014-01-17namespace libdcp -> dcp.Carl Hetherington
2014-01-15Remove unnecessary parameters to fill_writer_info.Carl Hetherington