Skip to content

Latest commit

 

History

History
119 lines (92 loc) · 5.68 KB

CHANGELOG.md

File metadata and controls

119 lines (92 loc) · 5.68 KB

Changelog

Unreleased

Added

  • Added support for silent audioTrackUid references with ID 0. See AudioTrackUid::isSilent and AudioTrackUid::getSilent.
  • Added audioFormatExtended version attribute; this should be set for BS.2076-2 compliance: document->set(Version("ITU-R_BS.2076-2"));.

Changed

  • Decimal times are now written without trailing zeros past 5 decimal places. To interoperate with ADM parsers which don't support more than 5 digits, users should round times in the ADM document before writing.

Fixed

  • Complementary audio object references are now read by the xml parser.

0.14.0 (September 12, 2022)

Added

  • Added support for AudioChannelFormatIDRef in AudioTrackUID as per BS.2076-2
  • Added support for dB gains. For clarity, Gain{1.0} should be replaced with Gain::fromLinear(1.0), and b.get<Gain>().get() should be replaced with b.get<Gain>().asLinear(), though the old API should continue to work.
  • Added BS.2076-2 gain attribute to audioObjects and all audioBlockFormat types.
  • Added BS.2076-2 headLocked attribute to audioObjects and audioBlockFormats.
  • Added support for headphoneVirtualise in audioBlockFormat as per BS.2076-2.
  • Added support for importance in all audioBlockFormat types as per BS.2076-2.
  • Added support for Label elements in AudioProgramme, AudioContent and AudioObject, and AudioComplementaryObjectGroupLabel elements in AudioObject.
  • Added support for PositionOffset sub-element in AudioObject.

Changed

  • Most single-argument constructors have been made explicit. For most code this should not be a problem, but it may sometimes require an extra constructor call when making elements.
  • updated required C++ standard from C++11 to C++14
  • implemented fractional time format from BS.2076-2
  • audioProgramme and audioContent may now have multiple loudnessMetadata elements, as per BS.2076-2
  • admConfig.cmake updated to behave better with find_package calls - errors are now reported correctly and info messages are silenced if QUIET has been requested.
  • libadm_INCLUDE_DIRS and libadm_LIBRARY_DIRS were removed from admConfig.cmake. Users of these should link to the adm targets instead, as per the documentation.
  • CMake GNUInstallDirs module used to determine default install locations
  • INSTALL_XXX_DIR cache variables prefixed with ADM
  • Install path for .dll on Windows changed to binary dir
  • .pdb files now installed for Windows Debug and RelWithDebInfo configurations

Fixed

  • has for NfcRefDist, ScreenRef and Normalization in HOA audioBlockFormat and audioPackFormat now always return true, as these parameters have defaults.

0.13.0 (February 15, 2022)

Added

  • Added support for Cartesian speaker positions.

Changed

  • SpeakerPosition is now a boost::variant that can be either a CartesianSpeakerPosition or a SphericalSpeakerPosition
  • The previous SpeakerPosition type has been renamed to SphericalSpeakerPosition.
  • included mono (0+1+0) to the common definitions lookup tables
  • corrected (0+5+0) to point to 5.1 pack (AP_00010003) in common definitions lookup table
  • included LFE in common definitions lookup table
  • multiple incorrect references to LFE1 changed to LFE in common definitions lookup tables
  • corrected B-045 AudioTrackFormat reference in common definitions lookup table
  • fixed erroneous test acceptance data
  • replaced resource embedder with a cmake function to fix cross-compilation

Fixed

  • updateBlockFormatDurations now throws an exception when given an audioChannelFormat with no audioBlockFormats, rather than segfaulting
  • fixed crash when parsing empty ADM documents

0.12.0 (April 18, 2020)

Added

  • new addSimpleCommonDefinitionsObjectTo function
  • new addSimpleObjectTo function
  • added support to lookup HOA common definitions AudioPackFormatIDs and AudioTrackFormatIDs
  • added missing ITU-R BS.2051 setups 0+7+0 and 4+7+0 to common definition lookup tables

Changed

  • improved AudioChannelFormat::assignId logic - huge performance increase for large documents

Fixed

  • fixed bug were not all references were removed if AudioPackFormat was removed from document

0.11.0 (Oktober 11, 2019)

Added

  • library can now also be used as a CMake subproject
  • new CMake option ADM_HIDE_INTERNAL_SYMBOLS
  • new CMake option ADM_PACKAGE_AND_INSTALL
  • new CMake option BUILD_SHARED_LIBS
  • audioPackFormat now supports typeDefinition HOA

Changed

  • Renamed CMake library target name from libadm to adm
  • Renamed CMake option UNIT_TESTS to ADM_UNIT_TESTS
  • Renamed CMake option EXAMPLES to ADM_EXAMPLES
  • properly implemented the LoudnessMetadata class
  • improved common definitions handling
  • drastically improved performance by enhancing hex and ID parsing
  • boost will automatically be found when finding libadm
  • hide symbols only is shared library is build

Fixed

  • An unresolvable reference will now result in an exception instead of a segfault when parsing XML.
  • Always return true for values with default values in has<...>() methods.
  • The dialogue subelement will now be written by the xml writer

0.10.0 (November 30, 2018)

Added

  • Added helper function to access optional properties from elements, return a supplied default value if it hasn't been set
  • Add utility functions to (re-)calculate block format durations
  • Added adm::ReaderOption to select AudioFormatExtended node search mode

Changed

  • Use Catch2 instead of Boost.Test for unit testing
  • Refactored XmlParser tests to use separate files for test data
  • Improved search for AudioFormatExtended node when parsing XML

Fixed

  • Documentation fixes and clarifications
  • Fixed visibility issues of some methods that prevented linking with the shared library

0.9.0 (July 23, 2018)

Initial release