* modules/audio_filter/resampler/bandlimited.c: small bug-fixes.
authorGildas Bazin <gbazin@videolan.org>
Tue, 4 Mar 2003 22:08:33 +0000 (22:08 +0000)
committerGildas Bazin <gbazin@videolan.org>
Tue, 4 Mar 2003 22:08:33 +0000 (22:08 +0000)
* NEWS: added a note for the fixed MSVC project files.

NEWS
modules/audio_filter/resampler/bandlimited.c

diff --git a/NEWS b/NEWS
index b5179a9..d16c82b 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
-$Id: NEWS,v 1.26 2003/03/04 21:54:03 hartman Exp $
+$Id: NEWS,v 1.27 2003/03/04 22:08:33 gbazin Exp $
 
 Changes between 0.5.1a and 0.5.2:
 --------------------------------
@@ -17,10 +17,10 @@ UNIX ports:
  * fixed the GNU-pth support.
 
 Win32 port:
- * multi-channel audio and S/PDIF support for both the DirectX
-   and Waveout plugins.
+ * multi-channel audio and S/PDIF support for both the DirectX and Waveout plugins.
  * localization support via gettext is now fully working.
  * rc interface is now fully useable.
+ * fixed the MSVC project files generation.
 
 Mac OS X port:
  * several fixes for multi channel audio devices. AC3 over SPDIF with M-Audio Sonica Theater still does not work. this is most likely a driver bug and has been reported to M-Audio. ( Delta, Griffin iMate and MOTU firewire devices should work).
index e700c0f..964f528 100644 (file)
@@ -2,7 +2,7 @@
  * bandlimited.c : bandlimited interpolation resampler
  *****************************************************************************
  * Copyright (C) 2002 VideoLAN
- * $Id: bandlimited.c,v 1.2 2003/03/04 19:28:39 gbazin Exp $
+ * $Id: bandlimited.c,v 1.3 2003/03/04 22:08:33 gbazin Exp $
  *
  * Authors: Gildas Bazin <gbazin@netcourrier.com>
  *
@@ -179,21 +179,18 @@ static void DoWork( aout_instance_t * p_aout, aout_filter_t * p_filter,
                          p_in_buf->p_buffer, p_in_buf->i_nb_bytes );
                 memcpy( p_in_buf->p_buffer, p_filter->p_sys->p_buf +
                         i_nb_channels * p_filter->p_sys->i_old_wing,
-                        i_nb_channels * p_filter->p_sys->i_old_wing *
+                        p_filter->p_sys->i_old_wing *
                         p_filter->input.i_bytes_per_frame );
 
                 p_out_buf->i_nb_samples = p_in_buf->i_nb_samples +
                     p_filter->p_sys->i_old_wing;
 
-                aout_DateSet( &p_filter->p_sys->end_date,
-                              p_in_buf->start_date );
-
                 p_out_buf->end_date =
                     aout_DateIncrement( &p_filter->p_sys->end_date,
                                         p_out_buf->i_nb_samples );
 
                 p_out_buf->i_nb_bytes = p_out_buf->i_nb_samples *
-                    i_nb_channels * sizeof(int32_t);
+                    p_filter->input.i_bytes_per_frame;
             }
         }
         p_filter->b_continuity = VLC_FALSE;
@@ -207,7 +204,7 @@ static void DoWork( aout_instance_t * p_aout, aout_filter_t * p_filter,
         p_filter->b_continuity = VLC_TRUE;
         p_filter->p_sys->i_remainder = 0;
         aout_DateInit( &p_filter->p_sys->end_date, p_filter->output.i_rate );
-
+        aout_DateSet( &p_filter->p_sys->end_date, p_in_buf->start_date );
         p_filter->p_sys->i_old_rate   = p_filter->input.i_rate;
         p_filter->p_sys->d_old_factor = 1;
         p_filter->p_sys->i_old_wing   = 0;
@@ -420,12 +417,6 @@ static void DoWork( aout_instance_t * p_aout, aout_filter_t * p_filter,
     p_out_buf->i_nb_samples = i_out;
     p_out_buf->start_date = p_in_buf->start_date;
 
-    if( p_in_buf->start_date !=
-        aout_DateGet( &p_filter->p_sys->end_date ) )
-    {
-        aout_DateSet( &p_filter->p_sys->end_date, p_in_buf->start_date );
-    }
-
     p_out_buf->end_date = aout_DateIncrement( &p_filter->p_sys->end_date,
                                               p_out_buf->i_nb_samples );