Spec-Zone.ru › OpenJDK 8

Класс AudioInputStream

  • java.lang.Object
    • java.io.InputStream
      • javax.sound.sampled.AudioInputStream
Все реализованные интерфейсы:
Closeable, AutoCloseable

public class AudioInputStream
extends InputStream

Поток ввода аудио — это поток ввода с указанным форматом и длиной аудиоданных. Длина выражается в кадрах выборки, а не байтах. Предоставляются несколько методов для чтения определенного количества байтов из потока или неопределённого количества байтов. Поток ввода аудио отслеживает последний прочитанный байт. Вы можете пропустить произвольное количество байтов, чтобы перейти к более поздней позиции для чтения. Поток ввода аудио может поддерживать метки. При установке метки текущая позиция запоминается, чтобы к ней можно было вернуться позже.

Класс AudioSystem включает множество методов, которые манипулируют объектами AudioInputStream. Например, методы позволяют:

  • получить поток ввода аудио из внешнего аудиофайла, потока или URL
  • записать внешний файл из потока ввода аудио
  • преобразовать поток ввода аудио в другой формат аудио
С тех пор как:
1.3
См. также:
AudioSystem, Clip.open(AudioInputStream)

Поля

Модификатор и тип Поле и описание
protected AudioFormat format

Формат аудиоданных, содержащихся в потоке.

protected long frameLength

Длина потока в кадрах выборки.

protected long framePos

Текущая позиция в потоке в кадрах выборки (нумерация с нуля).

protected int frameSize

Размер каждого кадра в байтах.

Конструкторы

Конструктор и описание
AudioInputStream(InputStream stream, AudioFormat format, long length)

Создаёт поток ввода аудио с указанным форматом и длиной в кадрах выборки, используя аудиоданные из указанного потока ввода.

AudioInputStream(TargetDataLine line)

Создаёт поток ввода аудио, который читает данные из целевой линии данных, указанной.

Методы

Модификатор и тип Метод и описание
int available()

Возвращает максимальное количество байтов, которое может быть прочитано (или пропущено) из этого потока ввода аудио без блокировки.

void close()

Закрывает этот поток ввода аудио и освобождает все системные ресурсы, связанные с потоком.

AudioFormat getFormat()

Получает формат аудиоданных в этом потоке ввода аудио.

long getFrameLength()

Получает длину потока, выраженную в кадрах выборки, а не байтах.

void mark(int readlimit)

Помечает текущую позицию в этом потоке ввода аудио.

boolean markSupported()

Проверяет, поддерживает ли этот поток ввода аудио методы mark и reset.

int read()

Читает следующий байт данных из потока ввода аудио.

int read(byte[] b)

Читает определённое количество байтов из потока ввода аудио и сохраняет их в массив байтов b.

int read(byte[] b, int off, int len)

Читает не более заданного максимального количества байтов данных из потока аудио, помещая их в заданный массив байтов.

void reset()

Возвращает этот поток ввода аудио в позицию, которая была в момент последнего вызова метода mark.

long skip(long n)

Пропускает и отбрасывает указанное количество байтов из этого потока ввода аудио.

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Поля

format

protected AudioFormat format

Формат аудиоданных, содержащихся в потоке.

frameLength

protected long frameLength

Длина этого потока в кадрах выборки.

frameSize

protected int frameSize

Размер каждого кадра в байтах.

framePos

protected long framePos

Текущая позиция в этом потоке в кадрах выборки (нумерация с нуля).

Конструкторы

AudioInputStream

public AudioInputStream(InputStream stream,
                        AudioFormat format,
                        long length)

Создаёт аудиопоток ввода с запрошенным форматом и длиной в кадрах выборки, используя аудиоданные из указанного потока ввода.

Параметры:
stream - поток, на котором основан этот AudioInputStream объект
format - формат аудиоданных этого потока
length - длина в кадрах выборки данных в этом потоке

AudioInputStream

public AudioInputStream(TargetDataLine line)

Создаёт аудиопоток ввода, который считывает данные из указанной целевой линии данных. Формат потока совпадает с форматом целевой линии данных, а длина равна AudioSystem#NOT_SPECIFIED.

Параметры:
line - целевая линия данных, из которой поток получает свои данные.
См. также:
AudioSystem.NOT_SPECIFIED

Методы

getFormat

public AudioFormat getFormat()

Получает формат аудиоданных в этом потоке аудио ввода.

Возвращает:
объект аудиоформата, описывающий формат этого потока

getFrameLength

public long getFrameLength()

Получает длину потока, выраженную в кадрах выборки, а не в байтах.

Возвращает:
длину в кадрах выборки

read

public int read()
         throws IOException

Считывает следующий байт данных из потока аудио ввода. Размер кадра потока аудио ввода должен быть один байт, в противном случае будет брошено исключение IOException.

Унаследован от:
read в классе InputStream
Возвращает:
следующий байт данных или -1, если достигнут конец потока
Исключения:
IOException - если произошла ошибка ввода-вывода
См. также:
read(byte[], int, int), read(byte[]),

read

public int read(byte[] b)
         throws IOException

Считывает некоторое количество байтов из потока аудио ввода и сохраняет их в массив буфера b. Количество фактически считанных байтов возвращается в виде целого числа. Этот метод блокируется до тех пор, пока данные ввода не станут доступными, пока не будет обнаружен конец потока или пока не будет брошено исключение.

Этот метод всегда считывает целое число кадров. Если длина массива не является целым числом кадров, будет считан максимум b.length - (b.length % frameSize) байтов.

Переопределяет:
read в классе InputStream
Параметры:
b - буфер, в который считываются данные
Возвращает:
общее количество байтов, считанных в буфер, или -1, если больше нет данных, так как достигнут конец потока
Исключения:
IOException - если произошла ошибка ввода-вывода
См. также:
read(byte[], int, int), read(), available()

read

public int read(byte[] b,
                int off,
                int len)
         throws IOException

Считывает до указанного максимального количества байтов данных из аудиопотока, помещая их в заданный массив байтов.

Этот метод всегда считывает целое число кадров. Если len не задаёт целое число кадров, будет считан максимум len - (len % frameSize) байтов.

Переопределяет:
read в классе InputStream
Параметры:
b - буфер, в который считываются данные
off - смещение от начала массива b, в котором будут записаны данные
len - максимальное количество байтов для считывания
Возвращает:
общее количество байтов, считанных в буфер, или -1, если больше нет данных, так как достигнут конец потока
Исключения:
IOException - если произошла ошибка ввода-вывода
См. также:
read(byte[]), read(), skip(long), available()

skip

public long skip(long n)
          throws IOException

Пропускает и отбрасывает указанное количество байтов из этого потока аудио ввода.

Переопределяет:
skip в классе InputStream
Параметры:
n - запрашиваемое количество байтов для пропуска
Возвращает:
фактическое количество пропущенных байтов
Исключения:
IOException - если произошла ошибка ввода-вывода
См. также:
read(), available()

available

public int available()
              throws IOException

Возвращает максимальное количество байтов, которые могут быть прочитаны (или пропущены) из этого потока аудио ввода без блокировки. Это ограничение относится только к следующему вызову метода read или skip для этого потока аудио ввода; это ограничение может изменяться при каждом вызове этих методов. В зависимости от базового потока, при закрытии этого потока может быть брошено исключение IOException.

Переопределяет:
available в классе InputStream
Возвращает:
количество байтов, которые могут быть прочитаны из этого потока аудио ввода без блокировки
Исключения:
IOException - если произошла ошибка ввода-вывода
См. также:
read(byte[], int, int), read(byte[]), read(), skip(long)

close

public void close()
           throws IOException

Закрывает этот поток аудио ввода и освобождает все системные ресурсы, связанные с потоком.

Унаследован от:
close в интерфейсе Closeable
Унаследован от:
close в интерфейсе AutoCloseable
Переопределяет:
close в классе InputStream
Исключения:
IOException - если произошла ошибка ввода-вывода

mark

public void mark(int readlimit)

Помечает текущую позицию в этом потоке аудио ввода.

Переопределяет:
mark в классе InputStream
Параметры:
readlimit - максимальное количество байтов, которое может быть прочитано до того, как позиция метки станет недействительной.
См. также:
reset(), markSupported()

reset

public void reset()
           throws IOException

Перемещает этот поток аудио ввода в позицию, которая была у него в то время, когда его метод mark был последний раз вызван.

Переопределяет:
reset в классе InputStream
Исключения:
IOException - если произошла ошибка ввода-вывода.
См. также:
mark(int), markSupported()

markSupported

public boolean markSupported()

Проверяет, поддерживает ли этот поток аудио ввода методы mark и reset.

Переопределяет:
markSupported в классе InputStream
Возвращает:
true если этот поток поддерживает методы mark и reset; false в противном случае
См. также:
mark(int), reset()

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API