I'm doing a SIP client and have some problems with it. I invite user via SIP server, and get SDP parameters from it. However, user client (MicroSip) did not send sdprop-params in SDP. Moreover, it did not send SPS/PPS slices in RTP stream either.
How to get picture parameters in this way?
Wireshark dump
Session Description Protocol
Session Description Protocol Version (v): 0
Owner/Creator, Session Id (o): - 1516869540 1516869540 IN IP4 172.16.50.175
Session Name (s): mss
Connection Information (c): IN IP4 172.16.50.175
Time Description, active time (t): 0 0
Media Description, name and address (m): audio 4000 RTP/AVP 97 100
Connection Information (c): IN IP4 172.16.50.175
Media Attribute (a): rtcp:4001 IN IP4 172.16.50.175
Media Attribute Fieldname: rtcp
Media Attribute Value: 4001 IN IP4 172.16.50.175
Media Attribute (a): sendrecv
Media Attribute (a): rtpmap:97 opus/48000/2
Media Attribute Fieldname: rtpmap
Media Format: 97
MIME Type: opus
Sample Rate: 48000
Media Attribute (a): fmtp:97 maxplaybackrate=24000
Media Attribute Fieldname: fmtp
Media Format: 97 [opus]
Media format specific parameters: maxplaybackrate=24000
Media Attribute (a): rtpmap:100 telephone-event/8000
Media Attribute Fieldname: rtpmap
Media Format: 100
MIME Type: telephone-event
Sample Rate: 8000
Media Attribute (a): fmtp:100 0-16
Media Attribute Fieldname: fmtp
Media Format: 100 [telephone-event]
Media format specific parameters: 0-16
Media Description, name and address (m): video 4002 RTP/AVP 97
Connection Information (c): IN IP4 172.16.50.175
Media Attribute (a): rtcp:4003 IN IP4 172.16.50.175
Media Attribute Fieldname: rtcp
Media Attribute Value: 4003 IN IP4 172.16.50.175
Media Attribute (a): sendrecv
Media Attribute (a): rtpmap:97 H264/90000
Media Attribute Fieldname: rtpmap
Media Format: 97
MIME Type: H264
Sample Rate: 90000
Media Attribute (a): fmtp:97 profile-level-id=42801e; packetization-mode=0
Media Attribute Fieldname: fmtp
Media Format: 97 [H264]
Media format specific parameters: profile-level-id=42801e
Profile: 42801e
Media format specific parameters: packetization-mode=0
[Packetization mode: Single NAL mode (0)]
Сlient每1秒发送一次SPS / PPS slicec,您必须等待。
The SPS / PPS may only be sent in the startup and never again depending on the video sender. eg Polycom VVX video phones
From the SDP you can only find the maximum bit rate based on the Profile value which will restrict what can be received. Please note I said
The profile value of 42801e is:
So this will define the maximum bitrate and the possible resolutions based on that bitrate as support by the level and also what H264 features are supported by the profile (CBP).
To force a SPS / PPS to be sent to you, can send a Media Control command to the video sender as per RFC5168 . You should send one of these when you detect dropped packets or if the user requests it (IE the user sees a corrupt picture and indicates they want a refresh). You could send them on a regular basis if you like.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.