Focusrite Saffire-Le (FIRE-WIRE) под LINUX на примере ZENWAL

Начало Форум Звук Аппаратное обеспечение Focusrite Saffire-Le (FIRE-WIRE) под LINUX на примере ZENWAL

В этой теме 1 ответ, 1 участник, последнее обновление  dt 8 года/лет, 5 мес. назад.

Просмотр 2 сообщений - с 1 по 2 (из 2 всего)
  • Автор
    Сообщения
  • #1302

    dt
    Участник

    Сказ о том как запустить firewire-звуковуху Focusrite Saffire-LE под LINUX (дистрибутив ZENWALK)

    Для работы Focusrite Saffire-le под LINUX прежде всего подребуются драйвера FFADO (Free Firewire Audio Drivers) c ними идет и FFADO Mixer.
    FFADO-драйвер позволяет работать с карточкой через JACK, что собственно мне и нужно было. Но поставить эти драйвера не достаточно.
    Выяснилось, что требуется запуск некоего dbus-server’а. Dbus-server запускается командой «ffado-dbus-server jackd», где аргумент «jackd» означает, что в качестве этого dbus-server’а используется сервер jackd (а то может быть и jackstart и др. — все это тот же JACK). Сам JACK можно запустить либо через JackCtl, либо при помощи команды jackd + необходимые аргументы (а если его запускать, например jackstart’ом , то команда «ffado-dbus-server» пишется уже с аргументом «jackstart» — в чем разница между jack’ом и jackstart’ом не знаю). Еще для нормальной работы со звуком желательно установит real-time ядро. Впросем про JACK и RT-ядро тут наверное все знают…

    Итак: дистрибутив ZENWALK-6.4, цель заставить работать Focusrite Saffire-LE через JACK.
    В ZENWALK’е для управления пакетами и их установки с ZEN’овских репозиториев ипользуется NetPkg. С его помощью я все что нужно и ставил.
    Поставил [b:2un1qpil]libffado[/b:2un1qpil] (версия 2.0.0 — build 64.1) со всеми зависимостями, включая libraw1394;
    посмотрел — такие пакеты как:
    [b:2un1qpil]dbus;
    dbus-glib;
    dbus-python[/b:2un1qpil] — уже стоят;
    [b:2un1qpil]libraw1394 [/b:2un1qpil]- тоже стоит (он был в списке «отсутствующих или обновленных зависимостей» к libffado);
    [b:2un1qpil]libavc1394 [/b:2un1qpil]- не стоит, но отдельно его не ставил, т.к. его потребует при установке JACK;
    Установил и сам JACK и qjackctl со всеми зависимостями (почему-то я не отметил в какой именно момент я его установил, ну да это и не важно)
    При попытке запустить ffado-mixer началась ругань про отсутствие PyQt.4 — установил[b:2un1qpil] PyQt[/b:2un1qpil] (версия4.7.3 — build 1);
    потом потребовался еще и sip — поставил [b:2un1qpil]sip [/b:2un1qpil](версия 4.10.2 — build 1);
    Теперь все заработало!

    Поставил ARDOUR — все OK (только он ругается каждый раз при запуске на отсутсвие alsa-устройств — делу это не мешает)

    Потом уж занялся релтайм-ядром
    ядро стояло [b:2un1qpil]2.6.33.4[/b:2un1qpil]
    В Netpkg есть возможность установить релтайм-ядро [b:2un1qpil]2.6.31.12.rt21[/b:2un1qpil] — поставил его, но при перзагрузке загрузилось опять 2.6.33.4 (проверять командой uname -r), при загрузке варианта с RT-ядром не предлагалось. Пришлось конфигурировать загрузчик LILO (он ставится в ZENWALKе по умолчанию) Каюсь не записал последовательность моих действий при этом, а наизусть не помню (INTERNET Вам в помощь). Кстати конфигурировать LILO в ZENWALKе все-равно придется ручками, т.к. при установке дистрибутива он самостоятельно конфигурируется странным образом: в меню вариантов загрузки присутствует строка WINDOWS и именно этот вариант назначен по-умолчанию — через сколько-то секунд ожидания загрузчик пытается загрузить этот «мифический» WINDOWS посылая компьютер «в никуда»)
    С установленым 2.6.31.12.rt21 у меня все работает нормально. Можно и самому собрать RT-ядро, я делал это в предыдущем дистрибутиве ZENWALK’а, но сейчас не стал заморачиваться (хотя это оказалось вовсе не сложно — читайте: http://citkit.ru/articles/1066/ (Алексей Федорчук «Пересборка ядра: ядерный распад или термоядерный синтез?») там есть ссылка на статью Зарипова Михаила «Ставим ядро 2.6, или Ядерная физика для домохозяйки.» у меня на компьютере она есть в более свежей версии — но где взял не помню. есть еще http://www.rostovlinux.ru/content/view/2187/56/ («Сборка realtime ядра Linux»))

    Всем удачи

    #2335

    dt
    Участник

    [b:pee93upq]P.S.[/b:pee93upq] При подключении Saffire-LE в предыдущем дистрибутиве ZENWALK’а (6.2) у меня возникло больше проблемм, одну из них я хочу описать — может оказаться полезным для людей работающих в других дистрибутивах.
    Команда «ffado-dbus-server jackd» работала у меня только под root’ом, а под обычным пользователем вылазило ругательство, что, мол нет нужных прав на файл /dev/raw1394. Опытные LINUXоиды должно быть посмеются как я пытался изменить права доступа на этот файл — запускал Thunar от имени root’а и менял в его свойсвах, в закладке «права» группу «disk» (к которой я не принадлежал) на «audio» или «video». После этого все работало — т.е. и FFADO Mixer запускался и jack, но после перезагрузки все возвращалось на круги своя… Пришлось снова лезть в интернет и вчитываться в малознакомые англицкие слова. Алгоритм нашелся: находим в каком из файлов директории /lib/udev/rules.d/ есть строчка с «raw1394″. У меня нашлась в файле /lib/udev/rules.d/40-general.rules (как я понял может находиться в каком-то другом из файлов этой директории, так что надо искать). Строчка у меня была: KERNEL==»raw1394*», NAME=»%k», GROUP=»video», что меня озадачило — в свойствах файла /dev/raw1394 вижу что группа стоит «disk» — а тут «video»??? Но замешательствовал я недолго ибо чуть ниже увидел строчку: KERNEL==»raw[0-9]*», NAME=»%k», GROUP=»disk». Я догадался что эта строчка отменяла предыдущую, т.к. видимо [0-9] означает любой набор цифр, в том числе и 1394. Возрадовавшись своей сообразительности, сделал на всякий случай копию файла 40-general.rules, внес необходимые изменения (заменил GROUP=»disk» на GROUP=»video» в нужной строчке) и перезагрузившись… опять обнаружил что права пресловутого /dev/raw1394 не изменились — все та же группа disk! Теперь виновной оказалась сделанная мной резервная копия файла 40-general.rules, которая тупо называлась «копия 40-general.rules» и лежала в той же директории, что и измененный мною файл!

Просмотр 2 сообщений - с 1 по 2 (из 2 всего)

Для ответа в этой теме необходимо авторизоваться.