|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectptolemy.kernel.util.NamedObj
ptolemy.kernel.InstantiableNamedObj
ptolemy.kernel.Entity
ptolemy.kernel.ComponentEntity
ptolemy.actor.AtomicActor
ptolemy.actor.TypedAtomicActor
ptolemy.actor.lib.javasound.SoundActor
public class SoundActor
This actor forms a base class for actors that interact with real-time sound through sampled data. This replaces an older and more limited actor LiveSoundActor.
Note: Requires Java 5.0.
LiveSound
,
AudioPlayer
,
AudioCapture
,
Serialized Form
Red (chf) |
Yellow (eal) |
Nested Class Summary |
---|
Nested classes/interfaces inherited from class ptolemy.kernel.Entity |
---|
Entity.ContainedObjectsIterator |
Field Summary | |
---|---|
protected int |
_bufferSize
The requested buffer size. |
protected int |
_bytesPerSample
Value of the bytesPerSample parameter. |
protected int |
_channels
The number of channels. |
protected boolean |
_isExecuting
True if this actor is executing. |
private static double |
_maxSample
Cashed value of the maximum integer value, default for 16 bits. |
protected int |
_sampleRate
The value of the sampleRate parameter. |
SharedParameter |
bufferSize
The requested buffer size for transferring samples. |
SharedParameter |
bytesPerSample
The number of bytes per sample. |
SharedParameter |
channels
The number of audio channels. |
SharedParameter |
sampleRate
The sample rate in samples per second. |
Fields inherited from class ptolemy.actor.AtomicActor |
---|
_actorFiringListeners, _initializables, _notifyingActorFiring, _stopRequested |
Fields inherited from class ptolemy.kernel.util.NamedObj |
---|
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS |
Fields inherited from interface ptolemy.actor.Executable |
---|
COMPLETED, NOT_READY, STOP_ITERATING |
Constructor Summary | |
---|---|
SoundActor(CompositeEntity container,
java.lang.String name)
Construct an actor with the given container and name. |
Method Summary | |
---|---|
protected void |
_doubleArrayToByteArray(double[][] doubleArray,
byte[] playbackData)
Convert a double array of audio samples into a byte array of audio samples in linear signed PCM big endian format. |
void |
attributeChanged(Attribute attribute)
Handle change requests for all parameters. |
void |
initialize()
Initialize this actor. |
void |
wrapup()
Wrapup execution. |
Methods inherited from class ptolemy.actor.TypedAtomicActor |
---|
_addPort, _fireAt, _fireAt, attributeTypeChanged, clone, newPort, typeConstraintList, typeConstraints |
Methods inherited from class ptolemy.kernel.ComponentEntity |
---|
_adjustDeferrals, _checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, isAtomic, isOpaque, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, propagateExistence, setName |
Methods inherited from class ptolemy.kernel.Entity |
---|
_description, _exportMoMLContents, _removePort, _validateSettables, connectedPortList, connectedPorts, containedObjectsIterator, getAttribute, getPort, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts, setClassDefinition, uniqueName |
Methods inherited from class ptolemy.kernel.InstantiableNamedObj |
---|
_setParent, exportMoML, getChildren, getElementName, getParent, getPrototypeList, isClassDefinition, isWithinClassDefinition |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface ptolemy.actor.Actor |
---|
createReceivers, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, newReceiver, outputPortList |
Methods inherited from interface ptolemy.actor.Executable |
---|
fire, isFireFunctional, isStrict, iterate, postfire, prefire, stop, stopFire, terminate |
Methods inherited from interface ptolemy.actor.Initializable |
---|
addInitializable, preinitialize, removeInitializable |
Methods inherited from interface ptolemy.kernel.util.Nameable |
---|
description, getContainer, getDisplayName, getFullName, getName, getName, setName |
Methods inherited from interface ptolemy.kernel.util.Derivable |
---|
getDerivedLevel, getDerivedList, propagateValue |
Field Detail |
---|
public SharedParameter bytesPerSample
public SharedParameter bufferSize
public SharedParameter channels
public SharedParameter sampleRate
protected int _bytesPerSample
protected int _bufferSize
protected int _channels
private static double _maxSample
protected int _sampleRate
protected boolean _isExecuting
Constructor Detail |
---|
public SoundActor(CompositeEntity container, java.lang.String name) throws IllegalActionException, NameDuplicationException
container
- The container.name
- The name of this actor.
IllegalActionException
- If the actor cannot be contained
by the proposed container.
NameDuplicationException
- If the container already has an
actor with this name.Method Detail |
---|
public void attributeChanged(Attribute attribute) throws IllegalActionException
attributeChanged
in class NamedObj
attribute
- The attribute that changed.
IllegalActionException
- If the change is not
allowed.public void initialize() throws IllegalActionException
initialize
in interface Initializable
initialize
in class AtomicActor
IllegalActionException
- If there is a problem
beginning audio playback.public void wrapup() throws IllegalActionException
wrapup
in interface Initializable
wrapup
in class AtomicActor
IllegalActionException
- May be thrown by derived classes.protected void _doubleArrayToByteArray(double[][] doubleArray, byte[] playbackData) throws java.lang.IllegalArgumentException
doubleArray
- Two dimensional array holding audio samples.
For each channel, m, doubleArray[m] is a single dimensional
array containing samples for channel m. All channels are
required to have the same number of samples, but this is
not checked.playbackData
- An array into which to put the results, which
have bytes representing linear signed PCM big endian formatted
audio data.
java.lang.IllegalArgumentException
- Not thrown in this base class.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |