Перейти к публикации
Форум - ComputerCraft
Fingercomp

Synth - графический интерфейс для звуковой карты

Рекомендованные сообщения

Я сразу понял,что тут либа от ECS стоит!!! :smile148:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Шедевр!

Жаль, что скоро я на сервак не зайду, чтобы опробовать это(

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Совсем небольшой апдейтик, добавляющий ещё 12 килобайт кода.

 

1. Добавлена карточка LFSR шума

Я как-то про неё забыл, из-за чего она на меня обиделась. Но справедливость восторжествовала, и она стала доступна для установки. Я без понятия, как оно работает, автор мода тоже в неведении пребывает, такие дела. Поэтому играйтесь.

 

2. Улучшен плоттер

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

Ну и в сетапах с модуляторами можно модуляторы на отдельный график теперь ставить (раньше тупо нуль рисовал).

 

3. Добавлена PCM-карточка

Теперь звук можно записывать путём попроще, чем редиректить его из кубача в файл. Подключите все нужные каналы, как и у звуковой карты, к PCM-карте и затем тыкните правой кнопой мышки.

 

iycpXnj.png

 

Задайте параметры вывода:

  • Sample rate - частота дискретизации. Количество измерений в секунду. Должно быть минимум в два с небольшим раза больше максимальной частоты в выхлопе (напомню, что боковые частоты у модуляторов могут быть выше частоты несущего сигнала). 44100 заявлено как качество CD и является дефолтным сэмплрейтом звуковой карточки, 48000 - качество DVD.
  • Depth - глубина дискретизации. Размер одного сэмпла в битах. Чем больше глубина, тем точнее кодируется амплитуда, но реально разница между 16 битами, например, и 32 не особо заметная для игрушечных выводах в этой проге.
  • Length (in secs) - длина [аудио-файла] (в секундах), внезапно.
  • Format - формат файла. На самом деле, один фиг будет генерироваться LPCM, только если выставить формат в WAV, то за счёт 44 байт можно будет проигрывать полученный файл в любом плеере без шаманских плясок.
  • Path - путь. Туда побежит звук. Очевидно, что файл будет перезаписан (и вас об этом не спросят, потому что это же суровая прога для суровых ребят, а не мягкая комната).
  • Total file size - размер файла, кто бы мог подумать. В кибибайтах - ну там и так написано, так-то. Размер = частота дискретизации × (глубина дискретизации / 8) × длина + (формат == WAV ? 44 : 0).
  • Generate - это кнопка, по которой люди тыкают, чтобы скормить звук в файл. Справа от кнопки прогресс бар, показывающий прогресс.

Как-то так. WAV сразу в плеер посылать можно, а для PCM надо указывать формат. Пример для ffplay:

$ ffplay -f s${DEPTH}le -ar $SAMPLERATE -ac 1 -i out.pcm

Не переиграйтесь с размером: диски в OC не резиновые.

 

4. Пофикшены баги

Самые разные, в основном довольно тупые.

 

Обновить

$ oppm update
$ # или
$ hpm oppm:install -r synth
  • Like 3

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ух ты... круто пойду проверю. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

круто, что тут еще добавить)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Довольно часто встречаю названия samples, я так понимаю это единица цифрового звука?

Линии от карточек к каналу можно сделать тоже цветными, хотя тут можно спорить долго.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Цветные линии создадут много визуального шума, имхо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Samples — количество измерений. В плоттере замеряются значения функции с шагом в (1 s)/Nsamples. В [PCM out] это будет частота дискретизации PCM/WAV-результатирующего файла. В блоге рекомендую глянуть обзор звуковой карты, чтобы как-то попроще стало, — особенно третью часть.

 

Цветные линии толком сделать не получится красиво. Это же брайль. Если две линии пересекутся, то всю клетку придётся красить в интерполированный цвет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Samples — количество измерений. В плоттере замеряются значения функции с шагом в (1 s)/Nsamples. В [PCM out] это будет частота дискретизации PCM/WAV-результатирующего файла. В блоге рекомендую глянуть обзор звуковой карты, чтобы как-то попроще стало, — особенно третью часть.

 

Цветные линии толком сделать не получится красиво. Это же брайль. Если две линии пересекутся, то всю клетку придётся красить в интерполированный цвет.

Понял. Я читал как делает звуковая карта, она каждые промежуток времени записывает значение звуковой волны в цифровой вид, таким образом получаются "таким грубые ступеньки" на графике и чем больше такой записи в секунду - тем качественнее звук, ну еще и разрядность надо повышать.

 

Жаль в эмуляторе нет звуковой карты.

Изменено пользователем NEO
  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

×