]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
chan_pjsip: Send VIDUPDATE RTP frame for all H.264 streams
authorMaximilian Fridrich <m.fridrich@commend.com>
Mon, 2 Dec 2024 11:09:47 +0000 (12:09 +0100)
committerasterisk-org-access-app[bot] <120671045+asterisk-org-access-app[bot]@users.noreply.github.com>
Tue, 3 Dec 2024 13:57:36 +0000 (13:57 +0000)
Currently, when a chan_pjsip channel receives a VIDUPDATE indication,
an RTP VIDUPDATE frame is only queued on a H.264 stream if WebRTC is
enabled on that endpoint. This restriction does not really make sense.

Now, a VIDUPDATE RTP frame is written even if WebRTC is not enabled (as
is the case with VP8, VP9, and H.265 streams).

Resolves: #1013

channels/chan_pjsip.c

index c7d0d05fdbe5d958324abfdbd1513903bce6021e..cb60378e833c9f920b4e7281c640584e9ea2caf1 100644 (file)
@@ -1733,8 +1733,7 @@ static int chan_pjsip_indicate(struct ast_channel *ast, int condition, const voi
                                if (ast_format_cap_iscompatible_format(ast_channel_nativeformats(ast), ast_format_vp8) != AST_FORMAT_CMP_NOT_EQUAL ||
                                        ast_format_cap_iscompatible_format(ast_channel_nativeformats(ast), ast_format_vp9) != AST_FORMAT_CMP_NOT_EQUAL ||
                                        ast_format_cap_iscompatible_format(ast_channel_nativeformats(ast), ast_format_h265) != AST_FORMAT_CMP_NOT_EQUAL ||
-                                       (channel->session->endpoint->media.webrtc &&
-                                        ast_format_cap_iscompatible_format(ast_channel_nativeformats(ast), ast_format_h264) != AST_FORMAT_CMP_NOT_EQUAL)) {
+                                       ast_format_cap_iscompatible_format(ast_channel_nativeformats(ast), ast_format_h264) != AST_FORMAT_CMP_NOT_EQUAL) {
                                        /* FIXME Fake RTP write, this will be sent as an RTCP packet. Ideally the
                                         * RTP engine would provide a way to externally write/schedule RTCP
                                         * packets */