| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > *NIX и Hardware > [LXDE] две звуковые карты |
| Автор: CompWorm 10.5.2011, 12:55 | ||
| Привет всем! имеем две звуковые карты - встроенная (intel) и внешняя (SoundBlaster). /proc/asound/cards
при запуске LXDE выбирает одну из них в зависимости от погоды на марсе и шлёт туда звук. в alsamixer я не могу найти как выставить дефолтовую карту... вопросы: 1) как выбрать звуковую карту по умолчанию? 2) бонусный вопрос: как направить вывод на одну карту, а вход на другую? 3) поясните вцелом, мне непутёвому, почему в один дистрибутив пихают аш 3 аудио системы gstreamer, pulseaudio и alsa? ониж всё время ссорются и не могут поделить одеяло |
| Автор: bilbobagginz 11.5.2011, 23:25 |
| все вопросы отпадут, если научится ваш дистриб обертывать ALSA с помощью PulseAudio. и использовать в последствии виртуальное устройство pulse. это если не мешают некоторые лаги с пульсом. Если мешают - пользуйтесь OSS v.4 там все намного проще чем в альсе. на 3) одним словом причина всему - бардак. двумя словами: бардак из-за несовместимости. Некоторые пользовательские программы хотят ALSA другие некоторые Pulse ну и совсем некоторые - GStreamer (или Phonon) Bottom-UP: В самом низу есть железки. над ними есть драйвера. в линукс системе может быть только одна технология драйверов аудио - либо ALSA, либо OSS (v.3 или v.4) Над драйверами вешаются пласты абстракции доступа к железкам (ну и обычно лагов). альса вся такая добрая, белая, пушистая, GPLьная и без нужды нудная для разработчиков. но "это же наше ЖоПэЛэ" OSS весь такой навороченный, официальный с поддержкой нескольких профи устройств, но с более ограниченным списком железяк. и API очень удобным и простым в использовании. А линуховый коммьюнити (а точнее ядренный девелоперский коммьюнити) немного точит зуб на OSS, из-за того, что те не открыли код сразу же. стоит приметить, что есть чипсеты всех премутаций наличия драйверов:
из тех чипсетов для которых есть и то и это: одни работают лучше под OSS, другие под ALSA, третьи и там и сям, а четвертые глючат и там и там. ессно, по линуховой традиции для своей карты ответ определяется google-foo + методом научного тыка. Далее Pulse: это неплохая идея, для десктопа: устройства - виртуальные. с одного на другое можно перетягивать/переключать потоки аудио. для музыкальной работы эта идея - никчемная: дополнительный уровень абстракции, дополнительные лаги, и никакого сока для музыканта в переброске аудио потока с карты на карту "в прямом эфире" - нет. Для таких поделок как скайп - пульс сойдет (правда выхода и нет GSTreamer - это гномовская попытка заменить ужасно глючный проект ESD (тем самым обернуть сложный API ALSA более удобным конвеерным методом, API стримера - очень прикольный). Вкратце:
Надо читануть про ~/.asoundrc Кстати про ESD. изначально это был один из первых аудио-серверов. появился как часть Enlightenment, и как-то "внезападно" оказался частью гномяры.... потом поняли гномисты глубину ЖоПэЛэ, в которое они попали, и создали довольно неплохую альтернативу. |
| Автор: CompWorm 20.5.2011, 08:01 |
| таки... это... а выставить то как основную хотя бы для альсы? |
| Автор: bilbobagginz 20.5.2011, 09:03 |
.asoundrc |
| Автор: CompWorm 21.5.2011, 11:15 |
| bilbobagginz, спасибо! ответ на вопрос как установить дефолт и как сделать вывод на разные устройства я нашёл вот по этой ссылке http://alsa.opensrc.org/.asoundrc вывод на разные устройства делается путём создания виртуальных устройств, что описано так же по ссылке. вопрос решён, всем спасибо. |