Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет Misha Verbitsky ([info]tiphareth)
@ 2008-10-30 22:36:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Настроение: sick
Музыка:Militia Christi - Non Timor Domini Non Timor Males
Entry tags:linux

настройка микрофона
Запишу, чтоб не забыть.
Сегодня настраивал у себя Skype.
Микрофон не работал. Провел немало времени,
пока не починил.

Идиотская система Alsa Sound имеет у себя
миксер, и к нему (за непонятно каким чертом)
штук 30 разнообразных параметров.
Смотреть их можно через графические
системы (alsamixer и alsamixergui)
и через феноменально невнятную консольную
приблуду, которая называется amixer.
Для каждой звуковой карты все эти значения
свои, и выставляются от балды, причем
alsamixer и alsamixergui показывают совершенно
не все значения.

Вот результат выдачи amixer у меня на лаптопе.

#amixer scontents
Simple mixer control 'Headphone',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 63
Mono:
Front Left: Playback 49 [78%] [-18.00dB] [on]
Front Right: Playback 49 [78%] [-18.00dB] [on]
Simple mixer control 'PCM',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 31
Mono:
Front Left: Playback 30 [97%] [10.50dB] [on]
Front Right: Playback 30 [97%] [10.50dB] [on]
Simple mixer control 'Front',0
Capabilities: pvolume pswitch
Playback channels: Front Left - Front Right
Limits: Playback 0 - 63
Mono:
Front Left: Playback 34 [54%] [-40.50dB] [on]
Front Right: Playback 34 [54%] [-40.50dB] [on]
Simple mixer control 'Front Mic',0
Capabilities: pvolume pswitch cswitch cswitch-joined cswitch-exclusive
Capture exclusive group: 0
Playback channels: Front Left - Front Right
Capture channels: Mono
Limits: Playback 0 - 31
Mono: Capture [off]
Front Left: Playback 31 [100%] [12.00dB] [on]
Front Right: Playback 31 [100%] [12.00dB] [on]
Simple mixer control 'Front Mic Boost',0
Capabilities: volume
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 3
Front Left: 2 [67%]
Front Right: 2 [67%]
Simple mixer control 'Line',0
Capabilities: pvolume pswitch cswitch cswitch-joined cswitch-exclusive
Capture exclusive group: 0
Playback channels: Front Left - Front Right
Capture channels: Mono
Limits: Playback 0 - 31
Mono: Capture [off]
Front Left: Playback 25 [81%] [3.00dB] [on]
Front Right: Playback 25 [81%] [3.00dB] [on]
Simple mixer control 'CD',0
Capabilities: pvolume pswitch cswitch cswitch-joined cswitch-exclusive
Capture exclusive group: 0
Playback channels: Front Left - Front Right
Capture channels: Mono
Limits: Playback 0 - 31
Mono: Capture [off]
Front Left: Playback 22 [71%] [-1.50dB] [on]
Front Right: Playback 22 [71%] [-1.50dB] [on]
Simple mixer control 'Mic',0
Capabilities: pvolume pswitch cswitch cswitch-joined cswitch-exclusive
Capture exclusive group: 0
Playback channels: Front Left - Front Right
Capture channels: Mono
Limits: Playback 0 - 31
Mono: Capture [on]
Front Left: Playback 22 [71%] [-1.50dB] [on]
Front Right: Playback 23 [74%] [0.00dB] [on]
Simple mixer control 'Mic Boost',0
Capabilities: volume
Playback channels: Front Left - Front Right
Capture channels: Front Left - Front Right
Limits: 0 - 3
Front Left: 2 [67%]
Front Right: 2 [67%]
Simple mixer control 'IEC958',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'IEC958 Playback Source',0
Capabilities: enum
Items: 'PCM' 'ADC'
Item0: 'PCM'
Simple mixer control 'PC Speaker',0
Capabilities: pvolume pvolume-joined pswitch pswitch-joined
Playback channels: Mono
Limits: Playback 0 - 15
Mono: Playback 9 [60%] [-18.00dB] [on]
Simple mixer control 'Aux',0
Capabilities: pvolume pswitch cswitch cswitch-joined cswitch-exclusive
Capture exclusive group: 0
Playback channels: Front Left - Front Right
Capture channels: Mono
Limits: Playback 0 - 31
Mono: Capture [off]
Front Left: Playback 24 [77%] [1.50dB] [on]
Front Right: Playback 25 [81%] [3.00dB] [on]
Simple mixer control 'Mono',0
Capabilities: pvolume pvolume-joined pswitch pswitch-joined
Playback channels: Mono
Limits: Playback 0 - 63
Mono: Playback 34 [54%] [-40.50dB] [on]
Simple mixer control 'Capture',0
Capabilities: cvolume cswitch
Capture channels: Front Left - Front Right
Limits: Capture 0 - 15
Front Left: Capture 0 [0%] [0.00dB] [on]
Front Right: Capture 0 [0%] [0.00dB] [on]
Simple mixer control 'Mix',0
Capabilities: cswitch cswitch-joined cswitch-exclusive
Capture exclusive group: 0
Capture channels: Mono
Mono: Capture [off]
Simple mixer control 'Mix Mono',0
Capabilities: cswitch cswitch-joined cswitch-exclusive
Capture exclusive group: 0
Capture channels: Mono
Mono: Capture [off]
Simple mixer control 'Caller ID',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Digital',0
Capabilities: cvolume
Capture channels: Front Left - Front Right
Limits: Capture 0 - 120
Front Left: Capture 60 [50%] [0.00dB]
Front Right: Capture 60 [50%] [0.00dB]
Simple mixer control 'Off-hook',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]


