+/* PROJECT: ReactOS sndrec32
+ * LICENSE: GPL - See COPYING in the top level directory
+ * FILE: base/applications/sndrec32/audio_resampler_acm.hpp
+ * PURPOSE: Windows ACM wrapper
+ * PROGRAMMERS: Marco Pagliaricci (irc: rendar)
+ */
+
+
#ifndef _AUDIORESAMPLERACM__H_
#define _AUDIORESAMPLERACM__H_
class audio_resampler_acm : public audio_receiver
{
- private:
- void init_( void );
+ private:
+ void init_( void );
- protected:
+ protected:
- HACMSTREAM acm_stream;
- ACMSTREAMHEADER acm_header;
- DWORD src_buflen;
- DWORD dst_buflen;
- bool stream_opened;
+ HACMSTREAM acm_stream;
+ ACMSTREAMHEADER acm_header;
+ DWORD src_buflen;
+ DWORD dst_buflen;
+ bool stream_opened;
- audio_format audfmt_in;
- audio_format audfmt_out;
+ audio_format audfmt_in;
+ audio_format audfmt_out;
- float buf_secs;
+ float buf_secs;
- WAVEFORMATEX wformat_src;
- WAVEFORMATEX wformat_dst;
+ WAVEFORMATEX wformat_src;
+ WAVEFORMATEX wformat_dst;
- public:
+ public:
- //
- // Ctors
- //
+ //
+ // Ctors
+ //
- audio_resampler_acm( audio_format fmt_in, audio_format fmt_out )
- : acm_stream( 0 ), src_buflen( 0 ), dst_buflen( 0 ),
- stream_opened( false ), audfmt_in( fmt_in ), audfmt_out( fmt_out ),
- buf_secs( _AUDIO_DEFAULT_BUFSECS )
+ audio_resampler_acm( audio_format fmt_in, audio_format fmt_out )
+ : acm_stream( 0 ), src_buflen( 0 ), dst_buflen( 0 ),
+ stream_opened( false ), audfmt_in( fmt_in ), audfmt_out( fmt_out ),
+ buf_secs( _AUDIO_DEFAULT_BUFSECS )
- {
-
+ {
+
- init_();
-
-
- }
+ init_();
+
+
+ }
-
-
- //
- // Dtor
- //
+
+
+ //
+ // Dtor
+ //
- ~audio_resampler_acm( void )
- { }
+ ~audio_resampler_acm( void )
+ { }
- //
- // Public functions
- //
+ //
+ // Public functions
+ //
- void open( void );
- void close( void );
+ void open( void );
+ void close( void );
- void audio_receive( unsigned char *, unsigned int );
+ void audio_receive( unsigned char *, unsigned int );