Конфигурация liquidsoap #
Настройки аудио #
Настройки ресемплинга #
set("audio.converter.samplerate.libsamplerate.quality","fast")
# Default: "fast"
Качество ресемплинга, может быть одним из значений: best
, medium
, fast
, zero_order
, linear
.
предпочтительный конвертер #
set("audio.converter.samplerate.preferred","libsamplerate")
Настройки декодера #
Отладка декодера #
set("decoder.debug",false)
# По умолчанию false
ВНИМАНИЕ! Не включайте эту опцию на если вы не производите отладку. Режим отладки декодинга позволяет понять, почему не удается декодирование, но в качестве побочного эффекта это может подвесить Liquidsoap в конце каждого трека.
Порядок декодирования #
Эта настройка описывает какие декодеры и (важно) в какой последовательности будут применяться к каждому треку. Если у вас применяются файлы одного типа и точно не будет других, то можно отсечь лишние проверки.
set("decoder.file_decoders",["META","WAV","AIFF","MIDI","IMAGE","OGG","MAD"])
# По умолчанию: ["META","WAV","AIFF","MIDI","IMAGE","OGG","MAD"]
# Если на станции играет только mp3, то достаточно установить
set("decoder.file_decoders",["META","MAD"])
Расширения файлов для каждого из типов декодера #
AIFF #
Расширения для распознавания форматов aiff
set("decoder.file_extensions.aiff",["aiff","aif","aifc"])
# По умолчанию: ["aiff","aif","aifc"]
MPEG #
Расширения для распознавания форматов mpeg
set("decoder.file_extensions.mad",["mp3","mp2","mp1"])
# По умолчанию: ["mp3","mp2","mp1"]
OGG #
Расширения для распознавания форматов ogg
set("decoder.file_extensions.ogg",["ogv","oga","ogx","ogg","opus"])
# По умолчанию: ["ogv","oga","ogx","ogg","opus"]
WAV #
Расширения для распознавания форматов wave
set("decoder.file_extensions.wav",["wav","wave"])
# По умолчанию: ["wav","wave"]
MIME типы для распознавания аудио форматов #
AAC #
set("decoder.mime_types.aac",["audio/aac","audio/aacp","audio/x-hx-aac-adts"])
# По умолчанию: ["audio/aac","audio/aacp","audio/x-hx-aac-adts"]
PCM/BASIC #
set("decoder.mime_types.basic",["audio/basic"])
# По умолчанию: ["audio/basic"]
FLAC #
set("decoder.mime_types.flac",["audio/x-flac"])
# По умолчанию: ["audio/x-flac"]
mpeg audio format #
set("decoder.mime_types.mad",["audio/mpeg","audio/MPA"])
# По умолчанию: ["audio/mpeg","audio/MPA"]
MP3 (УДАЛЕНО!, используйте ключи конфигурации *.mad !) #
set("decoder.mime_types.mp3",["audio/mpeg","audio/MPA"])
# По умолчанию: ["audio/mpeg","audio/MPA"]
MP4 #
set("decoder.mime_types.mp4",["audio/mp4","application/mp4"])
# По умолчанию: ["audio/mp4","application/mp4"]
OGG #
set("decoder.mime_types.ogg",["application/ogg","application/x-ogg","audio/x-ogg","audio/ogg","video/ogg"])
# По умолчанию: ["application/ogg","application/x-ogg","audio/x-ogg","audio/ogg","video/ogg"]
WAV #
set("decoder.mime_types.wav",["audio/vnd.wave","audio/wav","audio/wave","audio/x-wav"])
# По умолчанию: ["audio/vnd.wave","audio/wav","audio/wave","audio/x-wav"]
Эта настройка описывает какие декодеры и (важно) в какой последовательности будут применяться к входящим потокам. Аналогична настройке Порядок декодирования
set("decoder.stream_decoders",["WAV","PCM/BASIC","FLAC","AAC","MAD","OGG"])
# По умолчанию: ["WAV","PCM/BASIC","FLAC","AAC","MAD","OGG"]
настройки TAGLIB #
По умолчанию taglib только пытается прочитать метаданные из файлов, которые признаны валидными.
Однако распознание тегов может не удаться, например когда wave файл сообщит что он “audio/mpeg”.
Если включить эту опцию, то все файлы будут отправляться в taglib как MPEG.\
В этом случае опции ("decoder.file_extensions.taglib" и "decoder.mime_types.taglib")
не используются,
и распознавание файла производится только на основании соответствующих настроек из MAD MPEG декодера.
set("decoder.taglib.force_mpeg",false)
# По умолчанию: false
настройки метаданных #
Список полей в экспортируемых метаданных.
set("encoder.encoder.export", "artist","title","album","genre","date","tracknumber","comment","track","year"])
# По умолчанию: ["artist","title","album","genre","date","tracknumber","comment","track","year"]
Тонкая настройка PCM #
Количество каналов по умолчанию
set("frame.audio.channels",2)
# по умолчанию: 2
Частота дискретизации, Гц
set("frame.audio.samplerate",44100)
# по умолчанию: 44100
Примерная продолжительность одного кадра в секундах.
Примечание: Частоты дискретизации аудио и видео ограничивают размеры кадра (frame). Эта настройка используется тогда, когда не передается ‘frame.audio.size’.
Тонкая настройка продолжительности кадра это риск, но она иногда необходима, когда трансляция идет на нестандартных частотах дискретизации, или при имеющихся задержках в обработке, или для точной синхронизации ввода/вывода звуковой карты с liquidsoap. //
set("frame.duration",0.04)
# по умолчанию: 0.04
MIDI параметры #
Номер канала по умолчанию
set("frame.midi.channels",0)
# по умолчанию: 0
Видео формат #
Номер канала по умолчанию ( что это :?:)
set("frame.video.channels",0)
# по умолчанию: 0
Ширина изображения
set("frame.video.widths",320)
# по умолчанию: 321
Высота изображения
set("frame.video.height",240)
# по умолчанию: 240
Частота кадров
set("frame.video.samplerate",25)
# по умолчанию: 25
Настройки порта (harbor) #
Harbor это порт для подключения внешних источников, например Icecast/Shoutcast, SAMBroadcaster, Mixх и других. К этому источнику могут подключаться DJ для выхода в эфир.
IP адрес
set("harbor.bind_addr","0.0.0.0")
# по умолчанию: "0.0.0.0"
Content-type (mime) форматы которые позволяют обновление метаданных.
set("harbor.icy_formats",["audio/mpeg","audio/aacp","audio/aac","audio/x-aac","audio/wav","audio/wave","audio/x-flac"])
# по умолчанию: ["audio/mpeg","audio/aacp","audio/aac","audio/x-aac","audio/wav","audio/wave","audio/x-flac"]
Максимальное количество ожидающих источников на порт (количество подключений)
set("harbor.max_connections",2)
# По умолчанию: 2
Обратные DNS запросы для получения имени хоста клиента по его IP
# Default: true
set("harbor.reverse_dns",true)
Тайм-аут для сетевых операций ()
set("harbor.timeout",300.)
# по умолчанию: 300.
Отображение паролей при отладке
set("harbor.verbose",false)
# по умолчанию: false
Параметры инициализации #
Запуск в режиме демона
set("init.daemon",false)
# по умолчанию: false
Изменение пользователя(сброс привилегий)
set("init.daemon.change_user",false)
# по умолчанию: false
Запуск демона от имени пользователя “daemon”
set("init.daemon.change_user.user","daemon")
# по умолчанию: "daemon"
Запуск демона от имени группы “daemon”
set("init.daemon.change_user.group","daemon")
# по умолчанию: "daemon"
Создание PID файла
set("init.daemon.pidfile",true)
# по умолчанию: true
Путь к PID файлу
set("init.daemon.pidfile.path","<sysrundir>/<script>.pid")
# по умолчанию: "<sysrundir>/<script>.pid"
Запуск liquidsoap без активных источников
set("init.force_start",false)
# по умолчанию: false
# Эта возможность зарезервирована для продвинутого динамического использования liquidsoap