>> 1. Еще раз для особо одаренных - драйвер не работает с ЦАП напрямую. 44.1kHz и 48kHz (или кратные им) хочет codec/dsp с которым и работает alsa.
> Ну и прекрасно. Любую частоту/битность которую запросит alsa она получит. Не только
> дефолтные 48kHz, но и 44, 96 и т.д.Нет, не получит. Как я уже сказал, это зависит от реализации тактового генератора, а не от ЦАП. Смотрите все тот же даташит и откуда берется MCLK. На моей плате (emu1212-m pci) физически стоит два разных кварца, выбрать нужный можно из alsamixer.
> С недефолтной на
> дефолтную она умеет сама делать up/down-sample, software mixing применять если отсутствует
> hardware mixing тоже умеет. В чем проблема? В чем тут необходимость
> pulse?
Изначально речь шла о том, что у alsa сложный api - и это правда.
> Я уже начинаю теряться. К чему этот спич? Весь опеннет меня пытается
> убедить что alsa не умеет воспроизводить звук из нескольких источников одновременно?
> И из-за этого надо поверх нее тянуть пульсу?
Все alsa умеет. Я лично использую либо просто alsa, либо совместно с jack.
> Или что приложения
> написанные под alsa должны подстраиваться под звуковую карту?
Должны - alsa низкоуровневый интерфейс, приложение как минимум должно согласовать частоту, формат (16/24/le/be), размер буфера, количество периодов.
> Бред! Тогда уж
> лучше сразу задепрекатить альсу если она такое гуано и утянуть в
> ядро и glibc пульсу, чем устраивать нынешнюю дурацкую связку pulse/alsa
Нет, не бред. Это позволяет при необходимости получить минимально возможную задержку для конкретного железа. Так же при не необходимости, мы можем получить гарантированный bit perfect, то есть отсутствие какой либо программной модификации посылаемого сигнала.
Я сам многое здесь писал в защиту alsa. Создание еще одного звуковой подсистемы (PA), только увеличило количество проблем - появились приложения не умеющие работать без PA.