Object/Trait

de.sciss.synth.io

AudioFile

Related Docs: trait AudioFile | package io

Permalink

object AudioFile extends ReaderFactory

The AudioFile allows reading and writing of sound files. It can operate both on a RandomAccessFile created from a File instance, or on an kind of InputStream (not every codec will support this though, and functionality might be limited, for example seeking is not possible with a plain InputStream).

The codecs are registered with AudioFileType. The codecs that come with ScalaAudioFile are found in the impl package.

Reading and writing data requires a user-buffer which holds de-interleaved floating point data, that is a two dimensional Array which holds Float data. A type alias Frames is provided for this, and two helper methods buffer: one static to construct an arbitrary user-buffer, one in class AudioFile which creates a buffer with the appropriate channel number.

To do

the copyTo method uses a user-buffer. it should check for the possibility to directly transfer data if input and output are compatible.

See also

AudioFileType

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AudioFile
  2. ReaderFactory
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def buffer(numChannels: Int, bufFrames: Int = 8192): Frames

    Permalink
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  11. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  12. def identify(dis: DataInputStream): Option[CanIdentify]

    Permalink
    Annotations
    @throws( classOf[IOException] )
  13. def identify(f: File): Option[CanIdentify]

    Permalink

    Determines the type of audio file.

    Determines the type of audio file.

    f

    the pathname of the file

    returns

    the type code as defined in AudioFileInfo, e.g. TYPE_AIFF. Returns TYPE_UNKNOWN if the file could not be identified.

    Annotations
    @throws( classOf[IOException] )
    Exceptions thrown

    java.io.IOException if the file could not be reader

  14. def identify(path: String): Option[AudioFileType]

    Permalink
    Annotations
    @throws( classOf[IOException] )
  15. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  16. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  18. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  19. def openRead(is: InputStream): AudioFile

    Permalink
    Definition Classes
    AudioFileReaderFactory
    Annotations
    @throws( classOf[IOException] )
  20. def openRead(f: File): AudioFile

    Permalink

    Opens an audio file for reading.

    Opens an audio file for reading.

    f

    the path name of the file

    returns

    a new AudioFile object whose header is already parsed and can be obtained through the spec method.

    Definition Classes
    AudioFileReaderFactory
    Annotations
    @throws( classOf[IOException] )
    Exceptions thrown

    java.io.IOException if the file was not found, could not be reader or has an unknown or unsupported format

  21. final def openRead(path: String): AudioFile

    Permalink
    Definition Classes
    ReaderFactory
    Annotations
    @throws( classOf[IOException] )
  22. def openWrite(os: OutputStream, spec: AudioFileSpec): AudioFile

    Permalink
    Annotations
    @throws( classOf[IOException] )
  23. def openWrite(f: File, spec: AudioFileSpec): AudioFile

    Permalink

    Opens an audio file for reading/writing.

    Opens an audio file for reading/writing. The pathname is determined by the file field of the provided AudioFileInfo. If a file denoted by this path already exists, it will be deleted before opening.

    Note that the initial audio file header is written immediately. Special tags for the header thus need to be set in the AudioFileInfo before calling this method, including markers and regions. It is not possible to writer markers and regions after the file has been opened (since the header size has to be constant).

    f

    the path name of the file.

    spec

    format and resolution of the new audio file. the header is immediately written to the hard-disc

    Annotations
    @throws( classOf[IOException] )
    Exceptions thrown

    java.io.IOException if the file could not be created or the format is unsupported

  24. def openWrite(path: String, spec: AudioFileSpec): AudioFile

    Permalink
    Annotations
    @throws( classOf[IOException] )
  25. def readSpec(dis: DataInputStream): AudioFileSpec

    Permalink

    Note that this method advances in the provided input stream, its previous position is not reset.

    Note that this method advances in the provided input stream, its previous position is not reset.

    Annotations
    @throws( classOf[IOException] )
  26. def readSpec(f: File): AudioFileSpec

    Permalink
  27. def readSpec(path: String): AudioFileSpec

    Permalink
  28. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  29. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  30. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  31. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  32. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from ReaderFactory

Inherited from AnyRef

Inherited from Any

Ungrouped