[multicat-devel] [Git][videolan/multicat][master] 7 commits: Ignore non-TS RTP packets

Christophe Massiot (@cmassiot) gitlab at videolan.org
Mon Jun 15 13:09:16 UTC 2026



Christophe Massiot pushed to branch master at VideoLAN / multicat


Commits:
3682db8b by Arnaud de Turckheim at 2026-06-12T17:58:00+02:00
Ignore non-TS RTP packets

Some FEC protocols allow trasnmitting non-TS RTP packets on the same
port as the original TS stream.

- - - - -
aebbb434 by igutidze at 2026-06-15T15:07:15+02:00
util.c: log failed attempts to set SO_RCVBUF size
- - - - -
1b697048 by igutidze at 2026-06-15T15:07:15+02:00
util.c: make sure requested SO_RCVBUF is applied
- - - - -
30c71766 by igutidze at 2026-06-15T15:07:15+02:00
util.c: add rcvbufsz command line option
- - - - -
6b99d6d6 by igutidze at 2026-06-15T15:07:15+02:00
Update README
- - - - -
4833e3a1 by Arnaud de Turckheim at 2026-06-15T15:07:15+02:00
multilive: remove peer type inference

Peer type (`in` or `out`) is now explicitly set in configuration files
to support input peers with source address filtering.
The peer types of the peer configurations provided via the command line
are determined by their order: input then output.

- - - - -
c913225d by Christophe Massiot at 2026-06-15T15:08:40+02:00
Merge branch 'quarium-ignore-non-ts'

- - - - -


1 changed file:

- multicat.c


Changes:

=====================================
multicat.c
=====================================
@@ -104,6 +104,7 @@ static bool (*pf_Delay)(void) = NULL;
 static void (*pf_ExitRead)(void);
 static ssize_t (*pf_Write)( const void *p_buf, size_t i_len );
 static void (*pf_ExitWrite)(void);
+static bool b_non_ts_warned = false;
 
 static void usage(void)
 {
@@ -1180,6 +1181,13 @@ int main( int i_argc, char **pp_argv )
         {
             if ( !rtp_check_hdr( p_read_buffer ) )
                 msg_Warn( NULL, "invalid RTP packet received" );
+            if ( rtp_get_type(p_read_buffer) != RTP_TYPE_TS ) {
+                if ( !b_non_ts_warned )
+                    msg_Warn( NULL, "input isn't MPEG transport stream, "
+                                    "dropping..." );
+                b_non_ts_warned = true;
+                goto dropped_packet;
+            }
             p_payload = rtp_payload( p_read_buffer );
             i_payload_size = p_read_buffer + i_read_size - p_payload;
         }



View it on GitLab: https://code.videolan.org/videolan/multicat/-/compare/3ef0a3d99f1744fd4df6549aa28dfcbd5337b888...c913225d0fd2e070fea56c1c14203c9ea59a7b8c

-- 
View it on GitLab: https://code.videolan.org/videolan/multicat/-/compare/3ef0a3d99f1744fd4df6549aa28dfcbd5337b888...c913225d0fd2e070fea56c1c14203c9ea59a7b8c
You're receiving this email because of your account on code.videolan.org. Manage all notifications: https://code.videolan.org/-/profile/notifications | Help: https://code.videolan.org/help




More information about the multicat-devel mailing list