PR #20256 opened by Jack Lau (JackLau) URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20256 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20256.patch
See RFC 5245 Section 4.3 If an agent is a lite implementation, it MUST include an "a=ice-lite" session-level attribute in its SDP. If an agent is a full implementation, it MUST NOT include this attribute. Signed-off-by: Jack Lau <jacklau1...@qq.com> >From 0f00cd8787537efeb22ee7dd0c19271ac2cb5eda Mon Sep 17 00:00:00 2001 From: Jack Lau <jacklau1...@qq.com> Date: Sat, 16 Aug 2025 20:20:23 +0800 Subject: [PATCH] avformat/whip: check the peer whether is ice lite See RFC 5245 Section 4.3 If an agent is a lite implementation, it MUST include an "a=ice-lite" session-level attribute in its SDP. If an agent is a full implementation, it MUST NOT include this attribute. Signed-off-by: Jack Lau <jacklau1...@qq.com> --- libavformat/whip.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libavformat/whip.c b/libavformat/whip.c index e2fa774c6f..19ab701b05 100644 --- a/libavformat/whip.c +++ b/libavformat/whip.c @@ -228,6 +228,7 @@ typedef struct WHIPContext { */ char *sdp_offer; + int is_peer_ice_lite; /* The ICE username and pwd from remote server. */ char *ice_ufrag_remote; char *ice_pwd_remote; @@ -829,6 +830,8 @@ static int parse_answer(AVFormatContext *s) for (i = 0; !avio_feof(pb); i++) { ff_get_chomp_line(pb, line, sizeof(line)); + if (av_strstart(line, "a=ice-lite", &ptr)) + whip->is_peer_ice_lite = 1; if (av_strstart(line, "a=ice-ufrag:", &ptr) && !whip->ice_ufrag_remote) { whip->ice_ufrag_remote = av_strdup(ptr); if (!whip->ice_ufrag_remote) { -- 2.49.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".