LINUX.ORG.RU

pipewire 0.3.44

 ,


0

1

Сегодня обновился pipewire до версии 0.3.44-1.

В логах при воспроизведении звука в firefox, mpv, mpd начали появлятся сообщения вида:

pipewire[PID]: spa.mixer-dsp: 0x55834a0194b8 memory on buffer 0 not aligned

mpd с настроеным выводов через pipewire падает, при попытке начать воспроизведение звука. При выводе через пульсу работает, но pw выплевывает описанные выше сообщения в журнал.

Пробовал переустанавливать, перезапускать, перезагружаться, но результат такой же. Предыдущая версия pipewire работала нормально.

Issues в гитлабе pipewire смотрел, в багтрекере арча и на форуме смотрел, в гугле искал. Ничего подобного не нашел.

Вопрос: у меня одного так или нет?

cast @Korchevatel, @James_Holden (ну и всех остальных, кто использует арч и/или pipewire)

P. S. Прошу прощения, если разместил не в том разделе.

UPD

Баг Фикс (предпологаемый) (у меня после этого коммита всё нормально работает)

Вообщем, друзья, ждем новый релиз (или патч в арче) или используем 0.3.43, если у вас наблюдается такая же проблема. Либо просто игнорируем сообщения в логе и используем pipewire-pulse или другие подобные обертки.

Спасибо всем ответившим.



Последнее исправление: dk777 (всего исправлений: 6)

Сейчас обновлюсь и посмотрю.

Korchevatel ★★★★★
()

Только что обновился – всё работает, в логах ничего нету. Вопрос: кроме логов, есть какие-нибудь ещё проблемы?

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

Оно же вроде раньше не требовало ничего кроме rtkit. на 0.3.43 работало нормально на это же ядре (стандартное арчевское 5.16.2-arch1-1).

Теперь обязательно нужен пакет realtime-privileges? Он же ведь в опциональных зависимостях.

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

Да и кажется мне, что проблема не в реалтаймовых полномочиях, а в самом pipewire. но могу ошибаться…

Ладно, сейчас попробую с realtime-privileges…

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

Проблемы с памятью могут быть из-за реалтайма не работающего , в новом pipewire добавили nice -11, realtime-privileges даёт на него разрешение.

Не факт конечно что именно в этом проблема

anonymous
()
Ответ на: комментарий от dk777

Установил realtime-privileges, добавил пользователя в группу realtime и перезагрузился.

Запускаю mpv с рандомным mp3 файлов, те сообщения снова появляются.

Вывод: дело не в rt (теперь уверен в этом ещё больше).

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

Возможно, дело в каких-то настройках ядра, потому что у меня под Zen-ядром всё работает как надо. А то было уже дело, что @James_Holden ядра тестировал на предмет задержки, и как выяснилось, стоковое лучше RT-ядра.

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

проблема не в реалтаймовых полномочиях, а в самом pipewire

Я думаю что да.

Я правильно понимаю, что не работает именно тогда, когда mpd использует именно родное api pipewire?

Возможно просто в нем баг, пока оно не отлажено.

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

Еще можно проверить, не связано ли это с новым wireplumber. Если есть возможность, можно попробовать вместо него старый media-session.

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

Баг

В матриксе/irc wtay предположил, что это связано с sse2 и выравниванием (написал что выравнивание захардкодили 32, а требуется 16).

Воообщем… баг репорт написал (илспользуя deepl), файлы нужные прикрепил.

Так-то оно не сильно мешает, если через pipewire-pulse работает, журнал только засирает.

Ждем-с фикса или используем 0.3.43, если проявляется данное поведение.

Всем спасибо.

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

#pipewire:matrix.org если хочется лицезреть переписку полностью, либо канал на OFTC.

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

что это связано с sse2 и выравниванием (написал что выравнивание захардкодили 32, а требуется 16).

Я так и думал. Ну значит надо ждать.

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

Да, падает если напрямую через пайпварь. Если запускать mpd с ключом PIPEWIRE_CPU=0 или с выводом через pipewire-pulse, то работает, но плюется ворнингами.

dk777
() автор топика

Используется sse2, а для него необходимо выравнивание 16, а не 32

Если данные имеют выравнивание 32 байта, то они автоматически выровнены на 16 байтов (32 кратно 16). Так что такой патч не имел бы смысла. Инструкции AVX2 оперируют 256-битными регистрами (32 байта), и соответственно требуют выравнивания на 32 байта. Патч как раз вроде бы это и делает (если ничего не путаю).

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

Возможно.

Я не особо разбираюсь в этом. Поэтому и написал, что это возможно фикс. Когда выйдет новая версия, тогда и проверим.

Сейчас поправлю пост выше.

dk777
() автор топика
Последнее исправление: dk777 (всего исправлений: 1)

Собрал pipewire из исходников с коммитом, который предположительно должен был решить проблему.

Что могу сказать… Это и правда всё пофиксило.

Спама сообщениями вида pipewire[PID]: spa.mixer-dsp указатель/адрес memory on buffer 0 not aligned больше нет.

mpd перестал падать, если вывод звука идет напрямую через pipewire, перестал.

Все работает нормально.

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

mpd перестал падать, если вывод звука идет напрямую через pipewire.

Поправить сообщение могу только так.

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