FreeBSD contains an independently developed implementation of the OSS API, which includes, among other things, in-kernel resampling, mixing (vchans), equalizer, surround sound, and independent volume control for each application. It also supports bit-perfect mode.
везде, кроме голой альсы, - ты имеешь ввиду большие софтины в юзерспейсе?? так очевидно, что в ядре задержки будут меньше для тех, кому это профессионально надо. поместить что-то в ядро означает сделать это суппер быстрым.
Я имею в виду звуковые серверы во всех ОС. Типа пульсы, pipewire, CoreAudio в маке и то непотребство что в винде.
так очевидно, что в ядре задержки будут меньше для тех, кому это профессионально надо
С чего это вдруг очевидно? Я вообще не вижу как ресемплер влияет напрямую на задержки. Тем более, что у тех “кому это профессионально надо”, в цепочке обработки навешано на два порядка более тяжелых, чем ресемплер, преобразований (эквалайзеры, компрессоры, лимитеры, конвольверы, сатураторы, эмуляторы лампового усилителя и т. д.). И они никак не могут делаться в режиме ядра, потому что это прикладной софт делает. То есть ресемплинг тут вообще незаметен.
поместить что-то в ядро означает сделать его суппер быстрым.
С чего это вдруг? Вообще непонятно. Скорость исполнения кода, делающего арифметические вычисления, в kernel space и в user space одинакова.
я не буду с тобой спорить за проф. работу со звуком, так как вообще в этом ничего не понимаю, но отвечу за ту область, в которой работал
С чего это вдруг? Вообще непонятно. Скорость исполнения кода, делающего арифметические вычисления, в kernel space и в user space одинакова.
при разработки сетевых сервисов, код размещенный в ядре не совершает переключений контекста и вцелом выполняется заметно быстрее. именно по этой причине в ядро включили TLS.
еще про OSS из википедии:
FreeBSD contains an independently developed implementation of the OSS API, which includes, among other things, in-kernel resampling, mixing (vchans), equalizer, surround sound, and independent volume control for each application. It also supports bit-perfect mode.
довольно неплохо, да?
Это все есть везде кроме голой alsa. Но у меня вопрос - а зачем это все в ядре? В чем сакральный смысл работы ресемплера в режиме ядра, например?
везде, кроме голой альсы, - ты имеешь ввиду большие софтины в юзерспейсе?? так очевидно, что в ядре задержки будут меньше для тех, кому это профессионально надо. поместить что-то в ядро означает сделать это суппер быстрым.
Я имею в виду звуковые серверы во всех ОС. Типа пульсы, pipewire, CoreAudio в маке и то непотребство что в винде.
С чего это вдруг очевидно? Я вообще не вижу как ресемплер влияет напрямую на задержки. Тем более, что у тех “кому это профессионально надо”, в цепочке обработки навешано на два порядка более тяжелых, чем ресемплер, преобразований (эквалайзеры, компрессоры, лимитеры, конвольверы, сатураторы, эмуляторы лампового усилителя и т. д.). И они никак не могут делаться в режиме ядра, потому что это прикладной софт делает. То есть ресемплинг тут вообще незаметен.
С чего это вдруг? Вообще непонятно. Скорость исполнения кода, делающего арифметические вычисления, в kernel space и в user space одинакова.
я не буду с тобой спорить за проф. работу со звуком, так как вообще в этом ничего не понимаю, но отвечу за ту область, в которой работал
при разработки сетевых сервисов, код размещенный в ядре не совершает переключений контекста и вцелом выполняется заметно быстрее. именно по этой причине в ядро включили TLS.