Repository navigation
Support RFC 6364 and IS-05 SMPTE 2022-5 FEC SDP (alternative to #505) - #515
Conversation
9e15c7d to
e2e845d
Compare
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>
e2e845d to
00db78d
Compare
|
@lo-simon, this #515 is fundamentally @thangldw's nice work from #505 rebased onto #512 and #514, with:
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 |
lo-simon
left a comment
There was a problem hiding this comment.
For RFC6364, the tag-len and repair-window size require %x31-39 *DIGIT (with a non-zero first digit). I created a non_zero_digits_converter to replace the digits_converter in the fec_source_flow_converter and repair_window_converter. Additionally, I extended the unit tests accordingly. Please see the attached patch file.
enhance-sdp-grammer-for-non-zero-integer.patch
|
Thanks @lo-simon. I don't want
Refusing So I have not taken the converter, or the |
Lock the fssi parse failures already enforced beside ss-fssi, and the IS-05 transport-parameter cases for groups the mapper skips or rejects. Signed-off-by: Gareth Sylvester-Bradley <garethsb@nvidia.com>
Summary
Alternative to #505, based on @thangldw's
fix/is05-fecplus @garethsb's thangldw/nmos-cpp#1 trailing-field simplification. Rebased ontomasterafter #514.FEC/UDP,UDP/FEC,FEC-FR,fec-source-flow,fec-repair-flow,repair-windowobject_converterfield som=format lists may be omittednmos/sdp*fec_mode(1D/2D) when creating SDP; parse concrete mode from repair-flow countfec_mode: autofrom/constraints(highest enum value, or2Dwhen unconstrained)Commits (this PR vs
master)Testing
Linux Release: all
testSdp*/*Fec*(681 assertions in 37 cases).Related to #38.