|
| PSoundChannelPortAudio () |
|
| ~PSoundChannelPortAudio () |
|
bool | Open (const Params ¶ms) |
| Open the specified device for playing or recording. More...
|
|
bool | Setup () |
|
bool | Close () |
| Close the channel. More...
|
|
bool | IsOpen () const |
| Determine if the channel is currently open and read and write operations can be executed on it. More...
|
|
bool | Write (const void *buf, PINDEX len) |
| Low level write to the channel. More...
|
|
bool | Read (void *buf, PINDEX len) |
| Low level read from the channel. More...
|
|
bool | SetFormat (unsigned numChannels, unsigned sampleRate, unsigned bitsPerSample) |
| Set the format for play/record. More...
|
|
unsigned | GetChannels () const |
| Get the number of channels (mono/stereo) in the sound. More...
|
|
unsigned | GetSampleRate () const |
| Get the sample rate in samples per second. More...
|
|
unsigned | GetSampleSize () const |
| Get the sample size in bits per sample. More...
|
|
bool | SetBuffers (PINDEX size, PINDEX count) |
| Set the internal buffers for the sound channel I/O. More...
|
|
bool | GetBuffers (PINDEX &size, PINDEX &count) |
| Get the internal buffers for the sound channel I/O. More...
|
|
bool | PlaySound (const PSound &sound, bool wait) |
| Play a sound to the open device. More...
|
|
bool | PlayFile (const PFilePath &filename, bool wait) |
|
bool | HasPlayCompleted () |
| Indicate if the sound play begun with PlayBuffer() or PlayFile() has completed. More...
|
|
bool | WaitForPlayCompletion () |
| Block calling thread until the sound play begun with PlaySound() or PlayFile() has completed. More...
|
|
bool | RecordSound (PSound &sound) |
| Record into the sound object all of the buffer's of sound data. More...
|
|
bool | RecordFile (const PFilePath &filename) |
| Record into the platform dependent sound file all of the buffer's of sound data. More...
|
|
bool | StartRecording () |
| Start filling record buffers. More...
|
|
bool | IsRecordBufferFull () |
| Determine if a record buffer has been filled, so that the next Read() call will not block. More...
|
|
bool | AreAllRecordBuffersFull () |
| Determine if all of the record buffer allocated has been filled. More...
|
|
bool | WaitForRecordBufferFull () |
| Block the thread until a record buffer has been filled, so that the next Read() call will not block. More...
|
|
bool | WaitForAllRecordBuffersFull () |
| Block the thread until all of the record buffer allocated has been filled. More...
|
|
bool | Abort () |
| Abort the background playing/recording of the sound channel. More...
|
|
bool | SetVolume (unsigned newVal) |
| Set the volume of the play/read process. More...
|
|
bool | GetVolume (unsigned &devVol) |
| Get the volume of the play/read process. More...
|
|
bool | SetMute (bool mute) |
| Set the mute state of the play/read process. More...
|
|
bool | GetMute (bool &mute) |
| Get the mute state of the play/read process. More...
|
|
bool | OpenStream (unsigned numChannels, unsigned sampleRate, unsigned bitsPerSample) |
|
bool | StartStream () |
|
bool | StopStream () |
|
virtual PString | GetName () const |
| Get the name of the channel. More...
|
|
PString | GetErrorText (ErrorGroup group=NumErrorGroups) const |
| Get error message description. More...
|
|
| P_DECLARE_STREAMABLE_ENUM (Directions, Recorder, Player, Closed) |
|
| PSoundChannel () |
| Create a sound channel. More...
|
|
| PSoundChannel (const Params ¶ms) |
| Create a sound channel. More...
|
|
| PSoundChannel (const PString &device, Directions dir, unsigned numChannels=1, unsigned sampleRate=8000, unsigned bitsPerSample=16) |
|
bool | Open (const PString &device, Directions dir, unsigned numChannels=1, unsigned sampleRate=8000, unsigned bitsPerSample=16, PPluginManager *pluginMgr=NULL) |
|
Directions | GetDirection () const |
| Get the direction of the channel. More...
|
|
virtual const char * | GetDirectionText () const |
| Get text representing the direction of the channel. More...
|
|
virtual bool | PlayFile (const PFilePath &file, bool wait=true, unsigned volume=100) |
| Play a sound file to the open device. More...
|
|
| PIndirectChannel () |
| Create a new indirect channel without any channels to redirect to. More...
|
|
| ~PIndirectChannel () |
| Close the indirect channel, deleting read/write channels if desired. More...
|
|
Comparison | Compare (const PObject &obj) const |
| Determine if the two objects refer to the same indirect channel. More...
|
|
virtual P_INT_PTR | GetHandle () const |
| Get the OS specific handle for the PSoundChannel. More...
|
|
virtual int | ReadChar () |
| Read a single character from the channel. More...
|
|
virtual PBoolean | Shutdown (ShutdownValue option) |
| Close one or both of the data streams associated with a channel. More...
|
|
virtual bool | SetLocalEcho (bool localEcho) |
| Set local echo mode. More...
|
|
virtual PChannel * | GetBaseReadChannel () const |
| This function returns the eventual base channel for reading of a series of indirect channels provided by descendents of PIndirectChannel . More...
|
|
virtual PChannel * | GetBaseWriteChannel () const |
| This function returns the eventual base channel for writing of a series of indirect channels provided by descendents of PIndirectChannel . More...
|
|
virtual bool | CloseBaseReadChannel () |
| Close the base channel of channel indirection using PIndirectChannel. More...
|
|
virtual bool | CloseBaseWriteChannel () |
| Close the base channel of channel indirection using PIndirectChannel. More...
|
|
PBoolean | Open (PChannel &channel) |
| Set the channel for both read and write operations. More...
|
|
PBoolean | Open (PChannel *channel, PBoolean autoDelete=true) |
| Set the channel for both read and write operations. More...
|
|
PBoolean | Open (PChannel *readChannel, PChannel *writeChannel, PBoolean autoDeleteRead=true, PBoolean autoDeleteWrite=true) |
| Set the channel for both read and write operations. More...
|
|
PChannel * | Detach (ShutdownValue option=ShutdownReadAndWrite) |
| Detach without closing the read/write channel. More...
|
|
PChannel * | GetReadChannel () const |
| Get the channel used for read operations. More...
|
|
bool | SetReadChannel (PChannel *channel, bool autoDelete=true, bool closeExisting=false) |
| Set the channel for read operations. More...
|
|
PChannel * | GetWriteChannel () const |
| Get the channel used for write operations. More...
|
|
PBoolean | SetWriteChannel (PChannel *channel, bool autoDelete=true, bool closeExisting=false) |
| Set the channel for read operations. More...
|
|
template<class ChannelClass > |
ChannelClass * | FindChannel () |
| Locate a channel of a specific class in the indirect chain. More...
|
|
PBoolean | SetErrorValues (Errors errorCode, int osError, ErrorGroup group=LastGeneralError) |
| Set error values to those specified. More...
|
|
virtual PINDEX | HashFunction () const |
| Calculate a hash value for use in sets and dictionaries. More...
|
|
FILE * | FDOpen (const char *mode) |
| Re-open the device using the stdio library. More...
|
|
void | SetReadTimeout (const PTimeInterval &time) |
| Set the timeout for read operations. More...
|
|
PTimeInterval | GetReadTimeout () const |
| Get the timeout for read operations. More...
|
|
virtual PINDEX | GetLastReadCount () const |
| Get the number of bytes read by the last Read() call. More...
|
|
virtual PINDEX | SetLastReadCount (PINDEX count) |
|
PBoolean | ReadBlock (void *buf, PINDEX len) |
| Read len bytes into the buffer from the channel. More...
|
|
PString | ReadString (PINDEX len) |
| Read len character into a string from the channel. More...
|
|
void | SetWriteTimeout (const PTimeInterval &time) |
| Set the timeout for write operations to complete. More...
|
|
PTimeInterval | GetWriteTimeout () const |
| Get the timeout for write operations to complete. More...
|
|
virtual PBoolean | Write (const void *buf, PINDEX len, const void *) |
| Low level write to the channel with marker. More...
|
|
virtual PINDEX | GetLastWriteCount () const |
| Get the number of bytes written by the last Write() call. More...
|
|
virtual PINDEX | SetLastWriteCount (PINDEX count) |
|
PBoolean | WriteChar (int c) |
| Write a single character to the channel. More...
|
|
PBoolean | WriteString (const PString &str) |
| Write a string to the channel. More...
|
|
| ~PChannel () |
| Close down the channel. More...
|
|
Errors | GetErrorCode (ErrorGroup group=NumErrorGroups) const |
| Get normalised error code. More...
|
|
int | GetErrorNumber (ErrorGroup group=NumErrorGroups) const |
| Get OS errro code. More...
|
|
virtual bool | ReadAsync (AsyncContext &context) |
| Begin an asynchronous read from channel. More...
|
|
virtual void | OnReadComplete (AsyncContext &context) |
| User callback function for when a ReadAsync() call has completed or timed out. More...
|
|
virtual bool | WriteAsync (AsyncContext &context) |
| Begin an asynchronous write from channel. More...
|
|
virtual void | OnWriteComplete (AsyncContext &context) |
| User callback function for when a WriteAsync() call has completed or timed out. More...
|
|
virtual bool | FlowControl (const void *flowData) |
| Flow Control information Pass data to the channel for flowControl determination. More...
|
|
PBoolean | SetBufferSize (PINDEX newSize) |
| Set the iostream buffer size for reads and writes. More...
|
|
PBoolean | SendCommandString (const PString &command) |
| Send a command meta-string. More...
|
|
void | AbortCommandString () |
| Abort a command string that is in progress. More...
|
|
__inline unsigned | GetTraceContextIdentifier () const |
| Get PTRACE context identifier. More...
|
|
__inline void | SetTraceContextIdentifier (unsigned id) |
|
__inline void | SetTraceContextIdentifier (const PObject &obj) |
|
__inline void | SetTraceContextIdentifier (const PObject *obj) |
|
__inline void | CopyTraceContextIdentifier (PObject &obj) const |
|
__inline void | CopyTraceContextIdentifier (PObject *obj) const |
|
virtual | ~PObject () |
|
__inline const char * | GetClass () const |
|
__inline bool | IsClass (const char *name) const |
|
__inline const PObject * | PTraceObjectInstance () const |
|
virtual PObject * | Clone () const |
| Create a copy of the class on the heap. More...
|
|
template<class CLS > |
CLS * | CloneAs () const |
| As for Clone() but converts to specified type. More...
|
|
virtual Comparison | CompareObjectMemoryDirect (const PObject &obj) const |
| Determine the byte wise comparison of two objects. More...
|
|
bool | operator== (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator!= (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator< (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator> (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator<= (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator>= (const PObject &obj) const |
| Compare the two objects. More...
|
|
virtual void | PrintOn (ostream &strm) const |
| Output the contents of the object to the stream. More...
|
|
virtual void | ReadFrom (istream &strm) |
| Input the contents of the object from the stream. More...
|
|
|
static PStringArray | GetDeviceNames (PSoundChannel::Directions=Player) |
|
static PMutex & | GetInitMutex () |
|
static bool | Initialise () |
|
static PStringArray | GetDriverNames (PPluginManager *pluginMgr=NULL) |
| Get the list of available sound drivers (plug-ins) More...
|
|
static PStringArray | GetDriversDeviceNames (const PString &driverName, Directions direction, PPluginManager *pluginMgr=NULL) |
| Get sound devices that correspond to the specified driver name. More...
|
|
static PStringArray | GetDeviceNames (const PString &driverName, Directions direction, PPluginManager *pluginMgr=NULL) |
|
static PSoundChannel * | CreateChannel (const PString &driverName, PPluginManager *pluginMgr=NULL) |
| Create the sound channel that corresponds to the specified driver name. More...
|
|
static PSoundChannel * | CreateChannelByName (const PString &deviceName, Directions direction, PPluginManager *pluginMgr=NULL) |
|
static PSoundChannel * | CreateOpenedChannel (const Params ¶ms) |
| Create an opened sound channel that corresponds to the specified names. More...
|
|
static PSoundChannel * | CreateOpenedChannel (const PString &driverName, const PString &deviceName, Directions direction, unsigned numChannels=1, unsigned sampleRate=8000, unsigned bitsPerSample=16, PPluginManager *pluginMgr=NULL) |
|
static PString | GetDefaultDevice (Directions dir) |
| Get the name for the default sound devices/driver that is on this platform. More...
|
|
static PStringArray | GetDeviceNames (Directions direction, PPluginManager *pluginMgr=NULL) |
| Get the list of all devices name for the default sound devices/driver that is on this platform. More...
|
|
static const char * | GetDirectionText (Directions dir) |
| Get text representing the direction of a channel. More...
|
|
static PString | TestPlayer (const Params ¶ms, const PNotifier &progress=PNotifier(), const char *toneSpec=NULL) |
| Test the specified device for playing. More...
|
|
static PString | TestRecorder (const Params &recorderParams, const Params &playerParams, const PNotifier &progress=PNotifier(), unsigned seconds=5) |
| Test the specified device for playing. More...
|
|
static PString | GetErrorText (Errors lastError, int osError=0) |
| Get error message description. More...
|
|
static __inline void | CopyTraceContextIdentifier (PObject &to, const PObject &from) |
|
static __inline void | CopyTraceContextIdentifier (PObject &to, const PObject *from) |
|
static __inline void | CopyTraceContextIdentifier (PObject *to, const PObject &from) |
|
static __inline void | CopyTraceContextIdentifier (PObject *to, const PObject *from) |
|
static __inline const char * | Class () |
|
static __inline const PObject * | PTraceObjectInstance (const char *) |
|
static __inline const PObject * | PTraceObjectInstance (const PObject *obj) |
|
template<typename T > |
static Comparison | Compare2 (T v1, T v2) |
| Compare two types, returning Comparison type. More...
|
|
static Comparison | InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size) |
| Internal function caled from CompareObjectMemoryDirect() More...
|
|