Плохое воспроизведение звука MPD с включенным fifo
Я использую Music Player Daemon (mpd
) с ncmpcpp
на OS X. ncmpcpp
имеет функцию, визуализатор музыки, которая рисует в реальном времени волну / спектр музыки, которую вы сейчас воспроизводите.
Чтобы использовать это, вы должны включить выход fifo в mpd
,
Ну, это работает, но в то время как это на аудио ужасно: он потрескивает, а иногда даже зависает. Это как если mpd
пропускает какой-то кадр.
mpd
Настройки для fifo:
audio_output {
type "fifo"
name "FIFO"
path "/tmp/mpd.fifo"
format "44100:16:2"
}
А также ncmpcpp
установил:
visualizer_in_stereo = "yes"
visualizer_fifo_path = "/tmp/mpd.fifo"
visualizer_output_name = "fifo"
visualizer_sync_interval = "0"
visualizer_look = "||"
visualizer_color = "blue"
visualizer_type = "spectrum"
Есть ли неправильные настройки для изменения или я нашел ошибку?
2 ответа
Я подал отчет об ошибке на трекер ошибок mpd. Проблема связана с плагином вывода звука OS X, который не поддерживается. Таким образом, единственный способ сохранить как обычный аудиовыход, так и FIFO - это потоковая передача на другой плеер.
Вы можете выводить через http или другой fifo и передавать аудио, например, в vlc. В случае http добавьте в ваш конфиг:
audio_output {
type "httpd"
name "http stream"
encoder "vorbis"
port "8000"
quality "2"
format "44100:16:2"
}
затем установите этот псевдоним: alias cvlc='/Applications/VLC.app/Contents/MacOS/VLC --intf=rc'
и беги cvlc http://localhost:8000
Если вы хотите использовать два FIFO, просто продублируйте текущие настройки и запустите vlc с:
cvlc --demux=rawaud --rawaud-channels 2 --rawaud-samplerate 44100 /tmp/mpd-vlc.fifo
Недостатки, которые я заметил, это то, что вы больше не сможете изменять громкость вывода с помощью mpd, и это относительно небольшое отставание.
Я заметил, что у вас есть visualizer_sync_interval = "0" в вашей конфигурации, что почти наверняка является проблемой. Сначала попробуйте установить его на "30", как рекомендуется в документации ncmpcpp - если это не сработает, попробуйте несколько различных значений для этого параметра.