|
4. УстановкаНастройка Linux для поддержки звука включает следующие этапы:
Если вы работаете в Red Hat Linux, то там есть утилита, названная
Если 4.1 Установка звуковой картыДля установки оборудования следуйте инструкциям производителя или заставьте продавца установить карту. Старые карты обычно имели переключатели или наборы переключателей для установки IRQ, каналов DMA и т.п.; запишите используемые значения. Если вы не уверены, используйте значения по умолчанию. Старайтесь, если возможно, избегать конфликтов с другими устройствами (например картами ethernet, адаптерами SCSI, последовательными и параллельными портами). Обычно вы должны использовать те же самые установки для портов ввода/вывода, IRQ и DMA, которых работают под DOS. Однако в некоторых случаях (особенно с PnP картами) вы можете использовать другие настройки, чтобы заставить карту работать под Linux. Нужно провести несколько экспериментов. 4.2 Настройка Plug and PlayСейчас большинство звуковых карт использует протокол Plug and Play для установки параметров адресов ввода/вывода, прерываний и каналов DMA. Если у вас одна из старых карт, которая использует фиксированные параметры или переключатели на плате, то вы можете перейти к следующему разделу. И в версии 2.2 ядра Linux ещё не имеется полной поддержки Plug and Play. Наилучшим способом решения этой проблемы будет использование пакета isapnp, который поставляется с большинством дистрибутивов Linux (или вы можете скачать его с сервера Red Hat http://www.redhat.com/). Сначала посмотрите документацию на ваш дистрибутив Linux. В нем уже может установлена поддержка Plug and Play, или она может работать чуть-чуть по другому, чем описано здесь. если вам необходимо настроить ее самому, то подробности этого процесса могут быть найдены в справочных страницах утилит isapnp. Вкратце процесс состоит в следующем:
Если по некоторым причинам вы не можете или не желаете использовать пакет isapnp, то есть несколько других способов. Если вы используете карту при работе в Microsoft Windows 95 или 98, то вы можете использовать менеджер устройств для настройки карты, а затем программно перезагрузиться в Linux, используя программу LOADliN. Убедитесь, что и Windows и Linux используют одни и те же параметры карты. Если вы используете карту при работе в DOS, то вы можете использовать
утилиту Некоторые из драйверов звуковых карт включают программное обеспечение, которое необходимо для инициализации Plug and Play для карты. О деталях проконсультируйтесь в документации по драйверу карты. 4.3 Настройка ядраКогда вы устанавливаете Linux, вы, вероятно, используете готовое ядро. Эти ядра обычно не обеспечивают поддержку звука. Желательно самим перекомпилировать ядро с необходимыми вам драйверами. Вы можете также пересобрать ядро для его обновления или чтобы освободить память, уменьшая размер ядра. Later, when your sound card is working, you may wish to rebuild the kernel sound drivers as modules. Вы должны проконсультироваться с Linux Kernel HOWTO для получения детальной информации о компиляции ядра. Я буду упоминать здесь только вещи, специфичные для звуковых карт. Если вы до этого никогда не настраивали ядро для поддержки звука, то хорошей идеей будет прочитать соответствующие файлы документации, поставляемые с драйвером звука, особенно информацию относящуюся к вашему типу карты. Файлы могут быть найдены в каталоге с документацией по ядру, обычно они устанавливаются в каталог /usr/src/linux/Documentation/sound. Если у вас нет этого каталога, то вы либо используете очень старое ядро, либо вы не установили исходные тексты ядра. Следуйте обычной процедуре построения ядра. В настоящее время существует три интерфейса процесса конфигурации. Графический интерфейс, который запускается под управлением X11 может быть запущен командой "make xconfig". Управляемая меню система, которая требует только текстовый экран вызывается командой "make menuconfig". Оригинальный метод, используя "make config", запускает простой текст-ориентированный интерфейс. При настройке ядра представляется большой выбор типов имеющихся звуковых карт, и параметров используемых драйверов. Контекстная помощь внутри утилиты настройки должна обеспечивать объяснение каждого их параметров. Выберите необходимые параметры. После настройки параметров, вы должны откомпилировать и установить новое ядро, как это описано в Kernel HOWTO. 4.4 Создание файлов устройстваДля правильного проведения операций, для звукового драйвера должны быть созданы файлы устройства. По умолчанию они создаются во время установки вашей системы Linux. Быстрая проверка может быть произведена с помощью команды, показанной ниже. Если вывод такой же как показан (дата будет отличаться), тогда файлы устройства почти в норме. % ls -l /dev/sndstat crw-rw-rw- 1 root root 14, 6 Apr 25 1995 /dev/sndstat Заметим, что наличие правильных файлов устройства не гарантирует ничего. Драйвер должен быть загружен или вкомпилирован в ядро до того как устройство будет работать (больше об этом — далее). В редких случаях, если вы считаете что файлы устройства являются неправильными, вы можете заново создать их. Большинство дистрибутивов Linux имеет скрипт /dev/MAKEDEV, который может быть использован для этой же цели. 4.5 Загрузка Linux и тестирование установкиСейчас вы должны быть готовы к загрузке нового ядра и тестирования звукового драйвера. Следуйте обычной процедуре инсталляции и загрузите новое ядро (сохраните старое ядро на случай возникновения проблем). В течение загрузки следите за сообщениями, которые следуют после включения питания (если они прокручиваются слишком быстро, чтобы прочитать их, вы можете заново просмотреть их командой Sound initialization started <Sound Blaster 16 (4.13)> at 0x220 irq 5 dma 1,5 <Sound Blaster 16> at 0x330 irq 5 dma 0 <Yamaha OPL3 FM> at 0x388 Sound initialization complete Они должны соответствовать вашему типу карты и установкам переключателей (если они есть). Заметим, что вышеприведенные сообщения не появляются, когда вы используете
звуковой драйвер в виде загружаемого модуля ядра (до тех пор пока вы не
разрешите его, например командой Когда драйвер звука находится в ядре, должны появляться сообщения Если ничего не появляется между строками Драйвер может также выдавать некоторые сообщения об ошибках и предупреждения в процессе загрузки. Наблюдайте за ними в процессе первой загрузки после настройки звукового драйвера. Далее вы должны проверить файл устройства /dev/sndstat. Чтение файла статуса звукового драйвера должно дать дополнительную информацию был ли драйвер звуковой карты инициализирован правильно. Простой вывод должен выглядеть подобно этому:
Команда, приведенная выше, может выдавать некоторые сообщения об ошибках. "No such file or directory (Нет такого файла или директории)" сообщает, что вам нужно создать файлы устройства (смотри раздел 4.3). "No such device (Нет такого устройства)" означает, что звуковой драйвер не был загружен или вкомпилирован в ядро. Возвратитесь к разделу 4.2 и исправьте это. Если строки в секции "Card config:" файла Теперь вы готовы к проигрыванию простых звуковых файлов. Возьмите простой звуковой файл и пошлите его на звуковое устройство для быстрой проверки вывода звука, например
(Убедитесь, что вы не опустили ">" в командной строке, приведенной выше). Заметим, что в общем, использование Эти команды работают, если по крайней мере одно устройство перечислено в
разделе аудио-устройств файла Если вышеприведенные команды возвращают "I/O error (Ошибка ввода/вывода)", вы должны посмотреть в конце сообщений ядра, используя команду "dmesg". Вероятно, что сообщение об ошибке будет напечатано там. Часто бывает такое сообщение "Sound: DMA (output) timed out - IRQ/DRQ config error? (Звук: время ожидания DMA (вывод) -- ошибка настройки IRQ/DRQ?)". Вышеприведенное сообщение означает, что драйвер не получил от устройства звука ожидаемого прерывания. В большинстве случаев это означает, что сконфигурированы IRQ или каналы DMA с которыми драйвер не может работать. Лучший выход чтобы заставить его работать -- испробовать все возможные номера DMA и IRQ, поддерживаемые устройством. Другая возможная причина -- устройство не совместимо с устройством для которого сконфигурирован драйвер. Это довольно распространенный случай, когда считающиеся "SoundBlaster (Pro/16) compatible" звуковые карты не работают с драйвером SoundBlaster. В этом случае вы должны попытаться найти устройство с которым совместима ваша звуковая карта (например запросом в группу новостей comp.os.linux.hardware). Некоторые простые звуковые файлы могут быть получены с ftp://tsx-11.mit.edu/pub/linux/packages/sound/snd-data-0.1.tar.Z Теперь вы можете проверить запись звука. Если вы имеете возможность ввода звука, вы можете проделать быструю проверку этого, используя команды, такие как следующие:
Очевидно, что, чтобы это работало вам нужен микрофон, соединенный к звуковой карте и вы должны говорить в него. Вам также нужна программа микширования, чтобы установить микрофон как устройство ввода и выровнять уровни усиления записи. Если тесты прошли, вы можете быть уверенны, что звуковые устройства ЦАП и АЦП, и программное обеспечение работают. Если вы имеете проблемы, смотрите следующий раздел этого документа. 4.6 Разрешение проблемЕсли вы всё ещё сталкиваетесь с проблемами после выполнения инструкций, изложенных в этом документе, здесь изложены некоторые вещи, которые необходимо проверить. Проверки изложены в порядке возрастания сложности. Если проверка не удалась, решите эту проблему до перехода к следующей стадии. Шаг 1: Убедитесь, что вы действительно запустили скомпилированное ядроВы можете проверить дату ядра, для того чтобы увидеть, действительно ли вы запустили ядро, которое вы скомпилировали с поддержкой звука. Вы можете
сделать это с помощью команды % uname -a Linux fizzbin 2.2.4 #1 Tue Mar 23 11:23:21 EST 1999 i586 unknown или просмотрев файл /proc/version: % cat /proc/version Linux version 2.2.4 (root@fizzbin) (gcc version 2.7.2.3) #1 Tue Mar 23 11:23:21 EST 1999 Если дата не соответствует той, когда вы компилировали ядро, значит вы всё ещё работаете со старым ядром. Действительно ли вы перезагрузились? Если вы используете lilo, действительно ли вы переставили его (обычно запуском lilo)? Если вы загружаетесь с дискеты, создали ли вы новый загрузочный диск и использовали его во время загрузки? Шаг 2: Убедитесь, что звуковой драйвер встроен в ядроСамый лёгкий путь проверить это -- просмотреть вывод
Шаг 3: Обнаруживает ли ядро вашу звуковую карту во времязагрузки?Убедитесь, что звуковая карта обнаруживается во время загрузки ядра. Вы
должны следить за сообщением при загрузке. Если сообщения ушли за пределы
экрана, вы обычно можете просмотреть их используя команду % dmesg или % tail /var/log/messages Если ваша карта не нашлась, значит что-то неправильно. Убедитесь, что она действительно установлена. Если звуковая карта работает под DOS, то вы точно убедитесь, что оборудование работает, так что проблемы, скорее всего, с настройкой ядра. Либо вы настроили свою карту, указав неправильный тип или задав неправильные параметры, или ваша карта не совместима с любым звуковым драйвером Linux. Ещё может быть, что у вас звуковая карта Если ваша карта не перечислена в этом документе, возможно, что драйвер Linux не поддерживает её. Вы можете проверить это с помощью некоторых ссылок, перечисленных в конце документа. Шаг 4: Можете вы считывать данные с устройства dsp?Попытайтесь считать с устройства Если она не работает, вероятно, что проблема в конфликте IRQ или DMA или некотором роде несовместимости оборудования (устройство не поддерживается Linux или драйвер настроен для неправильного устройства). Маловероятная возможность -- сломанное оборудование. Постарайтесь протестировать звуковую карту под DOS для исключения этой возможности. Когда все эти шаги дали сбойЕсли вы всё ещё имеете проблемы, здесь некоторые заключительные пожелания о вещах, которые надо постараться сделать:
|
|
Распространение материалов сайта означает, что распространитель принял условия лицензионного соглашения. Идея и реализация: © Владимир Довыденков и Анатолий Камынин, 2004-2024 |
Социальные сети