VLC se adapta ao Android TV para exibir os vídeos pessoais dos usuários na tela grande

O VLC é um player multimídia sem custo financeiro de código aberto disponível em várias plataformas, desenvolvido pelo projeto VideoLAN (links em inglês). Ele foi criado com o objetivo de oferecer aos usuários a possibilidade de assistir qualquer tipo de vídeo em qualquer lugar, independente do dispositivo ou tamanho da tela. Para proporcionar uma experiência de visualização ideal ao maior número possível de usuários, a equipe do VideoLAN trabalhou muito para adaptar o app VLC para diversas plataformas, incluindo o Android TV e dispositivos de tela grande, como tablets e Chromebooks.

O que a equipe fez

Os apps em dispositivos Android TV oferecem uma experiência de visualização única quando comparados a apps em dispositivos móveis. Os espectadores de TVs ficam mais longe da tela e geralmente querem enxergar toda a biblioteca de conteúdo em uma única visualização, como um guia de TV tradicional. Já os usuários de dispositivos móveis esperam ver apenas o vídeo que escolheram assistir. Além disso, os usuários navegam em apps no Android TV usando um controle remoto, enquanto apps para dispositivos móveis funcionam por toque na tela.

Embora o VideoLAN tenha decidido manter a maior parte da IU para dispositivos móveis do VLC na versão mais recente do app (3.2, em inglês), a equipe precisava avançar um pouco mais para garantir uma experiência ideal tanto em dispositivos móveis quanto no Android TV.

Otimização para controles remotos de TVs

O primeiro passo do VideoLAN foi garantir que a IU do player de vídeo do app fosse facilmente navegável usando os controles remotos de dispositivos Android TV, que têm apenas um botão direcional e alguns outros botões. Por exemplo, a equipe moveu as opções do player de vídeo para um painel lateral, para que fosse fácil clicar na lista completa em um smartphone ou tablet e navegar por ela com o controle remoto.

VLC otimizado para experiências de visualização leanback em telas grandes no Android TV

Adaptação do layout para a biblioteca Leanback

Em dispositivos Android TV, os usuários do VLC podem ver todas as categorias de vídeo de uma só vez, em vez de categorias agrupadas como em dispositivos móveis. Para otimizar esse recurso de navegação, a Biblioteca Leanback usa fragmentos extensíveis para permitir que os desenvolvedores criem facilmente experiências avançadas e animadas para cada conteúdo.

O VideoLAN criou uma interface de navegação personalizada para ativar a classificação e a rolagem com um botão de ação flutuante e adicionou animações a cada opção de rolagem. A equipe também criou um recurso de rolagem rápida semelhante ao app Android Auto, que permite que o usuário navegue rapidamente pelo conteúdo de vídeo fazendo pesquisas usando a primeira letra, em vez de precisar rolar pela lista inteira.

A implementação de uma IU totalmente nova para o Android TV exigiria uma quantidade considerável de refatoração de código. É nesse momento que a arquitetura Model-View-ViewModel (MVVM) proposta pelos componentes da arquitetura do Android foi útil. Ao seguir essas diretrizes de arquitetura, a equipe conseguiu criar uma separação clara entre o código da IU e a lógica do app, o que simplificou o compartilhamento do código da lógica do app após a criação da nova IU. Agora, o mesmo código aciona a IU do VLC para dispositivos móveis e para TV.

A equipe também trabalhou com transformações de LiveData para criar um mapa com elementos agrupados por informações de vídeo (como título, data de adição ou duração do vídeo) a partir da lista única usada em dispositivos móveis. Como o Android TV exibe vídeos no modo paisagem, a equipe dividiu o conteúdo em várias linhas, em vez de apresentá-lo em uma lista de rolagem vertical.

Integração dos controles de voz e o recurso "assistir a seguir"

Por fim, o VideoLAN implementou uma MediaSession para ativar o controle por comando de voz usando o Google Assistente. A equipe também adicionou um recurso "assistir a seguir" ao código do app para TV, que permite que o usuário retome um vídeo iniciado anteriormente diretamente na tela inicial do Android TV.

Resultados

Como um player de vídeo sem custo financeiro e de fácil navegação, o VLC alcançou seus melhores resultados nas telas grandes. A equipe do VideoLAN continua recebendo feedbacks positivos de usuários do mundo todo, e provedores de acesso à Internet na França e na Suíça pediram para adicionar o VLC como app padrão dos próprios conversores.

"As TVs são um ambiente natural para um player de mídia como o VLC. Por isso, sabíamos que havia uma grande comunidade esperando para usar o app no Android TV", afirmou Jean-Baptiste Kempf, presidente do VideoLAN. "Na realidade, essa foi a otimização para plataforma mais simples que fizemos, já que foi possível reutilizar 95% do código do Android. Estamos muito felizes com os resultados".

Com um app projetado para dispositivos abrangendo desde smartphones com telas pequenas a TVs de tela grande, o VideoLAN está preparado para alcançar mais usuários, em qualquer que seja o dispositivo que eles prefiram usar para assistir seus vídeos favoritos.

Primeiros passos

Veja algumas práticas recomendadas para otimizar apps para o Android TV.