2 pontos por GN⁺ 2023-11-29 | 1 comentários | Compartilhar no WhatsApp
  • O PeerTube, desenvolvido pela organização sem fins lucrativos Framasoft, é voltado a criadores, veículos de mídia, instituições e educadores que desejam operar sua própria plataforma de vídeos como alternativa ao YouTube e à Twitch
  • O v6, lançado após o v5.1 e o v5.2 em 2023, é o sexto grande lançamento e incorpora ideias do site de feedback dos usuários
  • A transcodificação remota do v5.2 é um recurso-base que transfere tarefas de conversão intensivas em CPU para outro servidor, reduzindo custos operacionais e a carga sobre os recursos
  • O v6 amplia recursos que criadores e espectadores percebem de imediato, como proteção por senha, prévia em storyboard, reenvio de vídeos e adição de capítulos
  • Com testes e otimizações de desempenho, remoção do WebTorrent e foco em HLS·WebRTC P2P, o PeerTube melhora ao mesmo tempo a experiência de administradores e espectadores

O que é o PeerTube v6

  • O PeerTube é um software desenvolvido pela Framasoft para que criadores, veículos de mídia, instituições e educadores possam administrar sua própria plataforma de vídeos como alternativa ao YouTube e à Twitch
  • O v6 é a sexta versão principal e é apresentado como o lançamento mais ambicioso desde a adição de livestreaming peer-to-peer
  • Os novos recursos foram desenvolvidos com base em ideias de usuários propostas e votadas no site de feedback do PeerTube
  • A Framasoft pretende publicar em duas semanas uma notícia separada sobre a história do PeerTube, o estado do projeto e os próximos planos

Mudanças que continuam a partir do v5.1 e v5.2 em 2023

  • PeerTube v5.1

    • Em março de 2023, o PeerTube v5.1 adicionou um recurso para que administradores de instâncias possam gerenciar e revisar solicitações de conta
    • Foi incluído um botão de voltar ao ao vivo para retornar ao ponto atual da transmissão em situações de atraso no livestream
    • Os plugins de autenticação também foram melhorados para facilitar o login com credenciais externas
  • PeerTube v5.2

    • Em junho de 2023, o PeerTube v5.2 adaptou o feed RSS dos canais do PeerTube ao padrão de podcast para que clientes de podcast possam lê-los
    • Streamers podem definir antecipadamente a visibilidade do replay da live como Public, Unlisted, Private ou Internal
    • A navegação sem mouse para usuários que navegam por teclado foi melhorada
    • A documentação também foi reforçada

Como a transcodificação remota reduz a carga operacional

  • O principal recurso do v5.2 é a transcodificação remota
  • O PeerTube precisa converter vídeos enviados ou transmissões ao vivo para formatos eficientes, e esse trabalho consome muitos recursos de CPU
  • Antes, operadores precisavam preparar servidores com CPU de alto desempenho até para tarefas que não eram necessárias o tempo todo
  • A transcodificação remota permite transferir parte ou todo o trabalho de conversão para outro servidor mais potente
    • Esse servidor também pode ser compartilhado por vários administradores
  • Esse recurso torna a operação do PeerTube mais barata e resiliente, além de aumentar a eficiência energética e a possibilidade de compartilhamento de recursos entre comunidades
  • As melhorias técnicas contaram com apoio financeiro do programa NGI Entrust e da fundação NLnet

Recursos adicionados para usuários no v6

  • Vídeos protegidos por senha

    • Criadores com conta no PeerTube podem definir uma senha única ao enviar, importar ou alterar as configurações de um vídeo
    • Isso pode ser usado para oferecer conteúdo exclusivo, liberar etapas de cursos educacionais ou compartilhar de forma restrita com pessoas de confiança
    • Com a REST API, administradores e desenvolvedores podem definir e armazenar várias senhas, facilitando conceder e revogar acesso
    • Esse recurso foi desenvolvido por Wicklow durante um estágio na Framasoft
  • Prévia em storyboard

    • O v6 adiciona o recurso de storyboard, que mostra miniaturas de frames ao passar o mouse ou o dedo sobre a barra de progresso
    • O storyboard é gerado ao enviar ou importar um vídeo, então passa a vir por padrão em novos vídeos de instâncias atualizadas para o v6
    • Para vídeos existentes, administradores podem gerar storyboards executando o comando npm run create-generate-storyboard-job
    • Esse trabalho pode consumir recursos de CPU
  • Reenvio de vídeos

    • Criadores podem substituir um arquivo de vídeo existente por uma nova versão para corrigir erros, adicionar novas informações ou oferecer uma edição melhor
    • Ao substituir, o arquivo de vídeo anterior é apagado permanentemente, mas URL, título, informações, comentários e estatísticas são mantidos
    • Esse recurso exige confiança entre produtores de vídeo e administradores, por isso só pode ser usado se o administrador o ativar na plataforma PeerTube
    • Vídeos atualizados exibem a tag Video re-upload
  • Adição de capítulos

    • Criadores podem definir o timecode e o título de cada capítulo na nova aba de chapters da página de configurações do vídeo
    • Ao importar vídeos de outras plataformas, o PeerTube pode reconhecer e importar automaticamente os capítulos do vídeo original
    • Quando os capítulos são configurados, a barra de progresso é dividida por seções e o título do capítulo é mostrado ao passar o mouse ou tocar na seção correspondente

Testes e otimizações de desempenho

  • Em 2022, foram realizados testes de carga de livestreaming com mais de 400 espectadores simultâneos por meio da transmissão Au Poste ! do jornalista independente francês David Dufresne e da hospedagem da Octopuce
  • Em 2023, decidiu-se realizar testes simulando 1.000 usuários simultâneos em condições de livestreaming e streaming de vídeo comum
  • A Octopuce apoiou a implantação da infraestrutura de testes
  • A Framasoft pretende publicar no fim de 2023 ou início de 2024 um relatório com conclusões e recomendações de configuração de servidor por caso de uso
  • Os resultados iniciais dos testes levaram a várias melhorias de desempenho no v6
    • Processamento de tarefas HTTP unicast em worker threads
    • Processamento de assinaturas de requisições ActivityPub em worker threads
    • Otimização de requisições HTTP de vídeos recomendados
    • Otimização de consultas SQL de vídeos ao filtrar por live ou tags
    • Otimização do endpoint /videos/{id}/views quando há muitos espectadores
    • Adição de recurso para desativar logs HTTP do PeerTube

Remoção do WebTorrent e melhorias no player

  • O v6 remove o suporte a WebTorrent e passa a focar em HLS para reduzir dívida técnica
    • WebTorrent e HLS são elementos tecnológicos que fornecem streaming peer-to-peer em navegadores web
    • O PeerTube considera que o HLS é mais adequado para o cenário atual e os planos futuros
    • O foco do v6 é HLS e WebRTC P2P
  • O player de vídeo ficou mais eficiente
    • Ele não é recriado toda vez que o vídeo muda
    • Configurações de visualização como velocidade e tela cheia são mantidas mesmo após trocar de vídeo
    • O tamanho é ajustado automaticamente à proporção do vídeo
  • O SEO foi melhorado para que vídeos hospedados na plataforma PeerTube apareçam melhor nos resultados de mecanismos de busca
  • Também houve melhorias de acessibilidade em vários níveis para melhorar a experiência de pessoas com deficiência
  • O changelog completo pode ser consultado no lançamento do PeerTube v6.0.0

Próximos planos e apoio financeiro

  • A Framasoft avalia que o PeerTube vem ganhando atenção e reconhecimento, e que sua comunidade está crescendo, em meio à reação do YouTube contra bloqueadores de anúncios, ao aumento da exploração de streamers pela Twitch e à maior percepção da toxicidade desses sistemas
  • Como há muitos anúncios sobre os próximos planos do PeerTube, uma notícia separada será publicada em duas semanas
  • Também está planejada uma livestream Ask Us Anything para responder perguntas sobre o PeerTube
  • As novidades do PeerTube podem ser acompanhadas pela PeerTube Newsletter, pela conta do PeerTube no Mastodon e pelo Framablog
  • O desenvolvimento do PeerTube é realizado em conjunto por 1 desenvolvedor remunerado em tempo integral, 1 estagiário e a comunidade
  • A Framasoft é uma organização francesa sem fins lucrativos, e 75% de sua receita anual vem de doações individuais
  • O financiamento do desenvolvimento do PeerTube vem principalmente de entusiastas francófonos de software livre e de código aberto e de subsídios da NLnet por meio das iniciativas NGI de 2021 e 2023
  • A Framasoft precisa arrecadar €176,425 em 5 semanas para equilibrar o orçamento de 2024

