]> git.sesse.net Git - vlc/blobdiff - src/video_parser/video_parser.c
Modification du decoder_fifo : le GetByte devrait etre un chouilla plus rapide,
[vlc] / src / video_parser / video_parser.c
index 1bc525264cdb954a6f4e39918f4805ab295c43fa..97c50c1abfb1a76ba700c8bbdb86fd1b93bf5474 100644 (file)
@@ -181,7 +181,8 @@ static int InitThread( vpar_thread_t *p_vpar )
         vlc_cond_wait( &p_vpar->fifo.data_wait, &p_vpar->fifo.data_lock );
     }
     p_vpar->bit_stream.p_ts = DECODER_FIFO_START( p_vpar->fifo )->p_first_ts;
-    p_vpar->bit_stream.i_byte = p_vpar->bit_stream.p_ts->i_payload_start;
+    p_vpar->bit_stream.p_byte = p_vpar->bit_stream.p_ts->buffer + p_vpar->bit_stream.p_ts->i_payload_start;
+    p_vpar->bit_stream.p_end = p_vpar->bit_stream.p_ts->buffer + p_vpar->bit_stream.p_ts->i_payload_end;
     vlc_mutex_unlock( &p_vpar->fifo.data_lock );
 
     /* Initialize parsing data */
@@ -292,7 +293,9 @@ static int InitThread( vpar_thread_t *p_vpar )
         p_vpar->synchro.tab_b[i_dummy].mean = 6;
         p_vpar->synchro.tab_b[i_dummy].deviation = .5;
     }
-#else
+#endif
+
+#ifdef MEUUH_SYNCHRO
     p_vpar->synchro.kludge_level = 5;
     p_vpar->synchro.kludge_nbp = p_vpar->synchro.kludge_p = 5;
     p_vpar->synchro.kludge_nbb = p_vpar->synchro.kludge_b = 6;
@@ -300,6 +303,17 @@ static int InitThread( vpar_thread_t *p_vpar )
     p_vpar->synchro.kludge_prevdate = 0;
 #endif
 
+#ifdef POLUX_SYNCHRO
+    p_vpar->synchro.i_current_frame_date = 0;
+    p_vpar->synchro.i_backward_frame_date = 0;
+    
+    p_vpar->synchro.r_p_average = p_vpar->synchro.i_p_nb = 6;
+    p_vpar->synchro.r_b_average = p_vpar->synchro.i_b_nb = 6;
+    p_vpar->synchro.i_p_count = 0;
+    p_vpar->synchro.i_b_count = 0;
+    p_vpar->synchro.i_i_count = 0;
+#endif
+    
     /* Mark thread as running and return */
     intf_DbgMsg("vpar debug: InitThread(%p) succeeded\n", p_vpar);
     return( 0 );