]> git.sesse.net Git - vlc/blobdiff - modules/packetizer/mpeg4video.c
SRTCP support
[vlc] / modules / packetizer / mpeg4video.c
index fdffce8b2ca28ce831e6eb5ce46adb41d04ee441..c5b383997af8ec6910445b3d8faca68e0ab78d06 100644 (file)
 #include <stdlib.h>                                      /* malloc(), free() */
 
 #include <vlc/vlc.h>
-#include <vlc/decoder.h>
-#include <vlc/sout.h>
-#include <vlc/input.h>                  /* hmmm, just for INPUT_RATE_DEFAULT */
+#include <vlc_sout.h>
+#include <vlc_codec.h>
+#include <vlc_block.h>
+#include <vlc_input.h>                  /* hmmm, just for INPUT_RATE_DEFAULT */
 
 #include "vlc_bits.h"
 #include "vlc_block_helper.h"
@@ -223,7 +224,7 @@ static block_t *Packetize( decoder_t *p_dec, block_t **pp_block )
 
     if( pp_block == NULL || *pp_block == NULL ) return NULL;
 
-    if( (*pp_block)->i_flags & BLOCK_FLAG_DISCONTINUITY )
+    if( (*pp_block)->i_flags & (BLOCK_FLAG_DISCONTINUITY|BLOCK_FLAG_CORRUPTED) )
     {
         p_sys->i_state = STATE_NOSYNC;
         if( p_sys->p_frame ) block_ChainRelease( p_sys->p_frame );
@@ -334,8 +335,8 @@ static block_t *ParseMPEGBlock( decoder_t *p_dec, block_t *p_frag )
     decoder_sys_t *p_sys = p_dec->p_sys;
     block_t *p_pic = NULL;
 
-    if( p_frag->p_buffer[3] == 0xB0 || p_frag->p_buffer[3] == 0xB1 )
-    {
+    if( p_frag->p_buffer[3] == 0xB0 || p_frag->p_buffer[3] == 0xB1 || p_frag->p_buffer[3] == 0xB2 )
+    {   /* VOS and USERDATA */
 #if 0
         /* Remove VOS start/end code from the original stream */
         block_Release( p_frag );