📄 tsdpparse.in
字号:
# Init <version number>
# Parse <parse result> <value count> <sdp string>
# IntCount <value index> <num of int fields>
# StringCount <value index> <num of string fields>
# BufferCount <value index> <num of buffer fields>
# GetInt <value index> <field name> <expected value>
# GetString <value index> <field name> <expected value>
# GetBuffer <value index> <field name> <expected value>
Init 123456
Parse 0x00000000 1 ""
IntCount 0 0
StringCount 0 0
BufferCount 0 0
Init 123456
Parse 0x00000000 1 "\n\n\nv=0"
IntCount 0 0
StringCount 0 0
BufferCount 0 0
# Invalid SDP version. Need upgrade
Init 123456
Parse 0x80004005 0 "v=1\r\na=foo:bar\r\n"
#Parse 0x00000000 1 "v=1\r\n"
#IntCount 0 2
#GetInt 0 LiveStream 1
#GetInt 0 StreamCount 0
#StringCount 0 0
#BufferCount 0 0
# Invalid SDP version. Need upgrade
Init 123456
Parse 0x80004005 0 "v=1\r\na=foo:bar\r\n"
# Test flag field
Init 123456
Parse 0x00000000 1 "v=0\r\na=foo\r\n"
IntCount 0 0
StringCount 0 1
GetString 0 SDPData "a=foo\n"
BufferCount 0 0
# Test unknown key/value field
Init 123456
Parse 0x00000000 1 "v=0\r\na=foo:bar\r\n"
IntCount 0 0
StringCount 0 1
GetString 0 SDPData "a=foo:bar\n"
BufferCount 0 0
# o= line
Init 123456
Parse 0x00000000 1 "v=0\r\no=dskjfh\r\n"
IntCount 0 0
StringCount 0 0
BufferCount 0 0
# s= line
Init 123456
Parse 0x00000000 1 "v=0\r\ns=dskjfh\r\n"
IntCount 0 0
StringCount 0 0
BufferCount 0 0
# Test unknown session level line type like "u="
Init 123456
Parse 0x00000000 1 "v=0\r\nu=http://www.foo.com/index.html\r\n"
IntCount 0 0
StringCount 0 1
GetString 0 SDPData "u=http://www.foo.com/index.html\n"
BufferCount 0 0
# Test unknown session level line type like "k="
Init 123456
Parse 0x00000000 2 "v=0\r\nm=video 42 RTP/AVP 34\r\nk=uri:http://www.foo.com/thekey.html\r\n"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 8
GetInt 1 AvgBitRate 0
GetInt 1 Channels 0
GetInt 1 HXTimestampConversionFactor 1
GetInt 1 Port 42
GetInt 1 RTPPayloadType 34
GetInt 1 RTPTimestampConversionFactor 90
GetInt 1 SamplesPerSecond 90000
GetInt 1 StreamNumber 0
StringCount 1 3
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
GetString 1 MimeType "video/H263"
GetString 1 SDPData "k=uri:http://www.foo.com/thekey.html\n"
BufferCount 1 0
# single payload type
Init 123456
Parse 0x00000000 2 "v=0\r\nm=audio 42 RTP/AVP 0\r\n"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 8
GetInt 1 AvgBitRate 64000
GetInt 1 Channels 1
GetInt 1 HXTimestampConversionFactor 1
GetInt 1 Port 42
GetInt 1 RTPPayloadType 0
GetInt 1 RTPTimestampConversionFactor 8
GetInt 1 SamplesPerSecond 8000
GetInt 1 StreamNumber 0
StringCount 1 2
GetString 1 ASMRuleBook "marker=0,AverageBandwidth=32000;marker=1,AverageBandwidth=32000;"
GetString 1 MimeType "audio/PCMU"
BufferCount 1 0
# multiple payload types
Init 123456
Parse 0x00000000 2 "v=0\r\nm=audio 46 RTP/AVP 10 11 0\r\n"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 8
GetInt 1 AvgBitRate 1411200
GetInt 1 Channels 2
GetInt 1 HXTimestampConversionFactor 10
GetInt 1 Port 46
GetInt 1 RTPPayloadType 10
GetInt 1 RTPTimestampConversionFactor 441
GetInt 1 SamplesPerSecond 44100
GetInt 1 StreamNumber 0
StringCount 1 2
GetString 1 ASMRuleBook "marker=0,AverageBandwidth=705600;marker=1,AverageBandwidth=705600;"
GetString 1 MimeType audio/L16
BufferCount 1 0
# invalid payload type. Force update
Init 123456
Parse 0x80040017 0 "v=0\r\nm=audio 42 RTP/AVP 20\r\n"
# invalid payload type. Force update at next media line
Init 123456
Parse 0x80040017 0 "v=0\r\nm=audio 42 RTP/AVP 20\r\nm=audio 44 RTP/AVP 0\r\n"
# Handle propagation of session level range into media level
Init 123456
Parse 0x00000000 2 "v=0\r\na=range:npt=0-10\r\nm=audio 42 RTP/AVP 0\r\n"
IntCount 0 2
GetInt 0 Duration 10000
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 9
GetInt 1 AvgBitRate 64000
GetInt 1 Channels 1
GetInt 1 Duration 10000
GetInt 1 HXTimestampConversionFactor 1
GetInt 1 Port 42
GetInt 1 RTPPayloadType 0
GetInt 1 RTPTimestampConversionFactor 8
GetInt 1 SamplesPerSecond 8000
GetInt 1 StreamNumber 0
StringCount 1 2
GetString 1 ASMRuleBook "marker=0,AverageBandwidth=32000;marker=1,AverageBandwidth=32000;"
GetString 1 MimeType "audio/PCMU"
BufferCount 1 0
# Handle GSM hack
Init 123456
Parse 0x00000000 2 "v=0\r\nm=audio 42 RTP/AVP 3\r\n"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 8
GetInt 1 AvgBitRate 0
GetInt 1 Channels 1
GetInt 1 HXTimestampConversionFactor 1
GetInt 1 Port 42
GetInt 1 RTPPayloadType 3
GetInt 1 RTPTimestampConversionFactor 8
GetInt 1 SamplesPerSecond 8000
GetInt 1 StreamNumber 0
StringCount 1 2
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
GetString 1 MimeType "audio/x-pn-gsm610"
BufferCount 1 1
GetBuffer 1 OpaqueData "31000100401f00005906000041000000020040012626"
# rtpmap field test with encoding only
Init 123456
Parse 0x00000000 2 "v=0\r\nm=audio 42 RTP/AVP 101\r\na=rtpmap:101 ABC"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 4
GetInt 1 AvgBitRate 0
GetInt 1 Port 42
GetInt 1 RTPPayloadType 101
GetInt 1 StreamNumber 0
StringCount 1 2
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
GetString 1 MimeType "audio/ABC"
BufferCount 1 0
# rtpmap field test with encoding and sample rate only
Init 123456
Parse 0x00000000 2 "v=0\r\nm=audio 42 RTP/AVP 101\r\na=rtpmap:101 ABC/90000"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 5
GetInt 1 AvgBitRate 0
GetInt 1 Port 42
GetInt 1 RTPPayloadType 101
GetInt 1 SamplesPerSecond 90000
GetInt 1 StreamNumber 0
StringCount 1 2
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
GetString 1 MimeType "audio/ABC"
BufferCount 1 0
# rtpmap field test with encoding, sample rate, and channels
Init 123456
Parse 0x00000000 2 "v=0\r\nm=audio 42 RTP/AVP 101\r\na=rtpmap:101 ABC/90000/2"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 6
GetInt 1 AvgBitRate 0
GetInt 1 Channels 2
GetInt 1 Port 42
GetInt 1 RTPPayloadType 101
GetInt 1 SamplesPerSecond 90000
GetInt 1 StreamNumber 0
StringCount 1 2
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
GetString 1 MimeType "audio/ABC"
BufferCount 1 0
# fmtp tests
Init 123456
Parse 0x00000000 2 "v=0\r\nm=video 42 RTP/AVP 34\r\na=fmtp:34 profile-id=0"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 9
GetInt 1 AvgBitRate 0
GetInt 1 Channels 0
GetInt 1 FMTPprofile-id 0
GetInt 1 HXTimestampConversionFactor 1
GetInt 1 Port 42
GetInt 1 RTPPayloadType 34
GetInt 1 RTPTimestampConversionFactor 90
GetInt 1 SamplesPerSecond 90000
GetInt 1 StreamNumber 0
StringCount 1 3
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
GetString 1 MimeType "video/H263"
GetString 1 PayloadParameters "profile-id=0"
BufferCount 1 0
# Test partial SDP FMTP chunk
Init 123456
Parse 0x00000000 1 "a=fmtp:101 object=2;cpresent=1;config=200013901387"
IntCount 0 2
GetInt 0 FMTPobject 2
GetInt 0 FMTPcpresent 1
StringCount 0 2
GetString 0 PayloadParameters "object=2;cpresent=1;config=200013901387"
GetString 0 FMTPconfig "200013901387"
BufferCount 0 0
# Test the case where the fmtp does not match the RTPPayloadType
Init 123456
Parse 0x00000000 2 "m=video 42 RTP/AVP 102\r\na=fmtp:101 object=2;cpresent=1;config=200013901387"
IntCount 0 2
GetInt 0 StreamCount 1
GetInt 0 LiveStream 1
StringCount 0 0
BufferCount 0 0
IntCount 1 4
GetInt 1 StreamNumber 0
GetInt 1 AvgBitRate 0
GetInt 1 RTPPayloadType 102
GetInt 1 Port 42
StringCount 1 1
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
BufferCount 1 0
# ptime test
Init 123456
Parse 0x00000000 2 "v=0\r\nm=video 42 RTP/AVP 34\r\na=ptime:5"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 9
GetInt 1 AvgBitRate 0
GetInt 1 Channels 0
GetInt 1 HXTimestampConversionFactor 1
GetInt 1 Port 42
GetInt 1 Ptime 5
GetInt 1 RTPPayloadType 34
GetInt 1 RTPTimestampConversionFactor 90
GetInt 1 SamplesPerSecond 90000
GetInt 1 StreamNumber 0
StringCount 1 2
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
GetString 1 MimeType "video/H263"
BufferCount 1 0
# x-bufferdelay test
Init 123456
Parse 0x00000000 2 "v=0\r\nm=video 42 RTP/AVP 34\r\na=x-bufferdelay:43"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 9
GetInt 1 AvgBitRate 0
GetInt 1 Channels 0
GetInt 1 HXTimestampConversionFactor 1
GetInt 1 Port 42
GetInt 1 Preroll 43
GetInt 1 RTPPayloadType 34
GetInt 1 RTPTimestampConversionFactor 90
GetInt 1 SamplesPerSecond 90000
GetInt 1 StreamNumber 0
StringCount 1 2
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
GetString 1 MimeType "video/H263"
BufferCount 1 0
# x-bufferdelay test w/ Preroll present
Init 123456
Parse 0x00000000 2 "v=0\r\nm=video 42 RTP/AVP 34\r\na=Preroll:integer;64\r\na=x-bufferdelay:43"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 9
GetInt 1 AvgBitRate 0
GetInt 1 Channels 0
GetInt 1 HXTimestampConversionFactor 1
GetInt 1 Port 42
GetInt 1 Preroll 64
GetInt 1 RTPPayloadType 34
GetInt 1 RTPTimestampConversionFactor 90
GetInt 1 SamplesPerSecond 90000
GetInt 1 StreamNumber 0
StringCount 1 2
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
GetString 1 MimeType "video/H263"
BufferCount 1 0
# x-initpredecbufperiod test
Init 123456
Parse 0x00000000 2 "v=0\r\nm=video 42 RTP/AVP 34\r\na=x-initpredecbufperiod:45000"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 9
GetInt 1 AvgBitRate 0
GetInt 1 Channels 0
GetInt 1 HXTimestampConversionFactor 1
GetInt 1 Port 42
GetInt 1 Preroll 500
GetInt 1 RTPPayloadType 34
GetInt 1 RTPTimestampConversionFactor 90
GetInt 1 SamplesPerSecond 90000
GetInt 1 StreamNumber 0
StringCount 1 2
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
GetString 1 MimeType "video/H263"
BufferCount 1 0
# x-initpredecbufperiod test w/ Preroll present
Init 123456
Parse 0x00000000 2 "v=0\r\nm=video 42 RTP/AVP 34\r\na=Preroll:integer;64\r\na=x-initpredecbufperiod:43"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 9
GetInt 1 AvgBitRate 0
GetInt 1 Channels 0
GetInt 1 HXTimestampConversionFactor 1
GetInt 1 Port 42
GetInt 1 Preroll 64
GetInt 1 RTPPayloadType 34
GetInt 1 RTPTimestampConversionFactor 90
GetInt 1 SamplesPerSecond 90000
GetInt 1 StreamNumber 0
StringCount 1 2
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
GetString 1 MimeType "video/H263"
BufferCount 1 0
# x-predecbufsize test
Init 123456
Parse 0x00000000 2 "v=0\r\nm=video 42 RTP/AVP 34\r\na=x-predecbufsize:45000"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 9
GetInt 1 AvgBitRate 0
GetInt 1 Channels 0
GetInt 1 HXTimestampConversionFactor 1
GetInt 1 Port 42
GetInt 1 x-predecbufsize 45000
GetInt 1 RTPPayloadType 34
GetInt 1 RTPTimestampConversionFactor 90
GetInt 1 SamplesPerSecond 90000
GetInt 1 StreamNumber 0
StringCount 1 2
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
GetString 1 MimeType "video/H263"
BufferCount 1 0
# Unknown field test
Init 123456
Parse 0x00000000 2 "v=0\r\nm=video 42 RTP/AVP 34\r\na=somefield:5\r\n"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 1
StringCount 0 0
BufferCount 0 0
IntCount 1 8
GetInt 1 AvgBitRate 0
GetInt 1 Channels 0
GetInt 1 HXTimestampConversionFactor 1
GetInt 1 Port 42
GetInt 1 RTPPayloadType 34
GetInt 1 RTPTimestampConversionFactor 90
GetInt 1 SamplesPerSecond 90000
GetInt 1 StreamNumber 0
StringCount 1 3
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
GetString 1 MimeType "video/H263"
GetString 1 SDPData "a=somefield:5\n"
BufferCount 1 0
# Unknown field test w/ multiple media lines
Init 123456
Parse 0x00000000 3 "v=0\r\nm=video 42 RTP/AVP 34\r\na=somefield:5\r\nm=audio 44 RTP/AVP 0\r\n"
IntCount 0 2
GetInt 0 LiveStream 1
GetInt 0 StreamCount 2
StringCount 0 0
BufferCount 0 0
IntCount 1 8
GetInt 1 AvgBitRate 0
GetInt 1 Channels 0
GetInt 1 HXTimestampConversionFactor 1
GetInt 1 Port 42
GetInt 1 RTPPayloadType 34
GetInt 1 RTPTimestampConversionFactor 90
GetInt 1 SamplesPerSecond 90000
GetInt 1 StreamNumber 0
StringCount 1 3
GetString 1 ASMRuleBook "marker=0,timestampdelivery=1;marker=1,timestampdelivery=1;"
GetString 1 MimeType "video/H263"
BufferCount 1 0
IntCount 2 8
GetInt 2 AvgBitRate 64000
GetInt 2 Channels 1
GetInt 2 HXTimestampConversionFactor 1
GetInt 2 Port 44
GetInt 2 RTPPayloadType 0
GetInt 2 RTPTimestampConversionFactor 8
GetInt 2 SamplesPerSecond 8000
GetInt 2 StreamNumber 1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -