Pouco mais de 4 anos após a publicação da última versão, foi lançado o Arcan 0.6.0. Conheça melhor esse framework e suas novidades.
Arcan é um framework para a criação de ambientes de interface e desktop, que combina um servidor de exibição, uma estrutura multimídia e um motor de jogo para renderizar gráficos 3D.
O Arcan pode ser usado para criar uma variedade de sistemas gráficos, de interfaces de usuário para aplicativos incorporados a ambientes de desktop independentes.
O desktop tridimensional Safespaces para sistemas de realidade virtual e o ambiente de desktop Durden também estão sendo desenvolvidos com base no Arcan. O código do projeto é escrito em C e é distribuído sob a licença BSD (alguns componentes sob GPLv2 + e LGPL).
O Arcan não está vinculado a um subsistema gráfico separado e pode ser executado em vários ambientes de sistema (BSD, Linux, macOS, Windows) usando back-ends conectáveis.
Então Arcan é uma curiosa combinação de um processador de streaming media, motor de jogo e servidor de exibição com um design inovador que é bem adequado para projetos gráficos interativos em tempo real complexos e simples, e combina bem com qualquer coisa, de interfaces de usuário de ficção científica a algum projeto integrado desenvolvido internamente. para mesas cheias.
É muito modular, tem poucas dependências, mas vem com todas as baterias necessárias incluídas.
Por exemplo, é possível rodar em Xorg, egl-dri, libsdl e AGP (GL/GLES). O servidor de exibição Arcan pode executar aplicativos cliente X, Wayland e SDL2.
Segurança, desempenho e capacidade de depuração são citados como os principais critérios de design para a API Arcan. Para simplificar o desenvolvimento da interface, é proposto o uso da linguagem Lua.
Dentre as características que se destacam no Arcan, podemos encontrar as seguintes:
- Combinação de funções de servidor composto, servidor de exibição e gerenciador de janelas.
- Estrutura de multimídia integrada que fornece ferramentas para trabalhar com gráficos, animação, processamento de streaming de vídeo e som, baixar imagens e trabalhar com dispositivos de captura de vídeo.
- Um modelo multithread para conectar drivers para fontes de dados dinâmicas, de fluxos de vídeo a saída de programa individual.
- Modelo rígido para compartilhar privilégios. Os componentes do mecanismo são divididos em pequenos processos não privilegiados que interagem por meio da interface de memória compartilhada shmif.
- Ferramentas integradas de monitoramento e análise de falhas, incluindo o mecanismo, podem serializar o estado interno dos scripts Lua para simplificar a depuração.
- Função de backup, que em caso de falha devido a um bug no programa, pode iniciar um aplicativo de backup, mantendo as mesmas fontes de dados externas e conexões.
- Ferramentas de compartilhamento avançadas que você pode usar para gravar ou transmitir subconjuntos específicos de fontes de vídeo e áudio enquanto implementa o compartilhamento da área de trabalho.
Agora, pouco mais de 4 anos após a publicação da última versão significativa, foi anunciado recentemente o lançamento de uma nova versão, o Arcan 0.6.0.
Novidades do Arcan 0.6.0
Nesta nova versão os desenvolvedores mencionam que o foco tem sido a transparência da rede.
Foi proposta a primeira versão do servidor gráfico “arcan-net”, que permite organizar o trabalho remoto na rede utilizando o seu próprio protocolo A12.
O redirecionamento de cliente no estilo X11 e o acesso remoto à área de trabalho como em RFB/RDP/SPICE são suportados, bem como streaming de entrada, streaming de áudio e vídeo, acesso compartilhado, migração de cliente multithread e ao vivo.
Os dados de vídeo transmitidos, dependendo dos tipos de janela, são compactados usando codecs com e sem perdas.
Para criptografia autenticada de canais de comunicação, o pacote X25519 + Chacha8 + Blake3 é usado.
Outras mudanças incluem:
- Ferramentas para depurar a atividade do cliente.
- Console estilo KMSCon/FBCon.
- A capacidade de emprestar alguns drivers desenvolvidos para o gerenciador de janelas em aplicativos.
- Implementação de driver para dispositivo de rastreamento ocular Tobii 4C.
- Suporte para isolamento de cliente XWayland.
- Componente Arcan-trayicon para colocar ícones na bandeja do sistema.
- Suporte para sintetizadores de voz.
- Redesenho do modo de operação em sistemas sem monitores (headless).
Para saber mais sobre essa versão do Arcan, acesse a nota de lançamento.