LINUX.ORG.RU

Показания pw-top. Верить, или проверить? А чем их проверить?

 


0

1

Юзаю гуёвую звуковую программку. Так-то в ней из коробки всё нормально было, но временами похрюкивает-попукивает.

Решил аккуратно подстроить дискретизацию и буфер, чтобы и не опаздывало, и не икало. Сюрприз: если слать звук в Jack, там подстройка есть, но выбрать можно только 128/48000.

Ничего, можно же запустить с префиксом, например, PIPEWIRE_LATENCY=1024/96000.

Запускаю, pw-top говорит, что оно так и работает. В настройках программки при этом показывает 512/48000. Кому верить? По ощущениям прикинуть - то такое. Говорю же, оно временами попёрдывает, даже не чаще всего.

Чем можно проверить верность показаний pw-top?

★★★
Ответ на: комментарий от R_He_Po6oT

Не понятно насколько криво сыграно, а насколько запоздание записи :)

А я там сразу слышу, что первые два удара практически идеальные, а после размазня, не электронная, а моя.

Поиграй в таком режиме хоть неделю, а потом включи вдвое больший буффер.

Это, конечно, тоже да. Играть под кривоватого барабанщика, играть под номального барабанщика, играть под драммашинку... Разница в легкости. Пока не поиграешь под драммашинку, не соображаешь, что тот барабанщик кривой. А разницу чувствуешь быстро, а от чего она, соображаешь не сразу.

Так и подтормоз в цифровом канале. 20ms - можно соскучиться, пока услышишь. 10ms мною и сейчас не чувствуется, хотя, возможно, не осознается, но мешает. Однако, в моем случае оно сейчас не чувствуется скорее от того, что я сам кривоватый. В моем возрасте, возможно, и навсегда. Но, возможно, и временно.

Dementy ★★★
() автор топика
Ответ на: комментарий от kott

Так это и было с контролером и MIDI-Through. Миди клава осталась дома, поэтому виртуально. Фактически работает, а коннектов не вижу.

R_He_Po6oT ★★★★★
()
Ответ на: комментарий от R_He_Po6oT

Поиграй в таком режиме хоть неделю, а потом включи вдвое больший буффер. Удивисси.

Плюсую, именно так.

James_Holden ★★★★
()
Ответ на: комментарий от R_He_Po6oT

Начнём с начала, не видно или не работает тоже? Подозреваю, что только первое и что так и должно быть, в Беспоке нет управляемых MIDI портов (как мне думается). В qjackctl тоже не видно, хотя в patchage есть, но подключать-отключать нельзя.

kott ★★★★★
()

Продолжаю ковырялово.

В pipewire.conf написал default.clock.rate = 96000.

Хромиум гонит видео с ютуба с 96000. Файрфокс - с той частотой дискретизации, с которой звук в этом видео. Хромиум умеет смотреть параметры системного звука и переделывать под них, а Файрфокс что-то из этого не умеет? Или кто-то считает правильным одно, а кто-то другое?

https://mega.nz/file/XFJxHIRA#N0STfTnwejKl-5Q1saMQ-BqdgvKhFTsL1l49z9E0dbo

ЗЫ. Мне, похоже, моск где-то брать надо, хоть на вторичке. Конфиги в трех, В ТРЕХ, БЛИН местах могут быть. Те, что в хомяке - самые приоритетные. Сам же туда клал не так давно, сам же забыл, сам же в этот раз ковырял «правильно»: не /user/share/pipewire, а /etc Еще психовал, что это в PipeWire опять нафигачили, что конфиги не работают.

Dementy ★★★
() автор топика
Ответ на: комментарий от kott

Не показывает. Ни в qpwgraf ни в Patchage. Но миди в BespokeSynth работает. Да, хорошо, что подключаются устройства напрямую, просто это указывает на неполную совместимость.

Ещё такая штука - мне pipewire звуковуху называет по русски. Раньше (когда-то) встречались проблемы с использованием кириллицы в названиях устройств и в джеке, в аудиопрограммах. Может и в Беспоке, в модуле работы с джеком есть проблема такая? У тебя как называется устройство, кириллицей, или латиницей?

R_He_Po6oT ★★★★★
()
Ответ на: комментарий от Dementy

А перезагружался после изменений? Я тоже экспериментировал с пайпварей (тему даже создал), так после ковыряний случилось такое: запускаю видео, или аудио, ничего не происходит, видео стоит, ползунок стоит, воспроизведение не идёт. Открываю кдешный микшер, сразу запускается воспроизведение. Триггер пайпвари через микшер оживляет модуль эффектов. Думал капец, глюки пайпвари. Но перезагрузился и прямо сразу почувствовал мягкость волос и даже брат ожил :)

В /usr/share лежат системные файлы, устанавливаемые из пакетов. При обновлении всё перезапишется (по крайней мере должно). В /etc файлы конфигурации. Их можно редактировать, но «более некоторые» дистрибутивы, типа Убунты и Дебьяна, иногда перезаписывают их без спроса при обновлении. Рискованно. А в домашней папке можно смело править и ломать как хочешь и только ты хозяин. Правда, если со временем параметры приложения поменяются, это может начать портить всё. Как-то так.

R_He_Po6oT ★★★★★
()
Ответ на: комментарий от Dementy

Хромиум гонит видео с ютуба с 96000...
а Файрфокс что-то...

И посмотри в pw-dump. Сделай «pw-dump > pipewire.json» и почитай как работают эти ноды. Вполне возможно, что ресэмплинг происходит в каждой отдельной ноде Хрома. А в Фоксе отдаются потоки в миксер и уже там ресэмплятся. Что лучше? Мне кажется, ФФшный вариант лучше, но может быть и не так.

R_He_Po6oT ★★★★★
()
Ответ на: комментарий от R_He_Po6oT

По-русски? Впервые вижу такое, в винде - да, благо можно руками переименовать в диспетчере.

У меня ессесно по-английски и в patchage показывается, но у меня голая алса и иногда джек https://rimgo.esmailelbob.xyz/OsTd8Nv.png

kott ★★★★★
()
Ответ на: комментарий от kott

Не-не-не-не-не, я про название аудиовыхода, не миди. Вот как выглядит мой выход в конфиге Беспока:

"devicetype" : "JACK",
   "audio_output_device" : "\u0412\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0435 \u0430\u0443\u0434\u0438\u043e \u0410\u043d\u0430\u043b\u043e\u0433\u043e\u0432\u044b\u0439 \u0441\u0442\u0435\u0440\u0435\u043e",
   "audio_input_device" : "none",
Может быть такое, что джековая составляющая беспока ломается при запуске программы об это название? Не может ЭТО быть причиной зависания?

R_He_Po6oT ★★★★★
()
Ответ на: комментарий от R_He_Po6oT

думаю, он бы писал, что не может открыть, проблемы с эмуляцией джека в PW не только у Беспока, но и у всех приложений на джусе.

PS в джеке тоже все по-английски

PPS но можно над этим и подумать, а переименовать нельзя? или с дефолтной локалью запустить?

kott ★★★★★
()
Последнее исправление: kott (всего исправлений: 2)
Ответ на: комментарий от kott

но и у всех приложений на джусе.

Нифига. Я спокойно запускаю и делаю любые пересоединения в Surge XT, Helm, VCV, Cardinal. Это не проблема ТОЛЬКО джуса, видимо.

R_He_Po6oT ★★★★★
()
Ответ на: комментарий от kott

Тогда всю пайпварю надо так запускать, наверное? Как-то сложно. Но попробую.

R_He_Po6oT ★★★★★
()
Ответ на: комментарий от R_He_Po6oT

Любопытно. А откуда эти синты и как они собраны, и как собран Беспок (VCV Rack и Cardinal - не джус)?
Могу предположить, что первые используют pipewire-libjack-0_3-devel, а Беспок - обычный libjack-devel (так у меня называются).

Сейчас не смогу потыкать. Посмотрю завтра или потом :)

kott ★★★★★
()
Ответ на: комментарий от R_He_Po6oT

посмотри в pw-dump.

А что именно там отлавливать? Там сто килобайт мелким шрифтом. Я восхищен и смят.

Dementy ★★★
() автор топика
Ответ на: комментарий от Dementy

Найди там ноды фокса и хрома и сравни. Там может (а может и не) быть ресэмплинг, миксинг, шейпинг, всякое. У меня хрома нет, не могу проверить в какой точке происходит ресэмплинг.

R_He_Po6oT ★★★★★
()
Ответ на: комментарий от R_He_Po6oT
{
    "id": 62,
    "type": "PipeWire:Interface:Node",
    "version": 3,
    "permissions": [ "r", "w", "x", "m" ],
    "info": {
      "max-input-ports": 0,
      "max-output-ports": 65,
      "change-mask": [ "input-ports", "output-ports", "state", "props", "params" ],
      "n-input-ports": 0,
      "n-output-ports": 2,
      "state": "running",
      "error": null,
      "props": {
        "client.api": "pipewire-pulse",
        "pulse.server.type": "unix",
        "application.name": "Chromium",
        "application.process.id": 4135,
        "application.process.user": "dementy",
        "application.process.host": "RockseR",
        "application.process.binary": "chromium-browser",
        "application.language": "ru_RU.UTF-8",
        "window.x11.display": ":0",
        "application.process.machine-id": "e7105e6fab35410aaae5abf70e61cc4a",
        "application.process.session-id": 3,
        "application.icon-name": "chromium-browser",
        "media.name": "Playback",
        "node.rate": "1/96000",
        "node.latency": "1024/96000",
        "resample.quality": 10,
        "stream.is-live": true,
        "node.name": "Chromium",
        "node.autoconnect": true,
        "node.want-driver": true,
        "media.class": "Stream/Output/Audio",
        "adapt.follower.spa-node": "",
        "object.register": false,
        "factory.id": 6,
        "clock.quantum-limit": 8192,
        "factory.mode": "split",
        "audio.adapt.follower": "",
        "library.name": "audioconvert/libspa-audioconvert",
        "client.id": 60,
        "object.id": 62,
        "object.serial": 103,
        "pulse.attr.maxlength": 4194304,
        "pulse.attr.tlength": 16384,
        "pulse.attr.prebuf": 12296,
        "pulse.attr.minreq": 4096
      },
      "params": {
        "EnumFormat": [
          {
            "mediaType": "audio",
            "mediaSubtype": "raw",
            "format": "F32LE",
            "rate": 96000,
            "channels": 2,
            "position": [ "FL", "FR" ]
          }
        ],
        "PropInfo": [
          {
            "id": "volume",
            "description": "Volume",
            "type": { "default": 1.000000, "min": 0.000000, "max": 10.000000 }
          }

Чё-та квалификации у меня не хватает. Наличие надписей "resample.quality": 10 и "library.name": "audioconvert/libspa-audioconvert" ничего понятного для меня не показывает.

Dementy ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.