Ну так вот, надо посмотреть, какие
значения миксера поддерживает ваша карта
( amixer scontrols ), потом в одном окне
включить arecord -vv -fdat test.wav
(эта программа в уголке рисует громкость
улавливаемого звука), и затем менять
значения параметров, произвольным образом,
типа
amixer sset "Mic" cap
amixer sset 'Capture Mux' 4
всякий раз проверяя в окне с arecord,
не заработал ли микрофон.

Можно попробовать сделать то же самое
через alsamixer, но с моей картой это
не помогло, потому что соответствующий
регистр в alsamixer не отображался.

Меня спасло
amixer sset "Capture" 100
amixer sset "Capture" cap

Для жертв подобной коллизии: Toshiba Satellite U200,
карта Intel HDA (Intel Corporation 82801G (ICH7 Family)
High Definition Audio Controller)

Alsa sound сосет тотально, и это все знают.
Где-то на сети есть файл, где излагаются
предпосылки, очень увлекательно.

Привет



(Читать комментарии) - (Добавить комментарий)


[info]yushi
2008-11-01 04:27 (ссылка)
Сама идея общесистемной шины сообщений хороша, я вообще очень люблю такие штуки (Erlang тот же). Дизайн… странен, скажем так.

Почему D-Bus это плохо, и как можно сделать хорошо, уже написал человек, в разы более компетентный, чем я: http://vitus-wagner.livejournal.com/293683.html
([info]vitus-wagner@lj вообще много писал про D-Bus в последнее время, там вокруг дофига постов примерно про то же).

UUID'ы плохи тем, что 1)ради удобства 10% пользователей сделали нечеловекочитаемым один из главных конфигов системы, 2)завязали этот конфиг на нечеловекочитаемую информацию: где у меня /dev/hda, я могу сказать, просто заглянув в системный блок; а вот где у меня в машине устройство "3e6be9de-8139-11d1-9106-a43f08d823a6"? Как я могу понять, есть оно там или нет его вообще? Как я узнаю его UUID без работающей полноценной ОС (например, редактируя fstab из какого-нибудь бедного спасательного окружения)?

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]pzz
2008-11-01 05:13 (ссылка)
У меня fstab выглядит вот так:

LABEL=/ / ext3 defaults 1 1
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/sda1 swap swap defaults 0 0
LABEL=/archive /archive ext3 defaults 1 1

(как воткнуть в ЖЖ кусок текстового файла, чтобы он выглядел, как plain text, т.е. фиксорованным фонтом и сохраняя количество пробелов?)

Никакох уидов, заметьте. А я его не сам сочинил, а Федора его из себя выдавила.

Что до д-баса, текстовый формат, который предлагает Витус, неудобно парсить на Си. Сокетов, которые ему нужны, в готовом виде в ядре нет. А если уж их делать, то лучше туда же засунуть и роутинг, т.е. обойтись без демона. Запросы должны содержать ID, и ответ должен на него ссылаться, чтобы можно было запендюрить больше одного запроса одновременно. От бродкастов надо не отписываться, а на них подписываться - а то пока вы здороваетесь с сервером, на вас может нападать изрядное количество бродкастов. И наконец, источники бродкастов должны иметь при желании нотификации о новых подписчиках, чтобы можно было им рассказать то, что они пропустили - это заметно упрощает написание подписчиков при очень незначительном усложнении бродкастеров.

Да, и неплохо было бы в этой конструкции неймспейсы какие-нибудь приватные завести, чтобы это хозяйство 1) можно было использовать приватно для общения в группе процессов, и больше одного юзера могли запустить такую группу, не мешаясь друг другу 2) чтобы можно было устроить между моими процессами коммуникацию, которую не могут подглядывать все подряд

(Ответить) (Уровень выше)


(Читать комментарии) -