Как дать права JACK пользователю
Модератор: arachnid
-
- Сообщения: 1064
- ОС: Mageia
Как дать права JACK пользователю
Под Арч Линукс всё понятно: https://github.com/captnfab/PianoBooster/blob/master/doc/faq.md#how-do-i-hear-the-sound-on-arch-linux
Но как под BSD? Файла /etc/security/limits.conf нет, группы audio нет.
Но как под BSD? Файла /etc/security/limits.conf нет, группы audio нет.
Консоль на мыло. Надо развивать графику.
-
- Модератор
- Сообщения: 1099
- ОС: freeBSD
Re: Как дать права JACK пользователю
а что говорит гугель?
собственно, даже при установке пакета есть информация - ну и дополнительно можно почитать форум https://forums.freebsd.org/threads/jack-real-time-audio.58293/
собственно, даже при установке пакета есть информация - ну и дополнительно можно почитать форум https://forums.freebsd.org/threads/jack-real-time-audio.58293/
-= freeBSD stable, fluxbox =-
"если ты будешь со мной спорить, я тебя запишу в книжечку!" (с) Ежик
"если ты будешь со мной спорить, я тебя запишу в книжечку!" (с) Ежик
-
- Сообщения: 1064
- ОС: Mageia
Re: Как дать права JACK пользователю
Гугл ничего не говорит. По ссылке всё уже изучено давно, это всё не то.
Fluidsynth запускает JACK под пользователем, опции там никакие ему не передать. Тут нужна именно инструкция аналогичная другим дистрибутивам на дачу прав пользователю запускать JACK realtime.
Сами-то пробовали?
Fluidsynth запускает JACK под пользователем, опции там никакие ему не передать. Тут нужна именно инструкция аналогичная другим дистрибутивам на дачу прав пользователю запускать JACK realtime.
Сами-то пробовали?
Консоль на мыло. Надо развивать графику.
-
- Сообщения: 2913
- ОС: Gentoo
Re: Как дать права JACK пользователю
Давно уже не пробовал BSD системы, но тут по моему и так не тяжело догадаться.
Надо смотреть в сторону приоритета запускаемого приложения.
Можно как использовать nice, в связке с sudo для повышения приоритета и запуска под пользователем, либо смотреть в сторону rtprio.
Надо смотреть в сторону приоритета запускаемого приложения.
Можно как использовать nice, в связке с sudo для повышения приоритета и запуска под пользователем, либо смотреть в сторону rtprio.
-
- Модератор
- Сообщения: 21028
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Как дать права JACK пользователю
Как Вы себе это представляете?
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
- Сообщения: 2913
- ОС: Gentoo
Re: Как дать права JACK пользователю
С nice, довольно просто. Если присутствует sudo в системе. То для начала даются права суперпользователя для запуска скрипта(можно прописать в sudoers.
Запускающий скрипт довольно простой:
Код: Выделить всё
#!/bin/sh
nice --11 sudo -u USER скрипт запуска jack
Shell
$ sudo скрипт
Спасибо сказали:
-
- Сообщения: 1064
- ОС: Mageia
-
- Сообщения: 2913
- ОС: Gentoo
Re: Как дать права JACK пользователю
Фиг его знает, этим инструментом не пользовался))
Можно попробовать поиграться, может что получится.
Как вариант можно попробовать запустить qjackctl, если такое присутствует и под рутом повысить приоритет на процесс qjackctl, с помощью rtprio. А далее с помощью его запустить jackd.
Зы: команде ps можно назначать поля для просмотра и сортировать по определенному полю:
Shell
$ ps -eo pid,tid,class,rtprio,ni,pri,comm --sort=+comm
-
- Сообщения: 1064
- ОС: Mageia
Re: Как дать права JACK пользователю
Ormorph, это ерунда. Процесс jackd запускается сам через fluidsynth. qjackctl вообще тут не к месту.
Задача не как запустить jackd, а как он бы запустился сам через fluidsynth с необходимыми правами.
В направлении rtprio путь правильный, но нет инструкций как это реализовать.
Задача не как запустить jackd, а как он бы запустился сам через fluidsynth с необходимыми правами.
В направлении rtprio путь правильный, но нет инструкций как это реализовать.
Консоль на мыло. Надо развивать графику.
-
- Сообщения: 2913
- ОС: Gentoo
Re: Как дать права JACK пользователю
Можно и отдельно запускать jackd, а затем конектить fluidsinth с jack, примерно так:romkaromka писал: ↑07.07.2019 09:37Ormorph, это ерунда. Процесс jackd запускается сам через fluidsynth. qjackctl вообще тут не к месту.
Shell
$ fluidsynth -a jack -g 1 -c2 -R0 -C0 -i -l -r 48000 -j -s /usr/share/sounds/sf2/FluidR3_GM.sf2
Иначе можно только через sudo и nice. Можно попробовать sudo и rtprio, для запуска скрипта, по идее потомки так же должны будут наследовать приоритет.
В BSD нет pam, по этому фокус как в linux с /etc/security/limits.conf не пройдет.
-
- Модератор
- Сообщения: 21028
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Как дать права JACK пользователю
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
- Сообщения: 2913
- ОС: Gentoo
Re: Как дать права JACK пользователю
renice для уже запущенных процессов, так же может подойти, если для qjackctl.
Но с sudo и nice, может получиться на много гибче.
Просто создаются права в sudoers на запуск скрипта под рутом без пароля, примерный скрипт я уже накатал. Просто поместить его надо в директорию с правами рута, например в /usr/local/bin, что бы пользователь не мог менять его содержимое. А далее можно запускать скриптом от обычного пользователя, типа:
Код: Выделить всё
#!/bin/sh
sudo скрипт
-
- Модератор
- Сообщения: 21028
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Как дать права JACK пользователю
Ничто не мешает сделать renice на уже запущенный jackd.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
- Сообщения: 2913
- ОС: Gentoo
Re: Как дать права JACK пользователю
Не в режиме реального времени, он просто не запустится ключик -R, пока не дать права(приоритет).
-
- Сообщения: 1064
- ОС: Mageia
Re: Как дать права JACK пользователю
Всё написанное выше с nice полностью неправильно. Даже через nice jackd не запускается с ключом -R. А fluidsynth не будет запускать нового потомка jackd, так как jackd уже запущен через nice.
Неужели на форуме нет толковых специалистов кто может писать не от балды, а после проверки в FreeBSD?
Неужели на форуме нет толковых специалистов кто может писать не от балды, а после проверки в FreeBSD?
Консоль на мыло. Надо развивать графику.
-
- Сообщения: 2913
- ОС: Gentoo
Re: Как дать права JACK пользователю
Конечно не будет, он будет коннектится к уже запущенному, но тут надо смотреть что бы частота дискретизации запущенного совпадала с частотой с которой запускает fluidsynth, в принципе это все выставляется. Если убрать ключик -j то fluidsynth запукаться будет без jack, ну и не будет коннектится к уже запущенному, тогда надо будет связывать каналы с jackd в ручную.romkaromka писал: ↑08.07.2019 06:07А fluidsynth не будет запускать нового потомка jackd, так как jackd уже запущен через nice.
Ну дык, вам и флаг в руки, вы будете первым...romkaromka писал: ↑08.07.2019 06:07Неужели на форуме нет толковых специалистов кто может писать не от балды, а после проверки в FreeBSD?
Во фряхе вроде можно завести pam в линуксовых портах. Ну и jack должен быть тоже линуксовым, ну и собран с поддержкой pam.
Фряху очень редко кто использует для десктопа, по этому мало кто вам тут посоветует что делать. Только не знаю, поддерживает ли ядро фряхи работу в реальном режиме времени, либо с уменьшенным временем переключения контента, достаточную для запуска jack в реальном режиме времени.
-
- Модератор
- Сообщения: 21028
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Как дать права JACK пользователю
Значит, надо использовать rtprio, как описано тут.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
- Сообщения: 2913
- ОС: Gentoo
Re: Как дать права JACK пользователю
Боюсь что и это не получится.
Завалялась на одном из разделов старенькая фряха, там как раз был установлен jack.
Ради интереса запустил:
Shell
# rtprio 0 nice --22 sudo -u USER jackd -R -m -doss
Возможно если в ручную пере собрать ядро, может что то и получится, но тут я не помощник...