Lançamento do ESP-KVM 0.51.0, um firmware IP-KVM de código aberto com gravação de tela em cartão microSD.

Foi lançado o ESP-KVM 0.51.2, um firmware de código aberto que transforma uma placa de microcontrolador ESP32-P4 em um KVM baseado em IP com acesso via navegador à tela, teclado e mouse de um computador remoto, sem a necessidade de instalar um agente na máquina alvo. O código é escrito em C e distribuído sob a licença Apache 2.0. A principal novidade desta versão é a capacidade de gravar a atividade da tela do dispositivo alvo no cartão microSD.

A gravação é iniciada com um botão na interface web e salva no diretório VIDEO como arquivos .ts com vídeo H.264. O dispositivo grava o mesmo fluxo que envia aos espectadores, portanto, não é necessário re-codificar: na placa Espressif ESP32-P4 Function EV, a taxa de quadros durante a gravação permaneceu em 21-22 fps sem perda na reprodução no dispositivo de destino. O arquivo .ts é reproduzido no VLC e no mpv e, se interrompido pela remoção da placa ou desligamento, continua a reprodução até o final. Gravações longas são divididas em arquivos de 10 minutos e param após uma hora; ambos os valores são configuráveis. Um botão separado salva uma captura de tela em formato JPEG na pasta SCREENSHOTS, mesmo quando o codec H.264 está ativado: o codificador JPEG de hardware ocioso é usado para capturar a imagem.

As teclas digitadas e os cliques do mouse podem ser gravados em um arquivo de legenda .srt ao lado do vídeo, como strings como "Digitado: root", "Ctrl+Alt+Delete" e "Clique esquerdo (812, 440)". Por padrão, o texto digitado é substituído por pontos; o texto completo pode ser salvo, se desejado. O layout é obtido das configurações do teclado de destino.

Foi adicionado um modo de câmera veicular, funcionando com o mesmo princípio de uma câmera veicular: o dispositivo monitora continuamente os últimos minutos de tempo de tela e os salva, juntamente com os segundos subsequentes em que algo acontece — a tela fica sólida (típico de uma tela de parada de emergência), uma frase monitorada aparece, o indicador de energia ATX se apaga ou o operador pressiona um botão. O vídeo resultante é convertido para MP4 com capítulos para cada evento e, se as notificações estiverem ativadas, é enviado para o Telegram como um vídeo reproduzido no chat.

Existem duas maneiras de armazenar o histórico: na PSRAM, onde não ocupa espaço no cartão até que o evento ocorra, ou no próprio cartão em pequenos fragmentos, com os obsoletos excluídos. O segundo método também funciona em placas com revisão de chip até a versão 3.0, onde, após a inicialização do codificador H.264, restam cerca de 3 MB de PSRAM livre, em comparação com 11 MB em revisões mais recentes.

Foi adicionado um modo timelapse: um frame é salvo a cada número especificado de segundos, e a reprodução ocorre a 25 frames por segundo, permitindo capturar uma hora de gravação em intervalos de 10 segundos em 14 segundos de vídeo. Gravações e fotos são organizadas em um painel de interface separado, onde podem ser baixadas, excluídas e reproduzidas sem a necessidade de baixar o arquivo inteiro primeiro. Arquivos MP4 são abertos com o player integrado do navegador, enquanto arquivos .ts são analisados ​​em frames no console e decodificados pelo mesmo decodificador H.264 do vídeo ao vivo, com opções de retrocesso e legendas. O suporte a intervalos HTTP permite o retrocesso no dispositivo.

Foi implementada a busca de texto na tela. Durante a gravação, o dispositivo lê a tela como um conjunto de caracteres a cada três segundos e salva o que lê em um arquivo ao lado do vídeo. No painel de gravação, uma busca por frase mostra o momento em que ela estava na tela e reproduz a gravação a partir desse ponto. Somente as telas geradas pelo gerador de caracteres são lidas — a BIOS, o menu de inicialização, o programa de configuração e o console.

É possível iniciar gravações, timelapse e capturas de tela a partir de cenários do dispositivo ("gravar 300", "timelapse 60", "captura de tela") e do Home Assistant, que possui um botão e um interruptor para isso. O relógio do dispositivo agora é sincronizado via NTP e o fuso horário pode ser selecionado em uma lista de cidades nas configurações — anteriormente, ele ficava armazenado em uma seção oculta da interface.

Outras alterações em versões posteriores à 0.45.0:

  • 0.46. Foram adicionadas versões para as placas VIEWE ESP32-P4-Pi e Waveshare ESP32-P4-NANO-WIFI6-DB. O firmware agora é compilado com a otimização -O2, pequenas alocações de memória foram movidas para a PSRAM e uma tarefa travada agora causa uma reinicialização com um despejo de memória.
  • 0.47. Agora estão disponíveis runbooks — macros que podem aguardar o aparecimento ou desaparecimento de uma frase na tela de texto e são executadas no próprio dispositivo quando o navegador é fechado. Scripts no formato DuckyScript agora são aceitos. Um agendador com sintaxe cron e notificações para o Telegram (com capturas de tela) ou webhooks foram adicionados.
  • 0.48. O cartão microSD e o módulo WiFi agora funcionam simultaneamente — anteriormente, ambos utilizavam o mesmo slot SDMMC.
  • 0.49. O cartão microSD nas placas Function EV e Waveshare ESP32-P4-ETH agora opera com uma frequência de barramento de 40 MHz em vez de 4 MHz (leitura de aproximadamente 9 MB/s e gravação de aproximadamente 4 MB/s): as linhas de alimentação do slot não eram alimentadas pelo regulador integrado. O carregamento de imagens via interface web foi acelerado em aproximadamente 50 vezes, para 3,5 MB/s via Ethernet. O modo teclado foi adicionado para BIOS mais antigas — a máquina de destino agora reconhece um único dispositivo na velocidade USB 1.1, excluindo mouses ou dispositivos de armazenamento. O dispositivo agora informa se o modo HDMI excede a largura de banda de duas vias MIPI CSI.
  • 0.49.1. As velocidades de leitura da unidade virtual pela máquina de destino foram aceleradas de 5,6 para 9 MB/s, lendo do cartão em blocos de 256 KB. As alterações de imagem agora são visíveis para a máquina de destino sem a necessidade de reconectar o USB.
  • 0.50. O cartão microSD pode ser trocado com o dispositivo em funcionamento, mesmo se removido durante a cópia: o slot é verificado a cada cinco segundos. Corrigido um atraso no MJPEG que fazia com que o navegador exibisse o quadro anterior à última tecla pressionada em uma tela estática.

Fonte: opennet.ru

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