📄 filewvout.h
字号:
/***************************************************//*! \class FileWvOut \brief STK audio file output class. This class inherits from WvOut. It provides a "tick-level" interface to the FileWrite class. FileWvOut writes samples to an audio file and supports multi-channel data. It is important to distinguish the tick() methods, which output single samples to all channels in a sample frame, from the tickFrame() methods, which take a pointer or reference to multi-channel sample frame data. See the FileWrite class for a description of the supported audio file formats. Currently, FileWvOut is non-interpolating and the output rate is always Stk::sampleRate(). by Perry R. Cook and Gary P. Scavone, 1995 - 2005.*//***************************************************/#ifndef STK_FILEWVOUT_H#define STK_FILEWVOUT_H#include "WvOut.h"//#if !defined(SYMBIAN)#include "FileWrite.h"class FileWvOut : public WvOut{ public: //! Default constructor with optional output buffer size argument. /*! The output buffer size defines the number of frames that are accumulated between writes to disk. */ FileWvOut( unsigned int bufferFrames = 1024 ); //! Overloaded constructor used to specify a file name, type, and data format with this object. /*! An StkError is thrown for invalid argument values or if an error occurs when initializing the output file. */#if !defined(SYMBIAN) FileWvOut( std::string fileName,#else FileWvOut( const char *fileName,#endif unsigned int nChannels = 1, FileWrite::FILE_TYPE type = FileWrite::FILE_WAV, Stk::StkFormat format = STK_SINT16, unsigned int bufferFrames = 1024 ); //! Class destructor. virtual ~FileWvOut(); //! Open a new file with the specified parameters. /*! If a file was previously open, it will be closed. An StkError will be thrown if any of the specified arguments are invalid or a file error occurs during opening. */#if !defined(SYMBIAN) void openFile( std::string fileName,#else void openFile( const char *fileName,#endif unsigned int nChannels, FileWrite::FILE_TYPE type, Stk::StkFormat format ); //! Close a file if one is open. /*! Any data remaining in the internal buffer will be written to the file before closing. */ void closeFile( void ); protected: void computeSample( const StkFloat sample ); void computeFrames( const StkFrames& frames ); void incrementFrame( void ); FileWrite file_; unsigned int bufferFrames_; unsigned int bufferIndex_; unsigned int iData_;};//#endif // SYMBIAN#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -