çlirimi i rëndësishëm i projektit , që zhvillon një server multimedial të brezit të ri, duke zëvendësuar PulseAudio. PipeWire zgjeron mundësitë e PulseAudio duke ofruar mjete për punë me video, mundësinë e përpunimit të zërit me vonesa minimale dhe një model të ri sigurie për të menaxhuar qasjen në nivelin e pajisjeve dhe rrjedhave. Projekti mbështetet në GNOME dhe tashmë përdoret aktivisht në Fedora Linux për regjistrimin e përmbajtjes së ekranit (screencasting) dhe ndarjen e ekranit në mjedise të bazuara në Wayland. Kodi i projektit është shkruar në gjuhën C dhe nën licencën LGPLv2.1.
Ndryshimet kryesore në PipeWire 0.3:
- Planifikuesi i përpunimit të rrjedhave është rishikuar plotësisht. Ndryshimet lejuan që një shtresë të funksiononte për të siguruar pajtueshmëri me serverin e zërit JACK, performanca e të cilit është e krahasueshme me JACK2.
- E rishikuar dhe shpallur e qëndrueshme . Të gjitha ndryshimet e mëtejshme në API pritet të realizohen pa shkelur pajtueshmërinë mbrapsht me aplikacionet ekzistuese.
- Pjesa përfshin menaxherin e seancave, i cili mundëson menaxhimin e grafikës së nyjeve multimedia në PipeWire, si dhe shtimin e rrjedhave të reja. Deri tani, menaxheri ofron vetëm një grup të thjeshtë funksionesh bazë dhe në të ardhmen do të zgjerohet ose do të zëvendësohet me një variant më funksional dhe fleksibël, siç është .
- Bibliotekat që përfshihen janë përmirësuar për të siguruar pajtueshmërinë me PulseAudio, JACK dhe ALSA, duke lejuar përdorimin e PipeWire me aplikacione ekzistuese të destinuara për sistemet e tjera të zërit. Biblioteka për ALSA tashmë është gati pothuajse në mënyrë të plotë, por bibliotekat për JACK dhe PulseAudio ende kërkojnë përmirësime. PipeWire ende nuk është gati për të zëvendësuar plotësisht PulseAudio dhe JACK, por në versionet e ardhshme do t'i jepet prioritet çështjeve të pajtueshmërisë.
- Pjesa përfshin disa plug-in GStreamer për ndërveprimin me PipeWire. Plug-in-i pipewiresrc, që përdor PipeWire si burim zëri, funksionon pa probleme në shumicën e situatave. Plug-in-i pipewiresink për dërgimin e zërit përmes PipeWire ende ka disa probleme të njohura.
- Mbështetje për PipeWire 0.3 në menaxherin e dritareve Mutter, i zhvilluar nga projekti GNOME.
Kujtojmë se PipeWire zgjeron aplikacionin e PulseAudio duke përpunuar çdo rrjedhë multimediash dhe është në gjendje të përziejë dhe redirektojë rrjedhat me video. PipeWire gjithashtu ofron mundësi për menaxhimin e burimeve të videos, si pajisjet e kapjes së videos, web-kamerat ose përmbajtja e ekranit të shkarkuar nga aplikacionet. Për shembull, PipeWire ofron mundësinë të organizoni bashkëpunimin e disa aplikacioneve me web-kamerën dhe zgjidh problemet me kapjen e sigurt të përmbajtjes së ekranit dhe aksesin e largët në ekran në mjedisin Wayland.
PipeWire gjithashtu mund të veprojë si një server audio, duke siguruar vonesa minimale dhe duke ofruar funksionalitet që kombinon mundësitë. dhe , duke marrë parasysh nevojat e sistemeve profesionale të përpunimit të zërit, të cilat PulseAudio nuk mund të përmbushte. Për më tepër, PipeWire ofron një model të avancuar të sigurisë, duke mundësuar menaxhimin e aksesit në nivelin e pajisjeve të veçanta dhe rrjedhave specifike, duke e bërë më të lehtë organizimin e kallëpizimit të zërit dhe videos nga dhe në kontejnerët e izoluar. Një nga qëllimet kryesore është mbështetje e aplikacioneve të pavarura në formatin Flatpak dhe funksionimi në grupe grafike mbi Wayland.
:
- Kapja dhe riprodhimi i zërit dhe videos me vonesa minimale;
- Mjetet për përpunimin e videos dhe zërit në kohë reale;
- Arkitektura shumëprocesorike, e cila lejon aksesin e përbashkët në përmbajtjen e disa aplikacioneve;
- Modeli i përpunimit mbi bazën e grafëve të nyjeve multimediale me mbështetje për ciklet e zëvendësimit dhe përditësimet atomike të grafëve. Lejohet lidhja e përpunuesve si brenda serverit ashtu edhe plug-in-eve të jashtme;
- Një ndërfaqe efektive për aksesin në video përmes kalimit të descriptorëve të skedarëve dhe aksesit në zë përmes buferave të përbashkëta ring (shared ringbuffer);
- Mundësi për të përpunuar të dhënat multimediatike nga çdo proces;
- Prania e një plani për GStreamer për të thjeshtuar integrimin me aplikacionet ekzistuese;
- Mbështetje për mjedise të izoluar dhe Flatpak;
- Mbështetje për plugin në formatin (Simple Plugin API) dhe mundësia për të krijuar plugina që punojnë në mënyrë të rreptë në kohë reale;
- Një sistem fleksibël për pajtimin e formateve multimediatike në përdorim dhe ndarjen e bufeve;
- Përdorimi i një procesi të sfondit për ruterimin e zërit dhe videos. Mundësia për të punuar si një server audio, një hub për ofrimin e videos për aplikacione (p.sh., për API-në screencast të gnome-shell) dhe një server për menaxhimin e aksesit në pajisjet harduerike të kapjes së videos.
Burimi: opennet.ru
