Чтение звукового файла с диска с помощью Overtone? - PullRequest
2 голосов
/ 03 октября 2019

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

Я знаю, что Overtone имеет возможности для загрузки семплов в память , новидя, что эти файлы будут длинными и большими (возможно, порядка часов), я не хочу использовать этот метод.

SuperCollider - который Overtone использует в качестве звукового движка - однако, есть и другой способдля загрузки и потоковой передачи файлов, а именно с использованием DiskIn , у которого Overtone, похоже, также есть , но я не смог найти ( docs , github) соответствующая Buffer.cueSoundFile() функция.

У Overtone вообще есть cueSoundFile? Есть ли другой способ, которым я могу использовать?

1 Ответ

2 голосов
/ 04 октября 2019

cueSoundFile - более интересный термин для эквивалентного сообщения osc / b_read, которое вы найдете в Overtone как overtone.sc.buffer/buffer-cue.

В качестве 5-секундной демонстрации, он воспроизводит 2-канальный файл с диска.

(demo (disk-in 2 (buffer-cue "~/Music/10mb.wav")))

И документ для диска в (SC DiskIn)

user=> (doc disk-in)
-------------------------
overtone.live/disk-in
([numChannels bufnum loop])

  stream audio in from disk file

  [numChannels :none, bufnum :none, loop 0]

  numChannels - Number of channels in the incoming
                audio.
  bufnum      - Id of buffer
  loop        - Soundfile will loop if 1 otherwise
                not.

  Continuously play a longer soundfile from disk. This
  requires a buffer to be preloaded with one buffer size of
  sound. If loop is set to 1, the soundfile will loop.

  Categories: InOut, Buffer
  Rates: [ :ar ]
  Default rate: :ar
...