1 comentários

 
GN⁺ 2023-11-29
Opiniões do Hacker News
  • Tenho interesse porque queria experimentar o PeerTube, mas não conheço bem
    No texto, dizem que removeram o WebTorrent e escolheram HLS; então fico me perguntando se o PeerTube deixou de ser P2P
    HLS soa como algo ligado a codec ou formato de contêiner, enquanto WebTorrent soa como um modo de fazer os peers transmitirem dados de vídeo entre si para que o servidor não fique facilmente congestionado em picos de tráfego
    Eu achava que essa era a principal vantagem do PeerTube sobre outras plataformas, e que até o nome vinha daí; não sei se entendi errado ou se isso realmente desapareceu
    No texto dizem que HLS também é um componente do streaming P2P, mas HLS não seria mais parecido com um formato de contêiner que encapsula dados de vídeo, como MP4 ou MKV?
    Os dados HLS, se o WebTorrent não tivesse sido removido, parecem mais algo que poderia ser distribuído via WebTorrent

    • Há uma página relacionada na documentação oficial, em docs.joinpeertube.org
      Ela precisa ser atualizada para refletir a remoção do WebTorrent, mas a parte de HLS ainda é válida
      Ao usar o player HLS, o player carrega a playlist HLS do servidor de origem com hls.js, e o PeerTube fornece ao hls.js um loader personalizado para baixar segmentos não só via HTTP, mas também via P2P baseado em WebRTC
      Os segmentos são recebidos por HTTP do servidor de origem e dos servidores que espelham o vídeo e, ao mesmo tempo, via WebRTC de outros navegadores assistindo ao mesmo vídeo; então o hls.js faz o streaming disso para o elemento HTML
    • PeerTube não é hospedagem distribuída, mas streaming distribuído
      A cópia original fica hospedada em algum site, seja o meu ou o de outra pessoa, e, se bastante gente assistir, o sistema de distribuição de streaming P2P entra em ação para acrescentar largura de banda
      É apenas uma forma de não precisar de uma largura de banda enorme de hospedagem para suportar muitos espectadores
      Mas quase ninguém usa PeerTube. Olhando a lista de populares da Hardlimit, o vídeo em 1º lugar tem 217 visualizações, e o vídeo que enviei há dois dias para explicar um relatório de bug está em 9º, com 14 visualizações. É um nível lamentável
      Talvez decole se houver integração com WordPress, permitindo que sites WordPress sirvam vídeos via PeerTube, e se mais sites passarem a incorporar automaticamente links como vídeos reproduzíveis
      https://video.hardlimit.com/videos/trending
    • A explicação é que “a v6 remove o suporte a dívida técnica ao WebTorrent e se concentra em HLS para limpar dívida técnica. Ambos são componentes técnicos para streaming P2P em navegadores web, mas HLS se encaixa melhor no que o PeerTube faz hoje e pretende fazer no futuro”
    • Essa parte também me deixa bastante confuso
      WebTorrent é só torrent sobre streams de dados WebRTC; então, quando dizem “P2P HLS”, parece significar enviar HLS sobre streams de dados WebRTC ou sobre streams de vídeo
  • A remoção do WebTorrent é uma pena. Em clientes torrent reais, isso ainda era um trabalho em andamento; esse ecossistema realmente se move devagar por natureza, mas a culpa não é do WebTorrent
    No fim, ele acabou sendo retirado antes mesmo de ter uma chance num ecossistema que se move lentamente
    Além disso, ficou mais difícil para instâncias PeerTube fazerem P2P só com um infohash compartilhado e DHT, por exemplo
    Reuploads de vídeos entram em conflito com esse tipo de solução imutável, mas isso é quase uma vantagem
    Você sabia que um vídeo antigo do Crazy Frog foi silenciosamente trocado por um corte diferente bem recentemente? https://youtu.be/k85mRPqvMbE?t=75 vs. https://hobune.stream/videos/k85mRPqvMbE
    Reupload deve ser reupload, e a versão anterior deve permanecer separada
    Indo além, fica ainda mais impossível criar e descobrir arquivos interoperáveis do YouTube baseados na mesma origem. Os esforços de preservação e espelhamento ficam isolados e duplicados

    • WebTorrent já não era usado como padrão havia muito tempo
      Isso está ligado à dificuldade de implementar o streaming ao vivo oferecido desde a v3
    • WebRTC é tão complexo que também é difícil culpar só os clientes torrent
      A libwebrtc do Google é o padrão de fato e, pelo que sei, mesmo que o WebTorrent só precise de streams de dados, é necessário compilar tudo, incluindo codecs de vídeo e áudio
      Mesmo no Node.js, webtorrent parece fácil por ser escrito em JavaScript, mas as opções são basicamente wrtc ou Electron
      wrtc é um addon nativo, então é preciso compilá-lo a partir do código-fonte ou usar binários pré-compilados; webtorrent-hybrid usa isso, mas não recebe atualização há 3 anos
      O Electron inclui a libwebrtc como parte do motor Blink, e, pelo que sei, o webtorrent-desktop usa essa abordagem
      Seria bom haver uma API web melhor para tráfego P2P. Infelizmente, WebTransport não faz hole punching de firewall etc., então não serve para P2P
      Se existisse uma API assim, em vez de todo mundo desperdiçar tempo compilando, usando e distribuindo libwebrtc, o ecossistema P2P poderia realmente avançar
    • Talvez seja necessário um fork!?
  • Alguns anos atrás, criei um cliente PeerTube para Android
    Gosto do PeerTube e realmente acredito neste projeto, mas não sei se o esforço que coloquei no cliente e a reescrita quase concluída com uma estrutura Jetpack/MVVM valeram a pena
    Fico mal por abandonar, mas acho que provavelmente devo parar
    https://github.com/sschueller/peertube-android

    • Faltou explicar por que não valeu a pena
      Fico curioso se é porque não há interesse no próprio PeerTube ou porque não há demanda pela versão Android
      Parece um problema de ovo e galinha. A questão é se o PeerTube precisa ter um app para Android ou iOS para se tornar popular, ou se o PeerTube precisa ganhar popularidade para surgir demanda por um app Android
      Na minha opinião, é mais o primeiro caso do que o segundo. Não posso julgar sua motivação para desistir, mas normalmente acho melhor aguentar o último passo, que costuma ser o mais difícil
    • É uma pena, mas é totalmente compreensível
      Quando o app oficial sair no ano que vem, acho que serão necessários muitos colaboradores
  • A ideia deste projeto é realmente boa. Mas, infelizmente, há uma razão econômica pela qual é difícil o PeerTube vencer
    Não é por causa do custo de hospedagem de vídeo, e isso se aplica da mesma forma mesmo que a hospedagem seja gratuita
    Imagine que você é um criador popular: pode publicar seus vídeos em uma plataforma sem anúncios, onde os usuários assistem felizes e sem interrupções, ou pode publicá-los em uma plataforma sustentada por anúncios e receber uma fatia daquela doce receita publicitária
    Quanto mais popular o vídeo fica, mais forte se torna a tentação da segunda opção
    Assim, nas plataformas gratuitas, o conteúdo mais popular acaba saindo, e os espectadores vão embora junto
    Essa lógica também se aplica, em geral, a plataformas gratuitas versus plataformas comerciais. Acho que isso chega perto da razão fundamental pela qual a internet de hoje ficou tão ruim
    Se existe uma forma de resolver esse dilema, eu não sei qual é

    • Um exemplo contra esse pessimismo são os podcasts
      Em geral, podcasts foram distribuídos por meio de plataformas gratuitas, e o conteúdo foi monetizado com anúncios de patrocínio
      Ou seja, o criador fecha contrato diretamente com uma marca e insere, dentro do conteúdo, um bloco de anúncio lido pelo apresentador
      Há um caminho claro e comprovado para criadores monetizarem mesmo em plataformas de distribuição gratuita
      É claro que, como quem assiste bastante ao YouTube sabe, criadores têm receita dupla em plataformas comerciais: inserem anúncios de patrocínio e ainda dividem a receita do AdSense
      Então ainda há uma grande vantagem em publicar também no YouTube. Mas, como o valor dos contratos de patrocínio está relacionado ao alcance total da plataforma, pode haver incentivo para publicar em várias plataformas, desde que as principais plataformas comerciais não imponham exclusividade
    • Só com uma teoria de um minuto, é difícil dizer que o PeerTube também acabará assim, contrariando muitos contraexemplos
      A própria premissa está errada. As condições para “vencer” não são as mesmas, então nem é útil usar essa palavra
      As métricas de sucesso do PeerTube e da Framasoft são o quanto a sociedade e as comunidades são livres
      Considerando o avanço do Fediverse e o aumento do uso de software livre, acho que estão em uma trajetória muito boa
    • Não precisa necessariamente não ter anúncios. Basta alguém configurar uma boa interface e uma plataforma de anúncios e pagamentos
      Fora o Google, certamente existe um mercado de anúncios. Todas as empresas que patrocinam vídeos são exemplos disso
      Na prática, parece que YouTubers ganham mais com esses patrocínios do que com o dinheiro que recebem do Google
      No fim, alguém precisa fazer esse esforço
    • Como eu não quero conteúdo com fins lucrativos mesmo, o PeerTube é perfeito para mim
  • Fico curioso sobre o nível de dificuldade para instalar e operar o PeerTube
    Existe uma forma de fazer a instalação do PeerTube tão facilmente quanto instalar o MediaCMS [0, 1] [2]?
    Avaliei soluções de vídeo auto-hospedadas, basicamente alternativas ao YouTube, e o PeerTube pareceu muito mais maduro e popular que o MediaCMS
    Mas eu queria algo “fácil”, então por enquanto fiquei com o MediaCMS. A sustentabilidade do projeto no longo prazo me preocupa um pouco, mas, como não havia opção melhor, deixei isso de lado por ora
    Se for possível subir o PeerTube com a mesma facilidade, mesmo em um único servidor, gostaria de saber
    Sei que este é um site técnico, mas não quero gastar muito tempo com operação e configuração fora da minha área principal de atuação
    Gostaria que, na medida do possível, simplesmente funcionasse, mas fosse auto-hospedado; bare metal também serve
    Sei que o PeerTube consegue fazer muito mais, mas ficaria muito grato por ideias sobre como reduzir a complexidade de hospedagem, seja real ou percebida
    [0] https://mediacms.io
    [1] https://news.ycombinator.com/item?id=25507204
    [2] https://github.com/mediacms-io/mediacms/…

    • Configurei facilmente com Docker uma instância do PeerTube usada principalmente de forma interna entre amigos
      Não lembro quanto tempo levou, mas acho que não tive muitos problemas grandes
      Também foi muito fácil adicionar integração de login com o servidor LDAP existente
  • Se você tem interesse em PeerTube/Mastodon, recomendo assistir a este vídeo recente
    https://urbanists.video/w/n7xyeV1kbW8mUKr4ncchhs

  • Se quiser testar, esta instância está na versão 6.0.0-rc.2: https://framatube.org/videos/local
    Veja também o About: https://framatube.org/about/instance
    Não encontrei uma instância estável da v6

    • Gosto do fato de que, ao contrário do YouTube, RSS não é tratado como um recurso escondido
  • Eu rodo minha própria instância do PeerTube, assim como se roda a própria instância do Mastodon
    O Mastodon é incrível. Uma instância pessoal pode se conectar a qualquer outra instância e trazer dados; ao pesquisar, minha instância faz proxy da busca para o servidor original
    É só um pouquinho mais trabalhoso do que usar um único servidor grande
    O PeerTube não é assim. Nominalmente, ele oferece todos os mesmos recursos, mas, quando os detalhes se somam, não funciona direito
    Digamos que você queira simplesmente navegar por vídeos a partir de uma instância pessoal. Como encontrar conteúdo remoto? O servidor pode “seguir” outros servidores e replicar essa timeline para o seu lado. Desde que o servidor remoto permita
    Do ponto de vista do usuário, é possível seguir canais de qualquer lugar, e esse conteúdo preenche a timeline local do seu servidor
    Mas e a busca? É preciso usar um índice de busca de terceiros, e ele também é opt-in. Caso contrário, é preciso entrar diretamente em cada instância remota que você conhece e pesquisar lá
    Mesmo que, de algum modo, muito conteúdo tenha chegado ao servidor, como encontrar algo que valha a pena assistir? Não dá
    A maior parte dos filtros e da busca é inútil, e só o feed de assinaturas pessoais é minimamente confiável
    Eu queria gostar do PeerTube, mas realmente, realmente não gosto. A descoberta de conteúdo é tão ruim que a plataforma inteira fica quase inutilizável
    Na prática, é bem provável que a melhor opção seja entrar na maior instância. Isso derruba o principal sentido da estrutura distribuída e federada
    Não importa quantos vídeos existam no serviço se ninguém consegue encontrá-los. Se o PeerTube não se dedicar seriamente a esse problema, vai se tornar irrelevante em poucos anos

  • Por algum motivo, o cabeçalho HTML da página marca o idioma como fr-FR, então o Firefox gentilmente sugeriu traduzir para o inglês

  • O trabalho da Framasoft é realmente inspirador
    Só espero que seja mais adotado. Não sei se alguém lembra da época do Firefox 2 e 3, e do “marketing comunitário”, mas acho que um projeto desse tipo também teria valor aqui
    Por exemplo, seria ótimo se criadores influentes promovessem todo ano um Framasoft February e se comprometessem a hospedar parte dos vídeos que quisessem no PeerTube

    • Quão estável é o PeerTube?
      Digamos que eu publique um Show HN, ele gere reação e eu receba uma enxurrada de tráfego do HN
      Em teoria, o PeerTube deveria conseguir lidar com a carga de vídeos sem depender do YouTube, mas alguém já conseguiu isso na prática?
    • Framasoft February parece uma boa ideia
      Vou pedir aos provedores de conteúdo de que gosto que participem