- Padding after data chunks in bw64 files was not written, and this error was silently ignored in the reader. This can be fixed with the new
ear-utils rewrite
command. - Mutable default parameters in ADMBuilder could cause unexpected extra blocks to be added when this was used from other programs.
- ADM elements outside the
audioFormatExtended
were parsed, causing errors for some files containing non-standard ADM data. - Generated IDs for audioStreamFormat and audioTrackFormat included the format (i.e. always PCM, or 0001), but should include the type of the linked channel/pack format. See #78.
- Added a warning for audioBlockFormats which have a duration but no rtime; previously these were fixed silently. See #54.
- Switched from ruamel.yaml to PyYAML. See #62.
- Preliminary support for BS.2076-2 structures. Until this is standardised, a warning will be emitted when rendering files with this version. See #59 and #58.
--set-version
toear-utils regenerate
. This can be used to fix files which use BS.2076-2 features but have no version tag.
2.1.0 - 2022-01-26
- Depth and height parameters were switched in metadata conversion. See #26.
- Bug in channel lock priority order, which controls the loudspeaker selection when the object position is the same distance from multiple loudspeakers. See #28.
- Screen scaling now fails explicitly in cases where it was not well-defined before, generally with extreme positions and sizes. See #22.
- Errors with gaps at the start of metadata. See #13.
- Rounding of times in XML writer. See #12.
audioStreamFormat
referencing error messages. See 34b738a and 04533fc.- Improved extraData handling in BW64 reader; see #48
DirectSpeakers
panner uses allocentric panning for Cartesian positions. See 222374a.- Removed python 2.7 support.
fix_block_format_durations
parameter is deprecated, and the ADM XML parser no longer issues warnings for timing issues -- useear.fileio.adm.timing_fixes
for this functionality instead. See #8.--enable-block-duration-fix
performs more extensive fixes; this now fixes the following issues:audioBlockFormats
where thertime
plus theduration
of oneaudioBlockFormat
does not match thertime
of the next.interpolationTime
parameter larger thanduration
.audioBlockFormat
rtime
plusduration
extending past the end of the containingaudioObject
.
- Issue a warning for
DirectSpeakers
blocks with aspeakerLabel
containingLFE
which is not detected as an LFE channel. See #9. - Improved warning and error output: tidier formatting, and repeated warnings are suppressed by default. See #37.
loudnessMetadata
data structures, parsing and generation. See #25.ear-utils regenerate
command to re-generate AXML and CHNA chunks. See #8.- The
absoluteDistance
parameter is now extracted from AXML and added to theExtraData
structure; see #45. - Lots of documentation, see https://ear.readthedocs.io/
2.0.0 - 2019-05-22
Changes for ITU ADM renderer reference code.
- Changes to rendering of Objects specified using Cartesian parameters.
- Added conversion between Cartesian and polar Objects parameters.
- Changed to BSD-Clear license.
1.2.0 - 2019-05-22
- Slightly non-normalised gains in extent panner.
- Improved downmix/upmix behaviour for DirectSpeakers content specified using the common definitions.
- Change default azimuth of M+-SC to 15.
- Support wider azimuths for M+-SC; they may now be between 5 and 25 degrees, or 35 and 60 degrees.
- Removed LFE behaviour for Objects.
- Validate Cartesian and frequency information for Objects
1.1.2 - 2019-05-22
- Bug whereby NaNs could be produced in polar extent panner.
1.1.1 - 2019-04-12
aspectRatio
is an attribute not an element.- Accept the
urn:ebu:metadata-schema:ebuCore_2016
namespace. - Added default for Z coordinates.
- Various deprecation warnings.
- Specified loudspeaker positions are now checked against the allowed ranges.
- Validation of screenEdgeLock in Objects.
1.1.0 - 2018-11-26
adm_parent
references in ADM objects.
Matrix
type support.- Simple validation of ADM data model, and more extensive validation of ADM structures.
- Support for rendering objects with silent
audioTrackUID
references. - Support for
audioPackFormat
HOA parameters. - Selection of
audioProgramme
and complementaryaudioObjects
fromear-render
. adm_path
toRenderingItems
, with pointers to the corresponding ADM objects. This is not used by the renderer but is a useful feature for other applications built on top of the underlying ADM library.- Support for more flexible referencing of nested
audioPackFormats
; eachaudioTrackUID
orchna
row can reference any appropriateaudioPackFormat
on the path from the rootaudioPackFormat
(which contains the full set ofaudioChannelFormats
used) to theaudioPackFormat
that contains theaudioChannelFormat
of the track. - Better support for using multi-channel
audioPackFormats
-- in anaudioObject
orchna
-only file using multipleaudioPackFormats
may be ambiguous if they share someaudioChannelFormats
. This should now be handled correctly in all cases.
- The reference direction between
audioTrackFormat
andaudioStreamFormat
was reversed in the data model (audioTrackFormat
s now point at a singleaudioStreamFormat
), andaxml
references in either direction now establish this relationship. Note that this does not follow the exact wording in BS.2076-1, but this helps compatibility with other systems and should match future revisions of BS.2076. If either of these references are omitted a warning will be issued when a file is rendered. When generating BW64+ADM files (withear-utils
) both reference directions are now included. - Complete re-implementation of
RenderingItem
selection to support other features in this release. This functionality was moved fromear.fileio.utils
toear.core.select_items
. RenderingItems
now use theTrackSpec
structure rather than an index to point to their source audio, to allow for silent andMatrix
tracks.
1.0.1 - 2018-11-23
- An error will be raised if any
audioTrackUID
elements or CHNA rows have IDATU_00000000
, as references to these elements could be confused with silentaudioTrackUID
references. - Miscellaneous improvements to testing infrastructure.
- When generating BW64+ADM files (with
ear-utils
), do not generateaudioTrackUID
s with IDATU_00000000
, which (as above) could be confused with silentaudioTrackUID
references. - Updated use of
attrs
to fix deprecation warnings. - Wrong imports and CHNA chunk generation in
replace_axml
command. - Pytest warnings fixed by upgrading
pytest-datafiles
to 2.0. - Error when testing
block_aligner
on python 3.7 with coverage enabled. - Error in
PeakMonitor
when rendering very short files. dump_chna
in binary mode on python 3.- Padding character in axml chunk.
Initial release.