Pas një periudhë prej shtatë muajsh zhvillimi, është formuar një degë e re e qëndrueshme e serverit multimedial PipeWire 1.2.0, i cili e zëvendëson serverin e audios PulseAudio dhe dallohet nga ky i fundit me shtimin e mjeteve për të punuar me rrjedhat e videos, mundësinë e përpunimit të zërit me vonesa minimale dhe një model të ri sigurie për menaxhimin e aksesit në nivelin e pajisjeve dhe rrjedhave individuale. Projekti mbështetet në GNOME dhe përdoret si standard në Fedora Linux, RHEL, Ubuntu, Debian, SUSE/openSUSE dhe shumë distros të tjera të Linux-it. Kodi i projektit është shkruar në gjuhën C dhe shpërndahet nën licencën LGPLv2.1.
PipeWire është ndërtuar mbi një arkitekturë shumëprocesore, e cila lejon qasjen e përbashkët në përmbajtjen e disa aplikacioneve.
Ofron mundësi për përpunimin e çdo lloj rrjedhe multimediale, përzierjen dhe redirektimin e rrjedhave me video, si dhe menaxhimin e burimeve të videos, të tilla si pajisjet e kapjes së videos, kamerat web ose përmbajtja e ekranit e cila përpunohet nga aplikacionet. Për shembull, PipeWire ofron mundësinë për të organizuar punën e përbashkët të disa aplikacioneve me kamerën web dhe zgjidh problemet me kapjen e sigurt të përmbajtjes së ekranit dhe aksesin në distancë në ekran në një ambiente Wayland.
Kur përdoret si server zëri, PipeWire mund të sigurojë vonesa minimale dhe të ofrojë funksionalitetin që kombinon mundësitë e PulseAudio dhe JACK, duke përfshirë ato që marrin parasysh nevojat e sistemeve profesionale të përpunimit të zërit, të cilat nuk mund të përballohen nga PulseAudio. Për më tepër, PipeWire ofron një model të avancuar sigurie, i cili lejon menaxhimin e aksesit në nivelin e pajisjeve individuale dhe rrjedhave specifike, dhe e lehtëson organizimin e transmetimit të zërit dhe videos nga kontejnerët e izoluar dhe në to. Një nga qëllimet kryesore është mbështetje e aplikacioneve të vetë-mjaftueshme në formatin Flatpak dhe puna në grumbullin grafik të bazuar në Wayland.
Në këtë version të ri:
- Në modelin e përpunimit të rrjedhave të dhënash mbi bazën e një grafi nodalesh është shtuar mbështetje për përpunimin asinkron, ku grafi i nodalesh nuk bllokohet në mungesë të daljes nga një nod, por vazhdon punën duke përdorur të dhënat nga nodi, të marra në ciklin e kaluar. Në këtë mënyrë, me çmimin e vonesës një cikli, arrijmë të shmangim situatën kur një nod bllokon punën e nodave të tjerë në grafik.
- ĂshtĂ« realizuar koncepti i grupeve tĂ« nodave tĂ« sinkronizuar (node.sync-group), i cili lejon krijimin e grupeve tĂ« nodave, tĂ« aktivizuara njĂ«kohĂ«sisht nga planifikuesi. Funksioni mund tĂ« pĂ«rdoret pĂ«r planifikimin njĂ«kohĂ«sisht tĂ« aktivizimit tĂ« nodave gjatĂ« nisjes sĂ« transportit JACK.
- Janë përmirësuar informacionet e gabimeve në skedarin e konfigurimit, duke shtuar përmendjen e vendit ku është bërë gabimi në parametrat (numri i rreshtit dhe pozita në rresht).
- ĂshtĂ« shtuar mbĂ«shtetje pĂ«r teknologjinĂ« Explicit Sync, qĂ« lejon aplikacionet tĂ« informojnĂ« menaxherin kompozitor tĂ« bazuar nĂ« protokollin Wayland pĂ«r gatishmĂ«rinĂ« e daljes sĂ« kadrave nĂ« ekran, gjĂ« qĂ« mundĂ«son arritjen e uljes sĂ« vonesave dhe eliminon shfaqjen e artefakteve gjatĂ« daljes sĂ« grafikĂ«s. NĂ« veçanti, Explicit Sync zgjidh problemet me prishjen e daljes dhe ngadalĂ«simet nĂ« sistemet me GPU NVIDIA dhe mbĂ«shtetje tĂ« aktivizuar pĂ«r Wayland.
- ĂshtĂ« realizuar mundĂ«sia pĂ«r tĂ« pĂ«rcaktuar metadatat e detyrueshme gjatĂ« miratimit tĂ« parametrave tĂ« buffers, tĂ« cilat pĂ«rdoren pĂ«r tĂ« siguruar mbĂ«shtetje pĂ«r "Explicit Sync".
- ĂshtĂ« shtuar mbĂ«shtetje pĂ«r krijimin dhe pĂ«rdorimin e disa cikleve tĂ« pĂ«rpunimit tĂ« tĂ« dhĂ«nave (data-loop) nĂ« klient dhe serveri. NĂ« ciklet e pĂ«rpunimit tĂ« tĂ« dhĂ«nave janĂ« shtuar mundĂ«si pĂ«r lidhje me bĂ«rthamĂ« tĂ« caktuara tĂ« CPU dhe vendosje prioriteteve.
- ĂshtĂ« ofruar mundĂ«sia pĂ«r ndryshimin e niveleve tĂ« ndezjes, qĂ« kontrollojnĂ« daljen e informacionit nĂ« log, pa e rinisur, duke pĂ«rdorur metadatat.
- Logjika e lidhjes së peers (nodave në grafikun e rrjedhave të dhënash, të cilat përfaqësojnë burime ose marrës të jashtëm të të dhënave) është ristrukturuar.
- Janë pranuar patch-e për përpunimin e pajisjeve, të cilat janë etiketuar si konfliktuale përmes ALSA UCM (Use Case Manager).
- ĂshtĂ« shtuar moduli snapcast-discover pĂ«r transmetimin e pĂ«rmbajtjes nĂ« hostingut SnapĐĄast.
Burimi: opennet.ru
