Interface AudioClip

All Superinterfaces:
X3DChildNode, X3DNode, X3DSoundSourceNode, X3DTimeDependentNode, X3DUrlObject
All Known Implementing Classes:
AudioClipObject

public interface AudioClip
extends X3DSoundSourceNode, X3DUrlObject
AudioClip provides audio data used by parent Sound nodes.

X3D node tooltip: [X3DSoundSourceNode,X3DUrlObject] AudioClip provides audio data used by parent Sound nodes.
  • Hint: add a parent Sound node first.
  • Hint: utilize DEF/USE references for multiple copies of a single AudioClip sound file in order to avoid multiple-download delays, reduce memory requirements, and maintain synchronization.
  • Hint: authors can provide multiple audio formats for the same audio track, with each source address listed separately in the url field.
  • Hint: player support for .wav format is required, .midi format is recommended, other formats are optional.
  • Hint: X3D Scene Authoring Hints:Audio http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Audio
  • Hint: apply containerField='watchList' when parent node is LoadSensor.

Package hint: This interface is defined by the X3D Java Language Binding Specification for the Scene Authoring Interface (SAI).
See Also:
SAI Java Specification: TODO, X3D Abstract Specification: AudioClip, X3D Tooltips: AudioClip, X3D Scene Authoring Hints: Audio
  • Method Summary

    Modifier and Type Method Description
    java.lang.String getDescription()
    Provide String value from inputOutput SFString field named description.
    double getDuration()
    Provide double value in seconds within allowed range of [-1,infinity) from outputOnly SFTime field named duration_changed.
    double getElapsedTime()
    Provide double value in seconds within allowed range of [0,infinity) from outputOnly SFTime field named elapsedTime.
    boolean getIsActive()
    Provide boolean value from outputOnly SFBool field named isActive.
    boolean getIsPaused()
    Provide boolean value from outputOnly SFBool field named isPaused.
    boolean getLoop()
    Provide boolean value from inputOutput SFBool field named loop.
    X3DMetadataObject getMetadata()
    Provide X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.
    double getPauseTime()
    Provide double value in seconds from inputOutput SFTime field named pauseTime.
    float getPitch()
    Provide float value within allowed range of (0,infinity) from inputOutput SFFloat field named pitch.
    double getResumeTime()
    Provide double value in seconds from inputOutput SFTime field named resumeTime.
    double getStartTime()
    Provide double value in seconds from inputOutput SFTime field named startTime.
    double getStopTime()
    Provide double value in seconds from inputOutput SFTime field named stopTime.
    java.lang.String[] getUrl()
    Provide array of String results from inputOutput MFString field named url.
    AudioClip setDescription​(java.lang.String newValue)
    Accessor method to assign String value to inputOutput SFString field named description.
    AudioClip setLoop​(boolean newValue)
    Accessor method to assign boolean value to inputOutput SFBool field named loop.
    AudioClip setMetadata​(X3DMetadataObject newValue)
    Accessor method to assign X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
    AudioClip setPauseTime​(double newValue)
    Accessor method to assign double value in seconds to inputOutput SFTime field named pauseTime.
    AudioClip setPitch​(float newValue)
    Accessor method to assign float value to inputOutput SFFloat field named pitch.
    AudioClip setResumeTime​(double newValue)
    Accessor method to assign double value in seconds to inputOutput SFTime field named resumeTime.
    AudioClip setStartTime​(double newValue)
    Accessor method to assign double value in seconds to inputOutput SFTime field named startTime.
    AudioClip setStopTime​(double newValue)
    Accessor method to assign double value in seconds to inputOutput SFTime field named stopTime.
    AudioClip setUrl​(java.lang.String[] newValue)
    Accessor method to assign String array to inputOutput MFString field named url.
  • Method Details

    • getDescription

      java.lang.String getDescription()
      Provide String value from inputOutput SFString field named description.

      Tooltip: Author-provided text tooltip that tells users the expected action of this node.
      • Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).
      Specified by:
      getDescription in interface X3DSoundSourceNode
      Returns:
      value of description field
    • setDescription

      AudioClip setDescription​(java.lang.String newValue)
      Accessor method to assign String value to inputOutput SFString field named description.

      Tooltip: Author-provided text tooltip that tells users the expected action of this node.
      • Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).
      Specified by:
      setDescription in interface X3DSoundSourceNode
      Parameters:
      newValue - is new value for the description field.
      Returns:
      AudioClip - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getDuration

      double getDuration()
      Provide double value in seconds within allowed range of [-1,infinity) from outputOnly SFTime field named duration_changed.

      Tooltip: [0,+infinity) or -1. duration_changed is length of time in seconds for one cycle of media stream.
      • Warning: duration value of -1 implies that media data has not yet loaded or is unavailable for some reason.
      • Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
      • Hint: duration_changed is an SFTime duration interval, normally nonnegative, and not an absolute clock time.
      • Hint: changing the pitch field does not trigger a duration_changed event. Playback interval may vary but duration of the original media data remains unmodified.
      Specified by:
      getDuration in interface X3DSoundSourceNode
      Returns:
      value of duration_changed field
    • getElapsedTime

      double getElapsedTime()
      Provide double value in seconds within allowed range of [0,infinity) from outputOnly SFTime field named elapsedTime.

      Tooltip: [0,+infinity) Current elapsed time since AudioClip activated/running, cumulative in seconds, and not counting any paused time.
      • Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
      • Hint: elapsedTime is a nonnegative SFTime duration interval, not an absolute clock time.
      Specified by:
      getElapsedTime in interface X3DSoundSourceNode
      Specified by:
      getElapsedTime in interface X3DTimeDependentNode
      Returns:
      value of elapsedTime field
    • getIsActive

      boolean getIsActive()
      Provide boolean value from outputOnly SFBool field named isActive.

      Tooltip: isActive true/false events are sent when playback starts/stops.
      • Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
      Specified by:
      getIsActive in interface X3DSoundSourceNode
      Specified by:
      getIsActive in interface X3DTimeDependentNode
      Returns:
      value of isActive field
    • getIsPaused

      boolean getIsPaused()
      Provide boolean value from outputOnly SFBool field named isPaused.

      Tooltip: isPaused true/false events are sent when AudioClip is paused/resumed.
      • Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
      Specified by:
      getIsPaused in interface X3DSoundSourceNode
      Specified by:
      getIsPaused in interface X3DTimeDependentNode
      Returns:
      value of isPaused field
    • getLoop

      boolean getLoop()
      Provide boolean value from inputOutput SFBool field named loop.

      Tooltip: repeat indefinitely when loop=true, repeat only once when loop=false. *
      Specified by:
      getLoop in interface X3DSoundSourceNode
      Specified by:
      getLoop in interface X3DTimeDependentNode
      Returns:
      value of loop field
    • setLoop

      AudioClip setLoop​(boolean newValue)
      Accessor method to assign boolean value to inputOutput SFBool field named loop.

      Tooltip: repeat indefinitely when loop=true, repeat only once when loop=false. *
      Specified by:
      setLoop in interface X3DSoundSourceNode
      Specified by:
      setLoop in interface X3DTimeDependentNode
      Parameters:
      newValue - is new value for the loop field.
      Returns:
      AudioClip - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getMetadata

      X3DMetadataObject getMetadata()
      Provide X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.
      Specified by:
      getMetadata in interface X3DChildNode
      Specified by:
      getMetadata in interface X3DNode
      Specified by:
      getMetadata in interface X3DSoundSourceNode
      Specified by:
      getMetadata in interface X3DTimeDependentNode
      Returns:
      value of metadata field
      See Also:
      X3D Scene Authoring Hints: Metadata Nodes
    • setMetadata

      AudioClip setMetadata​(X3DMetadataObject newValue)
      Accessor method to assign X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
      Specified by:
      setMetadata in interface X3DChildNode
      Specified by:
      setMetadata in interface X3DNode
      Specified by:
      setMetadata in interface X3DSoundSourceNode
      Specified by:
      setMetadata in interface X3DTimeDependentNode
      Parameters:
      newValue - is new value for the metadata field.
      Returns:
      AudioClip - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      See Also:
      X3D Scene Authoring Hints: Metadata Nodes
    • getPauseTime

      double getPauseTime()
      Provide double value in seconds from inputOutput SFTime field named pauseTime.

      Tooltip: When time now >= pauseTime, isPaused becomes true and AudioClip becomes paused. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      Specified by:
      getPauseTime in interface X3DSoundSourceNode
      Specified by:
      getPauseTime in interface X3DTimeDependentNode
      Returns:
      value of pauseTime field
    • setPauseTime

      AudioClip setPauseTime​(double newValue)
      Accessor method to assign double value in seconds to inputOutput SFTime field named pauseTime.

      Tooltip: When time now >= pauseTime, isPaused becomes true and AudioClip becomes paused. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      Specified by:
      setPauseTime in interface X3DSoundSourceNode
      Specified by:
      setPauseTime in interface X3DTimeDependentNode
      Parameters:
      newValue - is new value for the pauseTime field.
      Returns:
      AudioClip - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getPitch

      float getPitch()
      Provide float value within allowed range of (0,infinity) from inputOutput SFFloat field named pitch.

      Tooltip: (0,+infinity) Multiplier for the rate at which sampled sound is played. Changing pitch also changes playback speed.
      • Hint: changing the pitch field does not trigger a duration_changed event. Playback interval may vary but duration of the original media data remains unmodified.
      Specified by:
      getPitch in interface X3DSoundSourceNode
      Returns:
      value of pitch field
    • setPitch

      AudioClip setPitch​(float newValue)
      Accessor method to assign float value to inputOutput SFFloat field named pitch.

      Tooltip: (0,+infinity) Multiplier for the rate at which sampled sound is played. Changing pitch also changes playback speed.
      • Hint: changing the pitch field does not trigger a duration_changed event. Playback interval may vary but duration of the original media data remains unmodified.
      Specified by:
      setPitch in interface X3DSoundSourceNode
      Parameters:
      newValue - is new value for the pitch field.
      Returns:
      AudioClip - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getResumeTime

      double getResumeTime()
      Provide double value in seconds from inputOutput SFTime field named resumeTime.

      Tooltip: When resumeTime becomes <= time now, isPaused becomes false and AudioClip becomes active. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      Specified by:
      getResumeTime in interface X3DSoundSourceNode
      Specified by:
      getResumeTime in interface X3DTimeDependentNode
      Returns:
      value of resumeTime field
    • setResumeTime

      AudioClip setResumeTime​(double newValue)
      Accessor method to assign double value in seconds to inputOutput SFTime field named resumeTime.

      Tooltip: When resumeTime becomes <= time now, isPaused becomes false and AudioClip becomes active. Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      Specified by:
      setResumeTime in interface X3DSoundSourceNode
      Specified by:
      setResumeTime in interface X3DTimeDependentNode
      Parameters:
      newValue - is new value for the resumeTime field.
      Returns:
      AudioClip - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getStartTime

      double getStartTime()
      Provide double value in seconds from inputOutput SFTime field named startTime.

      Tooltip: Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      Specified by:
      getStartTime in interface X3DSoundSourceNode
      Specified by:
      getStartTime in interface X3DTimeDependentNode
      Returns:
      value of startTime field
    • setStartTime

      AudioClip setStartTime​(double newValue)
      Accessor method to assign double value in seconds to inputOutput SFTime field named startTime.

      Tooltip: Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      Specified by:
      setStartTime in interface X3DSoundSourceNode
      Specified by:
      setStartTime in interface X3DTimeDependentNode
      Parameters:
      newValue - is new value for the startTime field.
      Returns:
      AudioClip - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getStopTime

      double getStopTime()
      Provide double value in seconds from inputOutput SFTime field named stopTime.

      Tooltip: Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      • Warning: An active TimeSensor node ignores set_cycleInterval and set_startTime events.
      • Warning: An active TimeSensor node ignores set_stopTime event values less than or equal to startTime.
      Specified by:
      getStopTime in interface X3DSoundSourceNode
      Specified by:
      getStopTime in interface X3DTimeDependentNode
      Returns:
      value of stopTime field
    • setStopTime

      AudioClip setStopTime​(double newValue)
      Accessor method to assign double value in seconds to inputOutput SFTime field named stopTime.

      Tooltip: Absolute time: number of seconds since January 1, 1970, 00:00:00 GMT.
      • Hint: ROUTE a time value matching system clock to this field, such as output event from TouchSensor touchTime or TimeTrigger triggerTime.
      • Warning: An active TimeSensor node ignores set_cycleInterval and set_startTime events.
      • Warning: An active TimeSensor node ignores set_stopTime event values less than or equal to startTime.
      Specified by:
      setStopTime in interface X3DSoundSourceNode
      Specified by:
      setStopTime in interface X3DTimeDependentNode
      Parameters:
      newValue - is new value for the stopTime field.
      Returns:
      AudioClip - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getUrl

      java.lang.String[] getUrl()
      Provide array of String results from inputOutput MFString field named url.

      Tooltip: Location and filename of sound file or stream. Support for .wav format is required, .midi format is recommended, other formats are optional.
      • Hint: MFString arrays can have multiple values, so separate each individual string by quote marks. "http://www.web3d.org" "http://www.web3d.org/about" "etc."
      • Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
      • Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
      • Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
      • Hint: X3D Scene Authoring Hints, urls http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#urls
      Specified by:
      getUrl in interface X3DUrlObject
      Returns:
      value of url field
    • setUrl

      AudioClip setUrl​(java.lang.String[] newValue)
      Accessor method to assign String array to inputOutput MFString field named url.

      Tooltip: Location and filename of sound file or stream. Support for .wav format is required, .midi format is recommended, other formats are optional.
      • Hint: MFString arrays can have multiple values, so separate each individual string by quote marks. "http://www.web3d.org" "http://www.web3d.org/about" "etc."
      • Hint: alternative XML encoding for quotation mark " is " (which is an example of a character entity).
      • Warning: strictly match directory and filename capitalization for http links! This is important for portability. Some operating systems are forgiving of capitalization mismatches, but http/https url addresses and paths in Unix-based operating systems are all case sensitive and intolerant of uppercase/lowercase mismatches.
      • Hint: can replace embedded blank(s) in url queries with %20 for each blank character.
      • Hint: X3D Scene Authoring Hints, urls http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#urls
      Specified by:
      setUrl in interface X3DUrlObject
      Parameters:
      newValue - is new value for the url field.
      Returns:
      AudioClip - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).