Skip to content

Support RFC 6364 and IS-05 SMPTE 2022-5 FEC SDP (alternative to #505) - #515

Open
garethsb wants to merge 2 commits into
sony:masterfrom
garethsb:fix/is05-fec-alt
Open

Support RFC 6364 and IS-05 SMPTE 2022-5 FEC SDP (alternative to #505)#515
garethsb wants to merge 2 commits into
sony:masterfrom
garethsb:fix/is05-fec-alt

Conversation

@garethsb

@garethsb garethsb commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Summary

Alternative to #505, based on @thangldw's fix/is05-fec plus @garethsb's thangldw/nmos-cpp#1 trailing-field simplification. Rebased onto master after #514.

  • RFC 6364 SDP grammar for FEC/UDP, UDP/FEC, FEC-FR, fec-source-flow, fec-repair-flow, repair-window
  • optional trailing object_converter field so m= format lists may be omitted
  • IS-05-compatible SMPTE 2022-5 mapping in nmos/sdp*
  • require resolved fec_mode (1D/2D) when creating SDP; parse concrete mode from repair-flow count
  • resolve receiver staged fec_mode: auto from /constraints (highest enum value, or 2D when unconstrained)

Commits (this PR vs master)

  1. Implement RFC 6364 SDP grammar (@thangldw)
  2. Support IS-05 SMPTE 2022-5 FEC SDP (@thangldw / @garethsb)

Testing

Linux Release: all testSdp* / *Fec* (681 assertions in 37 cases).

Related to #38.

@garethsb
garethsb force-pushed the fix/is05-fec-alt branch 2 times, most recently from 9e15c7d to e2e845d Compare July 29, 2026 11:46
@garethsb
garethsb marked this pull request as draft July 29, 2026 12:16
thangldw and others added 2 commits July 29, 2026 14:33
Parse and generate fec-source-flow, fec-repair-flow, and repair-window.
Use digits_converter for DIGIT fields, and an optional trailing
object_converter field so m= format lists may be omitted.
Map FEC transport parameters to RFC 6364 SDP attributes.
Require resolved fec_mode ("1D"/"2D") when creating SDP.
Parse concrete fec_mode from repair-flow count; leave unused
fec2D_destination_port as "auto". Resolve receiver staged
fec_mode auto from /constraints as the highest available
number of dimensions.

Co-authored-by: Gareth Sylvester-Bradley <garethsb@nvidia.com>
@garethsb

Copy link
Copy Markdown
Contributor Author

@lo-simon, this #515 is fundamentally @thangldw's nice work from #505 rebased onto #512 and #514, with:

  • simpler digit/trailing-field grammar
  • stricter create/parse/auto handling aligned with resolved /active
  • cleaner constructors

This PR still needs a big review; there's a fair bit of complexity in the FEC SDP handling and conversion to/from IS-05 transport_params.

@garethsb
garethsb marked this pull request as ready for review July 29, 2026 15:08
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