ffmpeg
ffmpeg, как обычно, может это сделать.
Создайте 5-секундный монофонический синусоидальный звуковой файл с частотой 1000 Гц out.wav
:
sudo apt-get install ffmpeg
ffmpeg -f lavfi -i "sine=frequency=1000:duration=5" out.wav
Стерео вместо-ac 2
:
ffmpeg -f lavfi -i "sine=frequency=1000:duration=5" -ac 2 out.wav
Файл будет в 2 раза больше, и ffprobe
скажет, что он имеет 2 channels
вместо 1 channel
.
Воспроизведение аудио в течение 5 секунд без создания файла:
ffplay -f lavfi -i "sine=frequency=1000:duration=5" -autoexit -nodisp
Играй вечно, пока не сойдешь с ума:
ffplay -f lavfi -i "sine=frequency=1000" -nodisp
Документация:
В другом разделе раздел Источники звука описаны другие полезные алгоритмы генерации звука в дополнение к sine
, например.:
anoisesrc
:шумы нескольких цветов, напр. белый, розовый, коричневый aevalsrc
принимает произвольные математические выражения и, следовательно, должен иметь возможность создавать треугольные сигналы (выражение TODO)Библиография:
Протестировано в Ubuntu 18.04, ffmpeg 3.4.6.
Пример создания минимального звука C без дополнительных библиотек
Вы получаете сообщение об ошибке Permission denied
, поскольку ~/spotbugs-4.4.1/bin/spotbugs
не имеет установленного бита выполнения. Добавьте строку RUN chmod +x /root/spotbugs-4.4.1/bin/spotbugs
в свой Dockerfile, чтобы добавить бит выполнения для этого файла в образ Docker.
Кроме того, в этом образе Docker не установлен пакет sudo
. Вам это не нужно, но если вы действительно хотите, вы можете установить его так же, как и другие инструменты, которые вы установили, добавив строку RUN apt-get install sudo -y
в свой Dockerfile.