X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=wdq2wav.h;h=1b36d5016cdd6b417fa511d5a54d62d0d6a9d7e3;hb=cc76f2cc78bc6ddcc446bc0b6cf08c6e5e7808ea;hp=e4d261ff51124798d1472fe657104bf056073e65;hpb=ab98a73ebbbb8f085fe5d0a8b3967bc4749f8dff;p=wdq2wav.git diff --git a/wdq2wav.h b/wdq2wav.h index e4d261f..1b36d50 100644 --- a/wdq2wav.h +++ b/wdq2wav.h @@ -8,7 +8,7 @@ ** ** Copyright (c) 2003 Kevin Rosenberg ** -** $Id: wdq2wav.h,v 1.5 2003/01/21 07:37:13 kevin Exp $ +** $Id: wdq2wav.h,v 1.10 2003/02/12 07:24:32 kevin Exp $ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -24,6 +24,7 @@ ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ******************************************************************************/ +#include #include #include #include @@ -31,8 +32,34 @@ #include #include #include -#include +#include +#include +#ifdef WIN32 +#include #include +#else +#include +#endif + +#ifdef LINUX +#include +#if __BYTE_ORDER == __BIG_ENDIAN +#define WORDS_BIG_ENDIAN 1 +#endif +#endif + +extern const char* g_szIdStr; +extern bool g_quiet; +extern bool g_verbose; +extern bool g_debug; + +#define MAX_INPUT_STR 256 + +void error_msg (const char *msg); +void info_msg (const char *msg); +void info_msg_sans_newline (const char *msg); + +bool wdq2wav (const char* wdq_fname, const int channel, const char *wav_fname, bool play); class WindaqFile { @@ -45,14 +72,14 @@ public: bool m_valid; std::string m_error; int m_fd; - unsigned int m_nChannels; + int m_nChannels; unsigned int m_nSamples; double m_sample_rate; unsigned int m_sr_denom, m_sr_numer; - unsigned int m_nHeader_bytes, m_channel_offset, m_nBytes_channel_header; + unsigned short int m_nHeader_bytes, m_channel_offset, m_nBytes_channel_header; unsigned int m_nData_bytes; - unsigned long int m_time_acq_start; - unsigned long int m_time_acq_stop; + unsigned int m_time_acq_start; + unsigned int m_time_acq_stop; }; class WindaqChannel @@ -90,9 +117,17 @@ class WavFile unsigned int m_nBitsPerSample; unsigned int m_nBytesPerSample; signed short int* m_data; + unsigned long int m_nHeaderBytes; + unsigned long int m_nDataBytes; + unsigned long int m_nFileBytes; WavFile (WindaqChannel& wdq_channel, const char* fname); ~WavFile (); bool WriteFile (); + + bool Play(); + + private: + bool fill_header(); };