Skip to content

2076-3 Support#211

Open
rsjbailey wants to merge 15 commits into
masterfrom
2076-3-pr
Open

2076-3 Support#211
rsjbailey wants to merge 15 commits into
masterfrom
2076-3-pr

Conversation

@rsjbailey

Copy link
Copy Markdown
Contributor

Adds support for:

  • Cartesian subelement on DirectSpeakers type audioBlockFormat
  • tagList and subelements
  • profileList and subelements
  • authoringInformation subelement on audioProgramme, and authoringInformation's subelements

Many of these new elements reference other elements by ID.

Removing the referenced elements from a document in a way that would otherwise make the document invalid, causes these elements to be removed as well, this can happen recursively in some cases where removing that element causes its parent to also be invalidated.

Copilot was used in this PR, but primarily for re-arranging a long sequence of commits that explored a couple of different approaches, into something a bit more approachable.

rsjbailey and others added 8 commits April 24, 2026 10:58
Mirrors semantics on Objects type block format regarding interaction with the
used coordinate type

fix formatting
We were using a very old vcpkg revision that attempted to download a version of 7zip that is no longer available.
Updating to the latest action version while we're touching the build file
Were also experiencing a build failure due to msys2 / gcc being used on Windows,
so have added the ilammy/msvc-dev-cmd action to setup an MSVC environment.

The build failure was possibly exposing a legitimate issue (using dllimport on template
functions), but out of scope for this.
Introduce Tag, TagGroup, TagList wiring in the public API and XML parser/formatter, reuse ProfileList from SADM in ADM Document

Review-depth: high

Review-reason: Adds new user-visible ADM elements and XML behavior.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Move TagList/ProfileList auxiliary copying into shared copy machinery, remap TagGroup references during deepCopy, and centralize TagGroup pruning with template-based remove-side logic.

Review-depth: high

Review-reason: Alters deep-copy semantics and document remove side effects for TagList references.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Introduce loudnessMetadata.renderer support, shared renderer parameter types, and parser/formatter integration with dedicated unit and XML tests.

Review-depth: high

Review-reason: Adds new ADM element behavior and serialization semantics.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…er interop [copilot]

Add authoringInformation and coordinateMode support on audioProgrammeReferenceScreen, wire renderer interop APIs, and integrate parser/formatter/copy behavior with tests.

Review-depth: high

Review-reason: Introduces new programme metadata structures and cross-element interop behavior.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…d parsing [copilot]

Adopt weak-reference semantics for ReferenceLayout/renderer references and add forward-reference XML parsing coverage across authoring information, loudness renderer, and stream-format paths.

Review-depth: high

Review-reason: Changes reference ownership semantics and parser resolution behavior.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Expand deep-copy test coverage for 2076-3 metadata propagation in profile-list handling.

Review-depth: medium

Review-reason: Test-only change increasing behavioral coverage for copy semantics.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@davemar-bbc

Copy link
Copy Markdown
Collaborator

tagList and profileList seem to work fine with my code. Will check the other parts.
Will the extra dialogue category be added to audioContent?

TagGroups did not compare references, so the same tag could not be added with
different references
Was serialised as a required rather than optional parameter, so errored when not present
The attribute is mandatory on an authoring renderer but optional on a loudness
renderer per BS.2076-3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants