mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
WebRTC: Warning if no ideal profile. v6.0.33, v5.0.146 (#3446)
For WebRTC, SRS expect the h.264 codec is: ``` a=rtpmap:106 H264/90000 a=fmtp:106 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f ``` But sometimes, the device does not support the profile, for example only bellow: ``` a=fmtp:123 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e033 a=fmtp:122 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=420033 a=fmtp:121 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=640033 a=fmtp:120 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=4d0033 ``` So we should warning user about the profile missmatch, because it might not work. ---------- Co-authored-by: chundonglinlin <chundonglinlin@163.com> Co-authored-by: LiPeng <lipeng19811218@gmail.com>
This commit is contained in:
parent
b31940a15a
commit
a7514484a2
4 changed files with 9 additions and 3 deletions
|
@ -2723,6 +2723,10 @@ srs_error_t SrsRtcConnection::negotiate_publish_capability(SrsRtcUserConfig* ruc
|
|||
|
||||
track_desc->type_ = "video";
|
||||
track_desc->set_codec_payload((SrsCodecPayload*)video_payload);
|
||||
|
||||
if (!has_42e01f) {
|
||||
srs_warn("not ideal H.264 pt=%d %s", payload.payload_type_, payload.format_specific_param_.c_str());
|
||||
}
|
||||
// Only choose first match H.264 payload type.
|
||||
break;
|
||||
}
|
||||
|
@ -2756,7 +2760,7 @@ srs_error_t SrsRtcConnection::negotiate_publish_capability(SrsRtcUserConfig* ruc
|
|||
|
||||
track_desc->type_ = "video";
|
||||
track_desc->set_codec_payload((SrsCodecPayload*)video_payload);
|
||||
srs_warn("choose backup H.264 payload type=%d", payload.payload_type_);
|
||||
srs_warn("choose backup H.264 pt=%d %s", payload.payload_type_, payload.format_specific_param_.c_str());
|
||||
}
|
||||
|
||||
// TODO: FIXME: Support RRTR?
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue