]> git.sesse.net Git - vlc/commitdiff
. initialisation propre de la synchro
authorSam Hocevar <sam@videolan.org>
Wed, 19 Jan 2000 02:49:34 +0000 (02:49 +0000)
committerSam Hocevar <sam@videolan.org>
Wed, 19 Jan 2000 02:49:34 +0000 (02:49 +0000)
 . messages de debug � la con pour essayer de voir o� j'en suis

src/video_parser/video_parser.c
src/video_parser/vpar_synchro.c

index ff8b35a9a8096bf0496e28f27cbb92b83d2ae81f..2db1897c50d86c298767e0f5bc595c6585f2826a 100644 (file)
@@ -96,6 +96,29 @@ vpar_thread_t * vpar_CreateThread( /* video_cfg_t *p_cfg, */ input_thread_t *p_i
     p_vpar->bit_stream.fifo.buffer = 0;
     p_vpar->bit_stream.fifo.i_available = 0;
 
+    /*
+     * Initialize the synchro properties
+     */
+    p_vpar->synchro.modulo = 0;
+    /* assume there were about 3 P and 4 B images between I's */
+    p_vpar->synchro.current_p_count = 1;
+    p_vpar->synchro.p_count_predict = 3;
+    p_vpar->synchro.current_b_count = 1;
+    p_vpar->synchro.b_count_predict = 4;
+    {
+        int i;
+        for( i=0; i<6; i++)
+        {
+            p_vpar->synchro.tab_p[i].mean = 3;
+            p_vpar->synchro.tab_p[i].deviation = 1;
+            p_vpar->synchro.tab_p[i].count = 0;
+
+            p_vpar->synchro.tab_b[i].mean = 4;
+            p_vpar->synchro.tab_b[i].deviation = 1;
+            p_vpar->synchro.tab_b[i].count = 0;
+        }
+    }
+
 /* FIXME !!!! */
 p_vpar->p_vout = p_main->p_intf->p_vout;
 
index e14e4707f8ee91fbddb9e7cf3c9cfadd12d37862..c2038d1f8246ceea4217cad55feb9fb3a00a6665 100644 (file)
@@ -107,6 +107,7 @@ void vpar_SynchroUpdateStructures( vpar_thread_t * p_vpar,
             }
 
            p_vpar->synchro.p_count_predict = predict;
+            p_vpar->synchro.current_p_count = 0;
 
 
             /* update all the structures for B images */
@@ -134,6 +135,7 @@ void vpar_SynchroUpdateStructures( vpar_thread_t * p_vpar,
             }
 
            p_vpar->synchro.b_count_predict = predict;
+            p_vpar->synchro.current_b_count = 0;
 
 
             break;
@@ -150,6 +152,9 @@ boolean_t vpar_SynchroChoose( vpar_thread_t * p_vpar, int i_coding_type,
 {
 //    return( 1 );
 //    return( i_coding_type == I_CODING_TYPE || i_coding_type == P_CODING_TYPE );
+    intf_DbgMsg("vpar debug: synchro image %i - modulo is %i\n", i_coding_type, p_vpar->synchro.modulo);
+    intf_DbgMsg("vpar debug: synchro predict P %e - predict B %e\n", p_vpar->synchro.p_count_predict, p_vpar->synchro.b_count_predict);
+
     return( i_coding_type == I_CODING_TYPE );
 }