1 pontos por GN⁺ 2025-03-02 | 1 comentários | Compartilhar no WhatsApp
  • Criando o video wall mais único do mundo

    • Este projeto conta a história do processo de criar um video wall aproveitando Chromebooks antigos.
    • O projeto foi realizado em colaboração entre o autor, responsável pelo software, e seu amigo Aksel Salmi, que projetou o hardware.
    • Tudo começou com a ideia de criar um video wall usando Chromebooks que seriam descartados pela escola.
  • Apresentando o Lenovo ThinkPad 11e

    • O Lenovo ThinkPad 11e é um notebook escolar de baixo desempenho que despertou no autor, quando criança, o interesse por computadores.
    • Hoje, ele se tornou candidato ao descarte por não receber mais atualizações de software e ter dificuldade até para carregar páginas da web.
  • O que é um video wall?

    • Um video wall é a combinação de várias telas para formar uma única tela grande.
    • Neste projeto, decidiu-se reutilizar as telas dos notebooks para montar um video wall.
  • Será que a tela pode ser acionada com hardware separado?

    • No início, a ideia era usar apenas os painéis de display dos notebooks e controlá-los com um computador mais potente, mas isso foi abandonado por questões de tempo e custo.
  • Tentativa de sincronizar vídeo entre dois dispositivos

    • Concluiu-se que seria melhor operar cada tela de forma independente, e o foco passou a ser o problema de sincronizar o vídeo entre vários computadores.
    • A função de streaming do VLC foi testada, mas não era adequada para uma sincronização perfeita.
  • Sincronização com Socket.io

    • Foi encontrada uma forma de sincronizar a reprodução de vídeo em uma página web usando Socket.io.
    • Quando a reprodução termina, cada cliente envia um evento de início para manter a sincronização.
  • Substituindo o ChromeOS

    • Por causa dos problemas de software dos Chromebooks, decidiu-se substituir o ChromeOS por Linux.
    • O firmware padrão foi sobrescrito com coreboot, e foi criado um script para reproduzir vídeos automaticamente.
  • Etapa final

    • Aksel ficou responsável pela montagem do hardware, e o autor aprimorou a forma de inicializar direto em uma página web.
    • Foi configurado o Porteus Kiosk para iniciar automaticamente o navegador Chromium.
  • Criando uma distribuição própria

    • Com uma instalação mínima baseada em Debian, foi criado um USB de instalação automática.
    • Também foi construído um controlador capaz de gerenciar os clientes c-sync e atribuir vídeos.
  • Montagem e ajustes finais

    • Os notebooks foram montados na parede usando o hardware de fixação projetado por Aksel.
    • A velocidade das ventoinhas foi ajustada manualmente para resolver os problemas de aquecimento.
  • O significado do projeto

    • Este projeto mostra a importância do trabalho em equipe e da colaboração, além de ser um exemplo de uso útil de lixo eletrônico.
    • O projeto teve grande impacto na experiência do autor no ensino médio e só foi possível com a ajuda de muitas pessoas.

1 comentários

 
GN⁺ 2025-03-02
Comentários no Hacker News
  • Parabéns por concluir esse projeto divertido. Eu trabalho bastante com sincronização de conteúdo de mídia em vários dispositivos, então é sempre interessante ver que tipo de solução as pessoas encontram. Você provavelmente deve ter esbarrado nos players de mídia da BrightSign durante a pesquisa. O custo total para comprar 20 displays pode facilmente chegar a dezenas de milhares de dólares. Muitos elogios por ter feito isso com dispositivos reciclados

    • Se tiver interesse em trabalhar em uma codebase relacionada à sincronização de mídia, entre em contato. Contratamos desenvolvedores com frequência para trabalhos freelance
  • Eu trabalhava no Google quando o Chromebook foi lançado. Fiz uma proposta para decoração do lobby, mas ela foi rejeitada. Provavelmente porque eu estava pedindo entre 40 e 64 dispositivos

    • Eu provavelmente não teria tentado sincronização de vídeo. Em vez disso, teria feito animações baseadas em tempo e sincronizado os relógios usando a rede
    • Você pode ver um exemplo aqui: [link do YouTube]
    • 8 dispositivos estão executando o Chrome. O que foi sincronizado foram apenas as configurações e o tempo
    • Os dispositivos não precisam necessariamente estar em formato de grade. Fui inspirado pelo aquário virtual do Boston Science Museum
  • Muito legal! Fiz algo parecido com um conjunto 4x4 de tablets. Conectei 16 deles via ADB a um único host e consegui automatizar a maior parte do trabalho

    • Criei 16 telas virtuais no sway junto com 16 clientes VNC e transmiti tudo por Wi-Fi. O Wi-Fi funcionou tão bem que nem procurei uma solução mais eficiente
    • Durante esse período, meu PC tinha 19 displays. 17 deles estavam conectados via VNC. Eu podia trabalhar em todos os displays ou atribuir cada um a uma finalidade/programa diferente (música, htop, calendário, relógio, sessões de ssh)
    • Lidar com o hardware era bem chato. Alguns ficavam lentos, alguns tinham problemas de conexão e outros não carregavam a bateria
  • Não posso dizer com total certeza por que essa solução funciona tão bem, mas por acaso acabei chegando a uma solução absurdamente engenhosa

    • O computador mais lento atrasa o computador mais rápido
    • Isso funciona bem porque o projeto foi otimizado levando em conta o gargalo do sistema. Vale a pena dar uma olhada na teoria das restrições
  • Um caso parecido de alguns anos atrás: junkyard jumbotron permitia usar displays reunidos aleatoriamente para mostrar partes de uma imagem maior

    • [link do GitHub]
    • Vídeo [link do YouTube]
  • O Chromebook literalmente não tem dobradiça

  • O mais interessante é que o problema de congelamento foi resolvido ao mudar para o coreboot. Fico curioso se existe alguma teoria sobre por que isso acontecia. Será que era um problema relacionado a ACPI/DSDT, ou o controlador de hardware estava sendo inicializado incorretamente com o BIOS original?

  • Fico pensando se não teria sido mais fácil criar um único vídeo e fazer os computadores ampliarem partes diferentes dele. Depois, reproduzir o vídeo ao mesmo tempo pelo navegador web

  • E se você viu o incrível video wall feito com displays de iPod Nano 6 com engenharia reversa e quiser aprender sobre engenharia reversa?

    • Há uma série de vídeos de 11 anos atrás do Mikes Electric Stuff. É excelente
    • [link do YouTube]
  • Eu e outro desenvolvedor provavelmente fizemos isso há uns 8 anos em um call center de 300 posições usando thin clients com Windows Embedded. Usamos timestamps e uma biblioteca JavaScript de alta precisão para sincronização

    • Depois que todo mundo ia embora, fazíamos o nome da empresa e as estatísticas do dia rolarem em todas as telas. Até algumas horas antes da primeira chamada, carregávamos um vídeo ou texto de espera, ou simplesmente barras coloridas, dependendo do dia.