⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sound_esd.h

📁 安装 H323需要的pwlib库
💻 H
字号:
#include <ptlib.h>#include <ptlib/socket.h>#include <ptlib/plugin.h>//#if !P_USE_INLINES//#include <ptlib/contain.inl>//#endif#ifdef P_LINUX#include <sys/soundcard.h>#endif#ifdef P_FREEBSD#if P_FREEBSD >= 500000#include <sys/soundcard.h>#else#include <machine/soundcard.h>#endif#endif#if defined(P_OPENBSD) || defined(P_NETBSD)#include <soundcard.h>#endifclass PSoundChannelESD: public PSoundChannel{ public:    PSoundChannelESD();    void Construct();    PSoundChannelESD(const PString &device,                     PSoundChannel::Directions dir,                     unsigned numChannels,                     unsigned sampleRate,		     unsigned bitsPerSample);    ~PSoundChannelESD();    static PStringArray GetDeviceNames(PSoundChannel::Directions = Player);    static PString GetDefaultDevice(PSoundChannel::Directions);    BOOL Open(const PString & _device,              Directions _dir,              unsigned _numChannels,              unsigned _sampleRate,              unsigned _bitsPerSample);    BOOL Setup();    BOOL Close();    BOOL IsOpen() const;    BOOL Write(const void * buf, PINDEX len);    BOOL Read(void * buf, PINDEX len);    BOOL SetFormat(unsigned numChannels,                   unsigned sampleRate,                   unsigned bitsPerSample);    unsigned GetChannels() const;    unsigned GetSampleRate() const;    unsigned GetSampleSize() const;    BOOL SetBuffers(PINDEX size, PINDEX count);    BOOL GetBuffers(PINDEX & size, PINDEX & count);    BOOL PlaySound(const PSound & sound, BOOL wait);    BOOL PlayFile(const PFilePath & filename, BOOL wait);    BOOL HasPlayCompleted();    BOOL WaitForPlayCompletion();    BOOL RecordSound(PSound & sound);    BOOL RecordFile(const PFilePath & filename);    BOOL StartRecording();    BOOL IsRecordBufferFull();    BOOL AreAllRecordBuffersFull();    BOOL WaitForRecordBufferFull();    BOOL WaitForAllRecordBuffersFull();    BOOL Abort();    BOOL SetVolume(unsigned newVal);    BOOL GetVolume(unsigned &devVol);  protected:    unsigned mNumChannels;    unsigned mSampleRate;    unsigned mBitsPerSample;    unsigned actualSampleRate;    Directions direction;    PString device;    BOOL isInitialised;};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -