]> git.sesse.net Git - vlc/blobdiff - src/audio_output/input.c
Panoramix video filter by Cédric Cocquebert.
[vlc] / src / audio_output / input.c
index 555913fc49cdf00835879d5a127fd3202be15337..fca93e12c2c7edbbfefebe5723c3d6d4019c577e 100644 (file)
 /*****************************************************************************
  * Preamble
  *****************************************************************************/
+
+#include <vlc/vlc.h>
+
+#include <stdio.h>
 #include <stdlib.h>                            /* calloc(), malloc(), free() */
 #include <string.h>
 
-#include <vlc/vlc.h>
 #include <vlc/input.h>                 /* for input_thread_t and i_pts_delay */
 
 #ifdef HAVE_ALLOCA_H
@@ -166,14 +169,14 @@ int aout_InputNew( aout_instance_t * p_aout, aout_input_t * p_input )
 
         if( psz_parser == NULL || !*psz_parser )
             continue;
-        
+
         while( psz_parser && *psz_parser )
         {
             aout_filter_t * p_filter = NULL;
 
             if( p_input->i_nb_filters >= AOUT_MAX_FILTERS )
             {
-                msg_Dbg( p_aout, "max filter reached (%d)", AOUT_MAX_FILTERS );
+                msg_Dbg( p_aout, "max filters reached (%d)", AOUT_MAX_FILTERS );
                 break;
             }
 
@@ -210,7 +213,7 @@ int aout_InputNew( aout_instance_t * p_aout, aout_input_t * p_input )
                         sizeof(audio_sample_format_t) );
                 memcpy( &p_filter->output, &chain_output_format,
                         sizeof(audio_sample_format_t) );
-                        
+
                 p_filter->p_module = module_Need( p_filter, "visualization",
                                                   psz_parser, VLC_TRUE );
             }
@@ -235,7 +238,8 @@ int aout_InputNew( aout_instance_t * p_aout, aout_input_t * p_input )
                     {
                         aout_FormatPrepare( &p_filter->input );
                         aout_FormatPrepare( &p_filter->output );
-                        p_filter->p_module = module_Need( p_filter, "audio filter",
+                        p_filter->p_module = module_Need( p_filter,
+                                                          "audio filter",
                                                           psz_parser, VLC_TRUE );
                     }
                     /* try visual filters */
@@ -245,7 +249,8 @@ int aout_InputNew( aout_instance_t * p_aout, aout_input_t * p_input )
                                 sizeof(audio_sample_format_t) );
                         memcpy( &p_filter->output, &chain_output_format,
                                 sizeof(audio_sample_format_t) );
-                        p_filter->p_module = module_Need( p_filter, "visualization",
+                        p_filter->p_module = module_Need( p_filter,
+                                                          "visualization",
                                                           psz_parser, VLC_TRUE );
                     }
                 }
@@ -447,8 +452,9 @@ int aout_InputPlay( aout_instance_t * p_aout, aout_input_t * p_input,
         start_date = 0;
         if( p_input->p_input_thread )
         {
-            stats_UpdateInteger( p_input->p_input_thread, STATS_LOST_ABUFFERS, 1,
-                                 NULL );
+            vlc_mutex_lock( &p_input->p_input_thread->counters.counters_lock);
+            stats_UpdateInteger( p_aout, p_input->p_input_thread->counters.p_lost_abuffers, 1, NULL );
+            vlc_mutex_unlock( &p_input->p_input_thread->counters.counters_lock);
         }
     }
 
@@ -460,8 +466,9 @@ int aout_InputPlay( aout_instance_t * p_aout, aout_input_t * p_input,
                   mdate() - p_buffer->start_date );
         if( p_input->p_input_thread )
         {
-            stats_UpdateInteger( p_input->p_input_thread, STATS_LOST_ABUFFERS, 1,
-                                 NULL );
+            vlc_mutex_lock( &p_input->p_input_thread->counters.counters_lock);
+            stats_UpdateInteger( p_aout, p_input->p_input_thread->counters.p_lost_abuffers, 1, NULL );
+            vlc_mutex_unlock( &p_input->p_input_thread->counters.counters_lock);
         }
         aout_BufferFree( p_buffer );
         p_input->i_resampling_type = AOUT_RESAMPLING_NONE;
@@ -502,8 +509,9 @@ int aout_InputPlay( aout_instance_t * p_aout, aout_input_t * p_input,
         aout_BufferFree( p_buffer );
         if( p_input->p_input_thread )
         {
-            stats_UpdateInteger( p_input->p_input_thread, STATS_LOST_ABUFFERS, 1,
-                                 NULL );
+            vlc_mutex_lock( &p_input->p_input_thread->counters.counters_lock);
+            stats_UpdateInteger( p_aout, p_input->p_input_thread->counters.p_lost_abuffers, 1, NULL );
+            vlc_mutex_unlock( &p_input->p_input_thread->counters.counters_lock);
         }
         return 0;
     }