linux | arts & xmms
Пересобрать XMMS-Arts плагин?
удаляй arts на фиг!
что юзать и почему?
да, я тоже подумал надо новый плагин скачать.
за чем тебе этот arts?
я первый спросил
(artsd - это типа sound-server и она занимает звуковое устройство, все проги дожны отправить данные до устройства через него)
в ФриБСД можно настроить так чтобы ядро занимает mixer-ом и artsd теперь лищь контроллирует только один звуковой канал, а другие проги (часто консольные) могут нормально читать дефольтовый девайс (другой канал)
А в линуксе можно так настроить?
эё, о линуксе я не знаю
Алса нах.
Что алса?
рулит нах
оно да, но само микшировать вроде как не умеет
А как же dmix plugin ?
Выруби это артс нахрен, без него всё прекрасно работает, а сним одни проблемы. Во всех линуксовых форумах рекомендуют...
И купи нормальную звуковуху, ибо software mixing не рулит.
hardware рулит ещё меньше
это почему еще ?
но точно не на распространённых звуковухах:
- простое переполнение при суммировании сигналов приводит к хрипу, никак на это не повлиять
(без опять же программного уменьшения громкости сигналов)
- ресемплинг кривой, о чём писали недавно
да, dmix похоже прикольная штука
в ФриБСД можно настроить так чтобы ядро занимает mixer-ом и artsd теперь лищь контроллирует только один звуковой канал, а другие проги (часто консольные) могут нормально читать дефольтовый девайс (другой канал)
Можно поподробней ?
Как сие реализовать ?
вроде бы как
в БСД 5.х и безhw.snd.maxautovchans всё работает
Понял, типа xmms, mplayer, arts, etc. кидать на разные каналы. В ядре чего-нибудь надо менять ?
В ядре ничего менять не надо.
Спасибо за помощь.
Видать, невнимательно я читал Хэндбук %) :::
16.2.3 Utilizing Multiple Sound Sources
Contributed by Munish Chopra.
It is often desirable to have multiple sources of sound that are able to play simultaneously, such as when esound or artsd do not support sharing of the sound device with a certain application.
FreeBSD lets you do this through Virtual Sound Channels, which can be set with the sysctl(8) facility. Virtual channels allow you to multiplex your sound card's playback channels by mixing sound in the kernel.
To set the number of virtual channels, there are two sysctl knobs which, if you are the root user, can be set like this:
# sysctl hw.snd.pcm0.vchans=4
# sysctl hw.snd.maxautovchans=4
The above example allocates four virtual channels, which is a practical number for everyday use. hw.snd.pcm0.vchans is the number of virtual channels pcm0 has, and is configurable once a device has been attached. hw.snd.maxautovchans is the number of virtual channels a new audio device is given when it is attached using kldload(8). Since the pcm module can be loaded independently of the hardware drivers, hw.snd.maxautovchans can store how many virtual channels any devices which are attached later will be given.
If you are not using devfs(5 you will have to point your applications at /dev/dsp0.x, where x is 0 to 3 if hw.snd.pcm.0.vchans is set to 4 as in the above example. On a system using devfs(5 the above will automatically be allocated transparently to the user.
ну да. просто сделал: sysctl hw.snd.pcm0.vchans=4 и hw.snd.maxautovchans=4. кстати почти все проги читают /dev/dsp aka /dev/dsp0.0 по дефольту, так что нужно указать чтобы artsd занять что-то другой типа dsp0.1.
# cat ~/.asoundrc
pcm.via82xx {
type plug
slave.pcm "dmixer"
}
pcm.dmixer {
type dmix
ipc_key 1024
slave {
pcm "hw:1,0"
period_time 0
period_size 1024
buffer_size 4096
rate 44100
}
bindings {
0 0
1 1
}
}
ctl.dmixer {
type hw
card 0
}
далее, делаю, как советуют
Now try:
aplay -f cd -D default test.wav
on multiple consoles.
но у меня смешивания нет, то есть новый играет только после старого..
у меня
alsa-1.0.4
Громкость отдельно можно менять ?
mixer, как я понимаю, меняет ее уже на аппаратном уровне.
странная хрень
В 5-ой ветке, как я понимаю, это прозрачно для пользователя.
Вопрос был не об этом.
Если у тебя есть лучшие варианты - буду только рад !
Tot есть такая хрень, что не все проги заточены под звуковые сервера.
насчёт кривых приложений - ну вот realplay вообще только /dev/dsp вроде как умеет,
потому что кал, и что теперь делать?
Проводить микширование в ядре и выдавать приложениям любой свободный канал.
Если у тебя тормозит artsd, сделай апгрейд или купи многоканальную звуковуху
Или любых других звуковых серверов ?
большинство прог либо не умеют делать resampling, либо делают его неправильно (линейная интерполяция)
прог, которые правильно делают ресемплинг - очень мало, считанные единицы. Например те же плееры xmms или mplayer не умеют - а именно от них это больше всего и надо.
звуковухи, которые делают его правильно все же чаще встречаются - например тот же Audigy 2
думаю с hardware resampling качество при среднем каждодневном прослушивании будет лучше, чем с software
а этот ваш миксер в FreeBSD умеет ресамплинг делать? и как он его делает? уж не линейной ли интерполяцией?
в ФриБСД можно настроить так чтобы ядро занимает mixer-ом и artsd теперь лищь контроллирует только один звуковой канал, а другие проги (часто консольные) могут нормально читать дефольтовый девайс (другой канал)
Можно про это поподробнее? Какие бонусы от этого, кроме возможности для других прог писать в дефолтовый девайс? А то у меня все равно таких прог нет и тратить пару часов на настройки только для этого мне не хочется. А вот если окажется, что есть и другие плюсы, типа улучшения качества, то заняться стоит.
What is resampling ?
а что до сих пор нет плагина к алсе для ресэмплинга правильного? это вроде единственное, чего недостаёт
на практике, с существующим софтом и обычной звуковухой - аппаратный микшер удобнее, если он есть
вроде у него линейная интерполяция для pcm девайс.
ну и нах он такой нужен тогда? только звук портит
хмм, у меня AC97 поэтому мне всеравно . А для "настоящих" девайсов есть и отдельные драйверы.
Угу, например для Creative Sound Blaster Live!
ё..., я понял. С креативом в Фри уже идет отдельный разговор
Оставить комментарий
dgaf
после установки arts 1.2.2 перестал играть через него xmmsсервер нормально запущен (кстати, где можно подредактировать строчку его запуска? кроме kcontrol) все остальные проги через него играют. а xmms виснет и вылетает.
есть идеи из-за чего это может быть?