diff --git a/unmarshal.go b/unmarshal.go index 939b6ce..b423437 100644 --- a/unmarshal.go +++ b/unmarshal.go @@ -895,6 +895,7 @@ func unmarshalMediaDescription(lex *lexer) (stateFn, error) { //nolint:cyclop "UDT", "IX", "MRCPv2", + "FEC", ) { return nil, fmt.Errorf("%w `%v`", errSDPInvalidNumericValue, field) } diff --git a/unmarshal_test.go b/unmarshal_test.go index dd2e313..6310bfc 100644 --- a/unmarshal_test.go +++ b/unmarshal_test.go @@ -174,6 +174,11 @@ const ( MediaTCPTLSMRCPv2 = TimingSDP + "m=application 1544 TCP/TLS/MRCPv2 1\r\n" + MediaFECSDP = TimingSDP + + "m=application 50178 UDP/FEC *\r\n" + + "a=fec-repair-flow:encoding-id=8; fssi=E:1234,S:0,m:7\r\n" + + "a=repair-window:500ms\r\n" + CanonicalUnmarshalSDP = "v=0\r\n" + "o=jdoe 2890844526 2890842807 IN IP4 10.47.16.5\r\n" + "s=SDP Seminar\r\n" + @@ -333,6 +338,10 @@ func TestRoundTrip(t *testing.T) { Name: "MediaTCPTLSMRCPv2", SDP: MediaTCPTLSMRCPv2, }, + { + Name: "MediaFEC", + SDP: MediaFECSDP, + }, } { test := test t.Run(test.Name, func(t *testing.T) {