Как исправить проблемы со звуком между Skype 2.0 и Pulseaudio на Fedora 9
Version 1.0
Author: Oliver Meyer
1 Пользователи и группы
Первый шаг — добавить вашу учётную запись в группы Pulseaudio, чтобы процессы могли использовать приоритеты реального времени и доступ к устройствам. В GNOME это делается через системные настройки пользователей и групп.

Вам потребуется ввести пароль root при изменении групп.

Откройте свойства вашей учетной записи, выберите раздел Groups и добавьте пользователя в группы pulse, pulse-rt и pulse-access.

Совет для проверки: после изменения групп выйдите из сеанса и войдите заново; выполните в терминале команду id или groups, чтобы убедиться, что изменения применились.
2 Настройки Skype
Откройте параметры Skype и перейдите в аудио. Для всех устройств вывода (динамики, звуковые устройства) выберите pulse. Не устанавливайте микрофон на pulse — это может сильно повысить загрузку CPU. Я использовал стандартную бинарную версию Skype (не статическую OSS-версию), так как у статической версия качество звука было хуже.

Важно: если вы используете внешний USB-микрофон или специализированную звуковую карту, проверьте совместимость и попробуйте альтернативные входы в Skype.
3 Настройки Pulseaudio
Характерная проблема: прерывания и треск появляются только в Skype, другие приложения работают нормально. Частая причина — способ ресемплинга и приоритеты планировщика для аудиопроцессов. Исправление — отредактировать /etc/pulse/daemon.conf и добавить настройки для улучшения качества и своевременности обработки звука.
Сделайте следующие действия от root:
su -
%root_password%
vi /etc/pulse/daemon.confДобавьте в конец файла следующие строки:
high-priority = yes
nice-level = -11
realtime-scheduling = yes
realtime-priority = 5
resample-method = src-sinc-best-qualityПосле внесения изменений выйдите из сеанса и войдите снова или перезапустите пулсаудио. На многих системах это заметно уменьшает дребезг и прерывания: stuttering сводится к нулю, а треск — существенно снижается.
Важно: опция realtime-scheduling и отрицательный nice-level требуют, чтобы пользователь был в соответствующих группах (pulse-rt) и чтобы политика безопасности (например limits.conf) позволяла realtime-процессам работать. Если после изменений возникают проблемы со стабильностью, понизьте realtime-priority или верните настройки по умолчанию.
Устранение неполадок
Если после описанных шагов проблема сохранилась, выполните последовательные действия для диагностики:
- Проверьте загрузку CPU во время звонка (top, htop). Если CPU близок к 100%, найдите процесс, потребляющий ресурсы.
- Отключите аппаратное ускорение и прочие фоновые аудиопроцессы. Запустите Skype в терминале и смотрите вывод.
- Попробуйте временно изменить resample-method на менее «тяжёлый» (например, src-sinc-medium-quality) — если треск исчезает, проблема может быть в ресурсах CPU.
- Используйте pasuspender (если установлен) для временного отключения pulseaudio и теста работы Skype напрямую с ALSA: pasuspender – skype (или соответствующая команда для вашей версии Skype). Это покажет, связан ли дефект непосредственно с Pulseaudio.
- Проверьте dmesg и /var/log/messages на предмет ошибок USB или звукового драйвера.
Когда становится хуже: если звук стал хуже после обновлений пакетов, рассмотрите откат pulseaudio или использование другой сборки Skype.
Альтернативные подходы
- Полностью отключить Pulseaudio и заставить Skype работать с ALSA напрямую (подходит для экспериментов, но лишает системы удобств Pulseaudio).
- Использовать pasuspender для временной приостановки Pulseaudio при запуске Skype.
- Попробовать другую сборку Skype (если доступна) или обновить Pulseaudio и драйверы звуковой карты.
Короткая методология диагностики
- Проверить, повторяется ли проблема в других аудиоприложениях.
- Проверить группы и права пользователя.
- Изменить настройки daemon.conf, перезапустить сеанс.
- Тестировать pasuspender/ALSA, анализировать нагрузку CPU и логи.
Контрольный список (роль — пользователь)
- Добавлен в группы pulse, pulse-rt, pulse-access
- Перезаписаны настройки в /etc/pulse/daemon.conf
- Установлены устройства воспроизведения Skype на pulse
- Выйти и войти в систему после изменений
Контрольный список (роль — системный администратор)
- Проверил limits.conf и политики для realtime-процессов
- Проверил наличие pasuspender и логов ядра
- Оценил влияние изменений на другие мультимедийные службы
Краткий глоссарий
- Pulseaudio — звуковой сервер для Linux, обеспечивающий микширование и управление потоками.
- resample-method — метод ресемплинга, влияющий на качество и нагрузку CPU.
- realtime-scheduling — приоритет планировщика для минимизации задержек в аудио.
Ссылки
- Pulseaudio: http://www.pulseaudio.org/
- Skype: http://www.skype.com/intl/de/download/skype/linux/
Итог
Если вы выполните шаги в этой инструкции — добавите пользователя в группы, установите вывод Skype на pulse и поменяете параметры в /etc/pulse/daemon.conf — вероятность исчезновения прерываний и треска в Skype будет высокой. Если проблемы останутся, используйте раздел «Устранение неполадок» и альтернативы, чтобы диагностировать узкое место.
Important: всегда делайте резервную копию изменяемых конфигурационных файлов и имейте план отката.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента