H3D API
2.4.1
|
AudioFileReader uses the Audio File Library ( http://www.68k.org/~michael/audiofile/ ) to read sound data. More...
#include <H3D/AudioFileReader.h>
Public Member Functions | |
AudioFileReader () | |
Constructor. | |
~AudioFileReader () | |
Destructor. | |
unsigned int | load (const string &_url) |
Load a sound file from the given url that will be used to generate PCM data. | |
virtual void | reset () |
Reset the stream to the beginning of the sound stream. | |
virtual unsigned int | totalDataSize () |
Returns the total size of the PCM data of the current stream. | |
virtual unsigned int | nrChannels () |
Returns the number of channels per second for the current PCM data stream. | |
virtual unsigned int | samplesPerSecond () |
Returns the number of samples per second for the current PCM data stream. | |
virtual unsigned int | bitsPerSample () |
Returns the number of bits for a sample. | |
virtual H3DTime | duration () |
The duration in seconds for the the PCM data. | |
virtual unsigned int | read (char *buffer, unsigned int size) |
Read PCM data from the stream into the buffer. More... | |
![]() | |
Node () | |
Constructor. | |
virtual Node * | clone (bool deepCopy=true, DeepCopyMap *deepCopyMap=NULL) |
Returns a new instance of this node type with the same state as this one. More... | |
virtual | ~Node () |
Destructor. | |
X3DPrototypeInstance * | getProtoInstanceParent () |
If this node is the root node in the proto body of a X3DPrototypeInstance then this will return that node. More... | |
void | setProtoInstanceParent (X3DPrototypeInstance *p) |
Set the X3DPrototypeInstance this node is the the root node if applicaple. | |
virtual void | render () |
the render() function is used for the depth-first rendering traversal of the scene-graph. More... | |
virtual void | traverseSG (TraverseInfo &ti) |
traverseSG is called once per scenegraph loop on the scene in order to traverse the scenegraph. More... | |
virtual bool | lineIntersect (const Vec3f &from, const Vec3f &to, LineIntersectResult &result) |
Detect intersection between a line segment and the Node. More... | |
virtual void | closestPoint (const Vec3f &p, NodeIntersectResult &result) |
Find closest point on Node to p. More... | |
virtual bool | movingSphereIntersect (H3DFloat radius, const Vec3f &from, const Vec3f &to, NodeIntersectResult &result) |
Detect collision between a moving sphere and the Node. More... | |
virtual string | defaultXMLContainerField () |
Returns the default xml containerField attribute value. More... | |
virtual Field * | getField (const string &_name) const |
return a pointer to the field specified by name within this instance | |
int | addDestructCallback (void(*func)(Node *, void *), void *args) |
Add a callback function to be run on destruction of node. More... | |
int | removeDestructCallback (void(*func)(Node *, void *), void *args) |
Add a callback function to be run on destruction of node. More... | |
Static Public Member Functions | |
static bool | supportsFileType (const string &url) |
Returns true if the node supports the filetype of the file specified by url. | |
![]() | |
static H3DSoundFileNode * | getSupportedFileReader (const string &url) |
Given an url to a file, it returns an instance of a H3DSoundFileNode class that can handle that file type. More... | |
static void | registerFileReader (const string &name, CreateNodeFunc create, SupportsFileFunc supports) |
Register a file reader that can then be returned by getSupportedFileReader(). More... | |
static void | registerFileReader (const FileReaderRegistration &fr) |
Register a file reader that can then be returned by getSupportedFileReader(). | |
![]() | |
static unsigned int | nrNodesAlive () |
Returns the nr of nodes currently alive, i.e. nodes created but not destructed. | |
static int | nrNodesCreated () |
Returns the number of nodes created in total since the start of the program. | |
Static Public Attributes | |
static H3DNodeDatabase | database |
The H3DNodeDatabase for this node. | |
static FileReaderRegistration | reader_registration |
Register this node to the H3DSoundFileNodes available. | |
Additional Inherited Members | |
![]() | |
typedef bool(* | SupportsFileFunc) (const string &url) |
Function ptr type for | |
![]() | |
typedef std::map< Node *, Node * > | DeepCopyMap |
A map type used during a deep copy clone() to map from original nodes to cloned nodes. | |
![]() | |
void | cloneFieldValue (Field &_from, Field &_to, bool deepCopy, DeepCopyMap &deepCopyMap) |
A helper function for the clone() method. More... | |
![]() | |
static Node * | getClonedInstance (Node *original, bool deepCopy, DeepCopyMap &deepCopyMap) |
A helper function for nodes that implement clone() More... | |
AudioFileReader uses the Audio File Library ( http://www.68k.org/~michael/audiofile/ ) to read sound data.
It supports AIFF/AIFF-C, WAVE, NeXT/Sun .snd/.au, Berkeley/IRCAM/CARL Sound File, Audio Visual Research, Amiga IFF/8SVX, and NIST SPHERE. Supported compression formats are currently G.711 mu-law and A-law and IMA and MS ADPCM.
|
virtual |
Read PCM data from the stream into the buffer.
buffer | A buffer to write data into. |
size | The number of bytes of data to read. |
Implements H3D::H3DSoundStreamNode.
References nrChannels().