The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +/
Сообщение от opennews (??), 06-Апр-19, 13:03 
Представлен PulseJoin 2.2 (https://gitlab.com/mikhailnov/pulsejoin/) - графический интерфейс для объединения вывода на динамики и  микрофона в виртуальный микрофон PulseAudio, что позволяет записать звук одновременно с динамиков и микрофона в программах, не умеющих захватывать с нескольких источников одновременно. Для установки подготовлены (https://gitlab.com/mikhailnov/pulsejoin/tags) пакеты RPM и DEB, а также PPA-репозиторий для Ubuntu и Debian (https://launchpad.net/~mikhailnov/+archive/ubuntu/pulsejoin). PulseJoin уже доступен в официальных репозиториях ROSA Fresh и ALT Linux.


PulseJoin представляет из себя bash-скрипт, в котором для формирования графического интерфейса пользователя применяется YAD (https://github.com/v1cont/yad) (Yet Another Dialog, форк Zenity). Для локализации интерфейса на разные языки применяется (https://gitlab.com/mikhailnov/pulsejoin/tree/master/po) gettext. Исходные тексты проекта распространяются под лицензией GPLv3. Работа скрипта проверена в GNU/Linux и FreeBSD, однако платформоспецифичными могут быть только синтаксис sed, mktemp и, возможно, некоторых других стандартных утилит.

Скрипт выполняет следующие действия:


-  Создание виртуального устройства PulseAudio;
-  При необходимости запуск нужной программы с установленной переменной окружения PULSE_SOURCE, указывающей на созданный виртуальный микрофон (также можно вручную переключить любой поток захвата PulseAudio на этот виртуальный микрофон, например, через pavucontrol(-qt));
-  Удаление внесенных изменений, в т.ч. графические кнопки для создания и удаления виртуального микрофона.


URL: https://gitlab.com/mikhailnov/pulsejoin/
Новость: https://www.opennet.dev/opennews/art.shtml?num=50471

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +3 +/
Сообщение от Аноним (1), 06-Апр-19, 13:03 
>для записи с динамиков

Звучит, как будто выход аудиокарты перенастроили в режим для входа и используют динамики не по назначению.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +1 +/
Сообщение от None (??), 06-Апр-19, 13:08 
Как они умудряются это делать? Глубоко сомневаюсь, что на выходах динамиков стоят АЦП, а ЦАП в обратную сторону проворачивать фарш не могут.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +2 +/
Сообщение от mikhailnov (ok), 06-Апр-19, 13:12 
Программно, стандартная фича PulseAudio — для каждого устройства вывода звука есть "микрофон" "Monitor of <имя устройства вывода>"
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +1 +/
Сообщение от Аноним (4), 06-Апр-19, 13:34 
у реалтеков вроде как одной из фич была возможность переключения каналов https://www.opennet.dev/opennews/art.shtml?num=48249
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

5. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  –4 +/
Сообщение от Аноним (5), 06-Апр-19, 14:02 
О да, "Monitor of <имя устройства вывода>" запомнился мне очень хорошо. В фурифоксе при записи с этого виртуального канала весь звук в системе начинает заикаться, а в том же фурифоксе с соседних вкладок звук вообще идет с секундными замираниями. Пыш пыш аудио, что здесь еще можно сказать, ничем от вяленого по качеству не отличается.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

6. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +/
Сообщение от Аноним (5), 06-Апр-19, 14:05 
И вот знаете, чтобы отправить отрывок звука с видео ютуба допустим голосовым сообщением приходится по старинке, делать хардовый луп соединяя проводом вход и выход звуковухи, или скачивать видео и обрезать (что даже затратнее обходится)
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

12. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +3 +/
Сообщение от анонн (?), 06-Апр-19, 16:03 
> И вот знаете, чтобы отправить отрывок звука с видео ютуба допустим голосовым
> сообщением приходится по старинке, делать хардовый луп соединяя проводом вход и
> выход звуковухи, или скачивать видео и обрезать (что даже затратнее обходится)

Это по виндузячьи.
По старинке - это вот так.


# virtual_oss \                
                   -S -C 2 -c 2 -r 44100 -b 16 -s 1024 \
                   -f /dev/dsp1 -w dsp.rec.wav -l dsp.rec -d dsp
% dd if=/dev/dsp.rec.wav bs=1m | oggenc - -o my.ogg

http://i66.tinypic.com/5khmb5.jpg
см.

Create a device named dsp.virtual which mix the samples written by all
     clients and outputs the result for further processing into
     dsp.virtual_out:

           virtual_oss \
                   -S -Q 0 -b 16 -c 2 -r 96000 -s 100ms -i 20 \
                   -f /dev/null -d dsp.virtual -L dsp.virtual_out


Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

7. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +1 +/
Сообщение от Аноним (5), 06-Апр-19, 14:12 
Чем не устроил jack2 я честно вообще не понимаю до сир пор, идеально работает, реалтайм, возможность записи звука с каждого подключенного приложения другим приложением, минимум прослоек и прозрачная работа. Зачем было разрабатывать пыш аудио вообще не понятно.
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

9. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +3 +/
Сообщение от Дон Ягон (?), 06-Апр-19, 14:40 
Вы забываете, кто автор пшыаудио. На вашем месте, я бы радовался, что его функциональность до сих пор не в PID1.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

10. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  –2 +/
Сообщение от Аноним (10), 06-Апр-19, 15:27 
Так у альсы драйвера вообще в ring 0
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

14. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +3 +/
Сообщение от Аноним84701 (ok), 06-Апр-19, 16:14 
> Так у альсы драйвера вообще в ring 0

А пульса научилась читать данные для микширования через libastral?
Или просто фанаты все так же не в курсе, как работает предмет их обожания и поклонения  🙄 ?


; Default profile definitions for the ALSA backend of PulseAudio. This
; is used as fallback for all cards that have no special mapping
; assigned (and should be good enough for the vast majority of

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

15. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +1 +/
Сообщение от Дон Ягон (?), 06-Апр-19, 16:30 
> Так у альсы драйвера вообще в ring 0

Ну и что? А где должны быть?

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

8. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +3 +/
Сообщение от Аноним (8), 06-Апр-19, 14:28 
Имелось в виду - чтобы объединить в один поток то, что слышно с микрофона и что подаётся на аудиовыход. А написано так, будто динамики служат микрофоном.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

33. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +/
Сообщение от GameUpgrade (?), 07-Апр-19, 18:36 
Динамики и без всяких PulseJoin могут служить микрофоном, стоит их лишь воткнуть в микрофонный вход.
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

11. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  –1 +/
Сообщение от VINRARUS (ok), 06-Апр-19, 15:43 
>однако платформоспецифичными могут быть только синтаксис sed, mktemp и, возможно, некоторых других стандартных утилит.

Если дистрибутивосоздаватели какают на POSIX — нужно использовать busybox.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

13. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +/
Сообщение от Аноним (13), 06-Апр-19, 16:07 
Я когда-то добился того же самого, когда что-то тыкал в PavUControl. Но повторно мне это не удалось сделать. Так что прога нужная
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

16. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +/
Сообщение от Аноним3 (?), 06-Апр-19, 16:41 
прога нужная вообще то. когда писал гитару приходилось делать сначала готовый семпл с инструментами и уж потом писать второй линией гитару. а так можно проще разобраться. хотя тоже не сказать , что сильно облегчит. как было собирать трек наборами так и осталось. единственное эффект 2 микрофонов можно создать.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

17. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +1 +/
Сообщение от mikhailnov (ok), 06-Апр-19, 17:28 
Для гитары лучше и проще jack2 использовать
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

18. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +/
Сообщение от Аноним3 (?), 06-Апр-19, 18:12 
это если в линию писать. а если играешь в лампу и снимаешь микрофоном? эта софтинка может позволить сделать двойное наложение гитары в линию и с микрофона. чес слово пробовал играть в линию с jack и всякими дисторшенами программными... задержка все же чувствуется. а так пишешь с чистого аналога лучше. все таки не имеет значения пишешь через пульсу или jack.
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

32. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +2 +/
Сообщение от Аноним (-), 07-Апр-19, 18:17 
про jack любят рассуждать те, кто им никогда не пользовался
Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

35. "Доступен PulseJoin 2.2 для одновременной записи с динамиков ..."  +/
Сообщение от Аноним (35), 12-Апр-19, 18:23 
Нормальные люди для это DAW используют, Reaper например. Пшш-аудио - это вообще не про сведение и не про реалтаймовый звук
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

19. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  –1 +/
Сообщение от Ilya Indigo (ok), 06-Апр-19, 19:08 
А можно как-то ALSA с dmix настроить так, чтобы, на default смешивалось (или, хотя бы, подставлялось) устройство захвата hw:0.0, как это делается с устройством воспроизведения?
Перерыл много чего из гугла, но решения толком не нащёл, кроме упоминания того, что dmix работает только с устройствами воспроизведения. :-(
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

20. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +/
Сообщение от Аноним3 (?), 06-Апр-19, 20:00 
альса по умолчанию  имеет возможность работать только в приоритетном режиме. то есть полный захват. насчет dmix... тут не скажу, но если в описании дано , что работает только с устройствами воспроизведения, значит надо искать другой аналог.
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

21. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +/
Сообщение от Ilya Indigo (ok), 06-Апр-19, 20:06 
А можно как-нибудь alias задать, чтобы приложение (firefox,chromium,telegram-desktop) ожидающие увидеть устройство захвата default, увидело этот alias и использовало hw:0.0, пусть даже в монопольном режиме, по имени default?
Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

22. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +/
Сообщение от Аноним3 (?), 06-Апр-19, 22:59 
в системе пульсы нет? если нет надо искать старую тропу. раньше все через неё настраивалось. технически есть же alsamixer в консоли. попробовать выставить через него. но тут не уверен. не проверял. то что можно выключить каналы и выбрать главный там есть. но чес слово с момента появления пульсы как то и не интересовался. вообще через конфиг альсы наверно можно настроить. фокс же все равно должен видеть доступные устройства. технически можно написать два конфига к альсе . один пометить как .old и когда необходимо менять окончания к конфигам и перезапускать альсу. но если вам на постоянку. можно старый конфиг переименовать слегка, а новый положить  и все должно сработать. куда проще чем писать свою прослойку для этого.
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

26. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +1 +/
Сообщение от Аноним (26), 07-Апр-19, 08:46 
Не очень понял ваш вопрос (особенно конец), посему:
pcm.!default {
    type asym
        playback.pcm "linearize"
        capture.pcm "hw:0,0" # так как hw:0,0 это устройство воспроизведения, то capture так работать не будет (насколько я понимаю)
    hint.show on
    hint.description "Default with dmix"
    }

+ убираем fallback (некоторые приложения сразу же используют sysdefault, вместо default)
pcm.!sysdefault default

Вот в mpv можно (для устройств воспроизведения):
audio-device="alsa/default"
Вот в wine можно:
WINEPREFIX="..." wine reg.exe ADD "HKEY_CURRENT_USER\Software\Wine\Drivers\winealsa.drv" /v "ALSAOutputDevices" /t "REG_MULTI_SZ" /d "for_wine" /f
и в winecfg выбрать for_wine

А как в этих ваших приложениях, и можно ли там это вообще, я не знаю (это про alias'ы).

Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

27. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +/
Сообщение от Ilya Indigo (ok), 07-Апр-19, 12:49 
> Не очень понял ваш вопрос (особенно конец)

В последнее время появляются приложения (firefox, chromium, skype, telegram), в которых нет возможности настроить устройства воспроизведения и захвата, которые думают, что у меня пульса и сразу стучаться в default. С воспроизведением проблем нет - а микрофон в них не работает.
В wine и прочих приложениях, где можно в настройках указать какое устройство использовать для захвата - таких проблем нет.
Я использую только ALSA, пульсу я сразу сношу ещё на этапе установки.

> посему:
> pcm.!default {
>     type asym
>         playback.pcm "linearize"
>         capture.pcm "hw:0,0" # так
> как hw:0,0 это устройство воспроизведения, то capture так работать не будет
> (насколько я понимаю)
>     hint.show on
>     hint.description "Default with dmix"
>     }

Благодарю!
"linearize" у меня приводило к отвалу default, но я его заменил на "plug:dmix".

pcm.!default {
    type asym
        playback.pcm "plug:dmix"
        capture.pcm "hw:0,0"
    hint.show on
    hint.description "Default with dmix"
}

pcm.!sysdefault {
    type asym
        playback.pcm "plug:dmix"
        capture.pcm "hw:0,0"
    hint.show on
    hint.description "Default with dmix"
}

И, по крайней мере в audacity, микрофон с default и sysdefault заработал.

> + убираем fallback (некоторые приложения сразу же используют sysdefault, вместо default)
> pcm.!sysdefault default

Вы имели ввиду продублировать pcm.!sysdefault {...}, как я сделал выше или просто написать без фигурных скобок pcm.!sysdefault default ?

Телеграму всё же что-то не нравится.
AL lib: (EE) ALCcaptureAlsa_open: snd_pcm_hw_params_set_channels(self->pcmHandle, hp, ChannelsFromDevFmt(device->FmtChans, device->AmbiOrder)) failed: Недопустимый аргумент
E/tgvoip: pa_context_connect failed: Access denied
W/tgvoip: PulseAudio available but not working; trying ALSA
ALSA lib pcm.c:8507:(snd_pcm_set_params) Channels count (1) not available for CAPTURE: Недопустимый аргумент
E/tgvoip: snd_pcm_set_params failed: Недопустимый аргумент

Но с этим я уже буду дальше разбираться!
Главное audacity - я им проверяю работоспособность устройств захвата, работает с ними значит проблема уже не в них.

P.S. А что означает ! перед default и sysdefault?
Без него audecity вообще никаких устройств не видеит, однако

ctl.equal {
    type equal;
}

pcm.plugequal {
    type equal;
    slave.pcm "plug:dmix";
}

pcm.equal {
    type plug;
    slave.pcm plugequal;
}

указываются без ! и работают?

Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

28. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +1 +/
Сообщение от Аноним (26), 07-Апр-19, 13:13 
> "linearize"

это то, что у меня в конфиге сделано (просто скопипастил из своего, не изменяя)

> или просто написать без фигурных скобок pcm.!sysdefault default ?

Да, это и есть alias

> А что означает ! перед default и sysdefault?

Это означает очистить предыдущие конфигурации с этими именами и использовать новые (которые и будут далее указаны)

> Без него audecity вообще никаких устройств не видеит

А без него, насколько я помню, если раньше такой конфигурации (не знаю как правильно называется, поэтому использую такое слово) не было, то создать, а если была - не перезаписывать, а использовать старую.

Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

29. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +/
Сообщение от Ilya Indigo (ok), 07-Апр-19, 13:35 
Благодарю! :-)

Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

30. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +1 +/
Сообщение от Аноним (26), 07-Апр-19, 13:41 
> В последнее время появляются приложения (firefox, chromium, skype, telegram), в которых нет возможности настроить устройства воспроизведения и захвата

м-м-м... да, тут на ум приходит только менять .asoundrc (или default в нём) перед запуском приложения на нужный, а потом вертать обратно.

> snd_pcm_hw_params_set_channels

гм, помню, у меня в wine'е тоже были проблемы с несоответствием количества каналов ("Проверить звук" в winecfg). Пришлось делать type route чтобы у меня всегда было 2 канала.
Но здесь captureAlsa_open, с этим я дел не имел. Предположу, что оно так же, как и с воспроизведением. Хотя зачем там больше 1 канала (или в чём именно ошибка)? Странно в общем что-то.

у меня:
pcm.channel_change {
    type route
    slave {
    pcm "rate_change" # как всегда, вместо этого должно быть то, что у вас там дальше
        channels 2
        }
    ttable {
        0.FL 1.0
        1.FR 1.0
        ...
        }
    hint.show off
    hint.description "to stereo -> rate converter"
    }
    
Теоретически, type plug (https://www.alsa-project.org/alsa-doc/alsa-lib/pcm_plugins.html) - сам делает необходимые преобразования, попробуйте перед "hw:0,0" использовать plug, что ли.

Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

31. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +2 +/
Сообщение от Ilya Indigo (ok), 07-Апр-19, 16:08 
Огромная Вам благодарность! :-)
Вот он, конфиг моей мечты, который я искал несколько лет!
Теперь с ним микрофон в телеграм, наконец-то заработал. :-)

pcm.!default {
    type asym
        playback.pcm "plug:dmix"
        capture.pcm "plughw:0,0"
    hint.description "Default with dmix"
    hint.show on
}
pcm.!sysdefault default

Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

24. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +1 +/
Сообщение от Zenitur (ok), 07-Апр-19, 06:47 
> альса по умолчанию  имеет возможность работать только в приоритетном режиме. то есть полный захват

Имеет возможность, но как правило не пользуется этой возможностью.

Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

36. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +/
Сообщение от Аноним (35), 12-Апр-19, 18:24 
От программы зависит, например рипер в монопольный доступ забирает карту
Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

23. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +/
Сообщение от Аноним (23), 07-Апр-19, 06:27 
make install завезли, make uninstall не завезли. Отлично, я считаю. Напоминает времена винды 98 - тогда тоже половина разрабов не подозревала, что их софт кто-то захочет удалить
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

25. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +/
Сообщение от Zenitur (ok), 07-Апр-19, 06:51 
А мне вспоминается убунтофорум 2008 года. В том году впервые стало широко известно про PPA (а может, PPA именно тогда и появился). И на убунтофоруме стало популярно требовать от новоприбывших пользователей устанавливать всё только из пакетов! И никак иначе!

Одним из аргументов было то, что если не устанавливать не из пакета, то и удалить потом нельзя. Про make uninstall никто там не слышал, в том числе и я. Даже у проприетарных драйверов, устанавливаемых из run-файла, есть uninstaller - а мы городили команду для apt-get, возвращавшую Месу...

Массовое просвящение о том, что такая команда есть, случилось в 2013 году после скандала с Bumblebee. Когда make uninstall там удалял /usr

Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

37. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +/
Сообщение от Аноним (35), 12-Апр-19, 18:26 
>Про make uninstall никто там не слышал, в том числе и я

Похоже о нем не слышали и разработчики новомодных систем сборки, которые так и не в состояние толком воспроизвести основные возможности autotools

Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору

34. "Доступен PulseJoin 2.2 для объединения записи с микрофона со..."  +/
Сообщение от x3who (?), 08-Апр-19, 00:43 
> Когда make uninstall там удалял /usr

Там при инсталляции это вроде тоже происходило:
https://github.com/MrMEEE/bumblebee-Old-and-abbandoned/issue...

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру