]> git.sesse.net Git - vlc/commitdiff
demux: ts: don't try to decode and warn on scrambled PES
authorFrancois Cartegnie <fcvlcdev@free.fr>
Fri, 22 Aug 2014 09:09:42 +0000 (18:09 +0900)
committerFrancois Cartegnie <fcvlcdev@free.fr>
Sat, 30 Aug 2014 05:04:27 +0000 (14:04 +0900)
modules/demux/ts.c

index 22e0f59008e6f7684564e5da8537e807779d265e..2f9ec3c9c435e0d7884c5bc9807174fa6f0c6c1a 100644 (file)
@@ -1567,10 +1567,11 @@ static void ParsePES( demux_t *p_demux, ts_pid_t *pid, block_t *p_pes )
     /* FIXME find real max size */
     /* const int i_max = */ block_ChainExtract( p_pes, header, 34 );
 
-    if( header[0] != 0 || header[1] != 0 || header[2] != 1 )
+    if( pid->b_scrambled || header[0] != 0 || header[1] != 0 || header[2] != 1 )
     {
-        msg_Warn( p_demux, "invalid header [0x%02x:%02x:%02x:%02x] (pid: %d)",
-                    header[0], header[1],header[2],header[3], pid->i_pid );
+        if ( !pid->b_scrambled )
+            msg_Warn( p_demux, "invalid header [0x%02x:%02x:%02x:%02x] (pid: %d)",
+                        header[0], header[1],header[2],header[3], pid->i_pid );
         block_ChainRelease( p_pes );
         return;
     }