Servidor multimídia PipeWire 0.3 disponível, substituindo o PulseAudio

Publicado lançamento significativo do projeto PipeWire 0.3.0, um servidor multimídia de nova geração que substitui o PulseAudio. O PipeWire expande as capacidades do PulseAudio com recursos para trabalhar com fluxos de vídeo, permitindo o processamento de áudio com latências mínimas e um novo modelo de segurança para gerenciar o acesso em nível de dispositivos e fluxos individuais. O projeto é suportado pelo GNOME e já está sendo amplamente utilizado no Fedora Linux para gravação de conteúdo de tela (screencasting) e compartilhamento de tela em ambientes baseados no Wayland. O código do projeto é escrito na linguagem C e é distribuído licenciado sob LGPLv2.1.

Principais mudanças no PipeWire 0.3:

  • O planejador de processamento de fluxos foi completamente reestruturado. As mudanças possibilitaram a execução de uma camada para garantir a compatibilidade com o servidor de áudio JACK, cuja performance é comparável à do JACK2.
  • Foi reestruturado e declarado estável API. Todas as alterações futuras na API estão previstas para serem feitas sem quebrar a compatibilidade reversa com aplicativos existentes.
  • Foi incluído um gerenciador de sessões, permitindo gerenciar o grafo de nós multimídia no PipeWire, além de adicionar novos fluxos. Por enquanto, o gerenciador oferece apenas um conjunto básico de funções e será expandido ou substituído por uma opção mais funcional e flexível no futuro, como WirePlumber.
  • As bibliotecas incluídas foram aprimoradas para garantir compatibilidade com PulseAudio, JACK e ALSA, permitindo que o PipeWire funcione com aplicativos existentes que dependem de outros sistemas de áudio. A biblioteca para ALSA está quase pronta, mas as bibliotecas para JACK e PulseAudio ainda precisam de melhorias. O PipeWire ainda não está pronto para substituir totalmente o PulseAudio e o JACK, mas questões de compatibilidade serão uma prioridade em lançamentos futuros.
  • Alguns plugins do GStreamer foram incluídos para interação com o PipeWire. O plugin pipewiresrc, que usa o PipeWire como fonte de áudio, na maioria das situações funciona sem problemas. O plugin pipewiresink para saída de áudio através do PipeWire ainda tem alguns problemas conhecidos.
  • O suporte ao PipeWire 0.3 está integrado no gerenciador de janelas Mutter, desenvolvido pelo projeto GNOME.

Cabe lembrar que o PipeWire expande a aplicação do PulseAudio ao processar quaisquer fluxos multimídia e é capaz de misturar e redirecionar fluxos de vídeo. O PipeWire também oferece recursos para gerenciar fontes de vídeo, como dispositivos de captura de vídeo, webcams ou conteúdo de tela produzido por aplicativos. Por exemplo, o PipeWire permite que vários aplicativos trabalhem juntos com a webcam e resolve problemas com a captura segura de conteúdo de tela e acesso remoto à tela em um ambiente Wayland.

O PipeWire também pode atuar como um servidor de áudio, proporcionando latências mínimas e oferecendo funcionalidade que combina recursos PulseAudio e JACK, incluindo as necessidades de sistemas profissionais de processamento de áudio, nas quais o PulseAudio não poderia competir. Além disso, o PipeWire oferece um modelo de segurança avançado que permite gerenciar o acesso em nível de dispositivos individuais e fluxos específicos, facilitando a organização do encaminhamento de áudio e vídeo de e para contêineres isolados. Um dos principais objetivos é o suporte a aplicativos autossuficientes no formato Flatpak e a operação na pilha gráfica baseada em Wayland.

Principais da funcionalidade:

  • Captura e reprodução de áudio e vídeo com latências mínimas;
  • Recursos para processamento de vídeo e áudio em tempo real;
  • Arquitetura multiprocessada que permite o compartilhamento de conteúdo entre múltiplos aplicativos;
  • Modelo de processamento baseado em um gráfico de nós multimídia com suporte a ciclos de feedback e atualizações atômicas do gráfico. É permitido conectar manipuladores tanto dentro do servidor quanto plugins externos;
  • Interface de acesso eficiente a streams de vídeo através da transmissão de descritores de arquivos e acesso ao áudio através de buffers circulares compartilhados;
  • Capacidade de processamento de dados multimídia de quaisquer processos;
  • Disponibilidade de um plugin para GStreamer para facilitar a integração com aplicativos existentes;
  • Suporte para ambientes isolados e Flatpak;
  • Suporte a plugins no formato SPA (Simple Plugin API) e a capacidade de criar plugins que operam em modo de tempo real rígido;
  • Sistema flexível de negociação de formatos multimídia utilizados e alocação de buffers;
  • Uso de um único processo em segundo plano para roteamento de áudio e vídeo. Capacidade de operar na forma de um servidor de áudio, hub para fornecer vídeo a aplicativos (por exemplo, para a API de screencast do gnome-shell) e servidor para gerenciar o acesso a dispositivos de captura de vídeo.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster