Skip to content

Stream and Channel Mapping Support#2015

Open
reinecke wants to merge 7 commits intoAcademySoftwareFoundation:mainfrom
reinecke:feature/stream_channel_mapping_support
Open

Stream and Channel Mapping Support#2015
reinecke wants to merge 7 commits intoAcademySoftwareFoundation:mainfrom
reinecke:feature/stream_channel_mapping_support

Conversation

@reinecke
Copy link
Copy Markdown
Collaborator

@reinecke reinecke commented Apr 4, 2026

Link the Issue(s) this Pull Request is related to.

If there is an associated issue, link it in the form:

Fixes #145

Summarize your change.

To for an explanation of the implementation, check out the docs.

This PR implements the proposal that was created to address #145 and add the ability to do stream/channel addressing and mapping from sources into the composition.

The C++ implementation of the mappings was built following the pattern of Clip.media_references.

Reference associated tests.

Unittests were added for the new features.

reinecke and others added 6 commits April 3, 2026 13:43
Signed-off-by: Eric Reinecke <ereinecke@netflix.com>
Signed-off-by: Eric Reinecke <ereinecke@netflix.com>
Signed-off-by: Eric Reinecke <ereinecke@netflix.com>
Signed-off-by: Eric Reinecke <ereinecke@netflix.com>
Signed-off-by: Eric Reinecke <ereinecke@netflix.com>
@reinecke
Copy link
Copy Markdown
Collaborator Author

reinecke commented Apr 4, 2026

@mrlimbic here is my first pass at stream/channel mapping. Please feel free to provide feedback here.

Signed-off-by: Eric Reinecke <ereinecke@netflix.com>
@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Apr 4, 2026

Codecov Report

❌ Patch coverage is 92.21453% with 45 lines in your changes missing coverage. Please review.
✅ Project coverage is 85.49%. Comparing base (267fe4b) to head (0781cd2).

Files with missing lines Patch % Lines
...entimelineio-bindings/otio_serializableObjects.cpp 80.00% 23 Missing ⚠️
src/opentimelineio/streamInfo.h 60.00% 2 Missing ⚠️
...melineio/opentimelineio/schema/audio_mix_matrix.py 75.00% 2 Missing ⚠️
...neio/opentimelineio/schema/index_stream_address.py 75.00% 2 Missing ⚠️
...timelineio/opentimelineio/schema/stream_address.py 75.00% 2 Missing ⚠️
...neio/schema/stream_channel_index_stream_address.py 75.00% 2 Missing ⚠️
...pentimelineio/opentimelineio/schema/stream_info.py 75.00% 2 Missing ⚠️
...ntimelineio/opentimelineio/schema/stream_mapper.py 75.00% 2 Missing ⚠️
...imelineio/opentimelineio/schema/stream_selector.py 75.00% 2 Missing ⚠️
...eio/opentimelineio/schema/string_stream_address.py 75.00% 2 Missing ⚠️
... and 3 more
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #2015      +/-   ##
==========================================
+ Coverage   85.14%   85.49%   +0.34%     
==========================================
  Files         181      205      +24     
  Lines       12780    13354     +574     
  Branches     1206     1217      +11     
==========================================
+ Hits        10882    11417     +535     
- Misses       1715     1753      +38     
- Partials      183      184       +1     
Flag Coverage Δ
py-unittests 85.49% <92.21%> (+0.34%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
src/opentimelineio/audioMixMatrix.cpp 100.00% <100.00%> (ø)
src/opentimelineio/indexStreamAddress.cpp 100.00% <100.00%> (ø)
src/opentimelineio/indexStreamAddress.h 100.00% <100.00%> (ø)
src/opentimelineio/mediaReference.cpp 100.00% <100.00%> (ø)
src/opentimelineio/mediaReference.h 100.00% <ø> (ø)
src/opentimelineio/streamAddress.cpp 100.00% <100.00%> (ø)
...opentimelineio/streamChannelIndexStreamAddress.cpp 100.00% <100.00%> (ø)
...c/opentimelineio/streamChannelIndexStreamAddress.h 100.00% <100.00%> (ø)
src/opentimelineio/streamInfo.cpp 100.00% <100.00%> (ø)
src/opentimelineio/streamMapper.cpp 100.00% <100.00%> (ø)
... and 20 more

... and 3 files with indirect coverage changes


Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 267fe4b...0781cd2. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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.

Media Reference Stream/Channel Specification support

2 participants