Liquidsoap + JACK латентность
Как минимизировать задержку обработки Liquidsoap?
Я написал очень простой сценарий liquidsoap для проверки задержки:
#!/usr/bin/env liquidsoap
set("log.stdout",true)
set("log.file",false)
stream = input.jack(clock_safe=false)
output.jack(stream)
Когда я соединяю порты с музыкальным проигрывателем (mpd) и звуковой картой, воспроизведение музыки начинается и останавливается с задержкой около 0,5 с. У меня размер буфера JACK установлен на 1024, поэтому задержка должна быть около 0,02 с. Когда я подключаю mpd напрямую к звуковой карте, задержка становится незаметной, поэтому это определенно проблема с Liquidsoap.
Есть ли какая-либо опция конфигурации, которую я пропускаю, которая вызывает нежелательную буферизацию, когда установлено значение по умолчанию? Я пробовал различные значения clock_safe для ввода и вывода, но они ничего не делают.
1 ответ
Согласно документации, input.jack
принимает параметр buffer_size:
buffer_size (int – defaults to 2): Set buffer size, in frames. Must be >= 1.
Похоже, его набор 2
по умолчанию, поэтому не уверен, что вы собираетесь получить много, установив его в 1...