VLC to bezpłatny, wieloplatformowy odtwarzacz multimedialny o otwartym kodzie źródłowym, opracowany przez projekt VideoLAN. Jego celem jest umożliwienie użytkownikom odtwarzania dowolnego typu pliku wideo w dowolnym miejscu, niezależnie od urządzenia czy rozmiaru ekranu. Aby zapewnić optymalne wrażenia podczas oglądania jak największej liczbie użytkowników, zespół VideoLAN ciężko pracował nad dostosowaniem aplikacji VLC do różnych platform, w tym Androida TV i urządzeń z dużym ekranem, takich jak tablety i Chromebooki.
Rozwiązanie
Aplikacje na urządzeniach z Androidem TV zapewniają inne wrażenia niż aplikacje na urządzeniach mobilnych. Widzowie telewizyjni siedzą dalej od ekranu i zwykle oczekują, że cała biblioteka treści będzie widoczna w jednym widoku, jak w tradycyjnym przewodniku telewizyjnym. Użytkownicy urządzeń mobilnych oczekują natomiast, że zobaczą tylko wybrany przez siebie film. Użytkownicy poruszają się po aplikacjach na Androidzie TV za pomocą pilota, a aplikacje mobilne są obsługiwane wyłącznie za pomocą ekranu dotykowego.
Firma VideoLAN postanowiła zachować większość interfejsu mobilnego VLC w najnowszej wersji aplikacji (3.2), ale zespół musiał pójść o krok dalej, aby zapewnić optymalne wrażenia zarówno na urządzeniach mobilnych, jak i na Androidzie TV.
Optymalizacja pod kątem pilotów do telewizorów
Pierwszym krokiem VideoLAN było zapewnienie, że interfejs odtwarzacza wideo aplikacji będzie łatwy w obsłudze za pomocą pilotów do urządzeń z Androidem TV, które mają tylko pad kierunkowy i kilka przycisków. Na przykład zespół przeniósł opcje odtwarzacza wideo do panelu bocznego, aby można było łatwo klikać całą listę na smartfonie lub tablecie i przeglądać ją za pomocą pilota.

Dostosowywanie układu biblioteki Leanback
Na urządzeniach z Androidem TV użytkownicy VLC mogą zobaczyć wszystkie kategorie filmów naraz, a nie tylko zagregowane kategorie, jak na urządzeniach mobilnych. Aby zoptymalizować tę funkcję przeglądania, Biblioteka Leanback korzysta z rozszerzalnych fragmentów, które umożliwiają deweloperom łatwe tworzenie bogatych, animowanych treści.
VideoLAN utworzył niestandardowy interfejs przeglądania, który umożliwia sortowanie i przewijanie za pomocą pływającego przycisku działania, oraz dodał animacje dla każdej opcji przewijania. Zespół stworzył też funkcję szybkiego przewijania podobną do tej w aplikacji Android Auto, która umożliwia użytkownikom szybkie przeglądanie treści wideo za pomocą wyszukiwania według pierwszej litery, zamiast przewijania całej listy.
Wdrożenie zupełnie nowego interfejsu Androida TV wymagało znacznego refaktoryzowania kodu. W tym przypadku przydatna okazała się architektura Model-View-ViewModel (MVVM) zaproponowana przez komponenty architektury Androida. Dzięki przestrzeganiu tych wytycznych dotyczących architektury zespół zdołał wyraźnie oddzielić kod interfejsu od logiki aplikacji, co uprościło udostępnianie kodu logiki aplikacji po napisaniu nowego interfejsu. Teraz ten sam kod obsługuje interfejs użytkownika VLC na urządzeniach mobilnych i telewizorach.
Zespół wykorzystał też transformacje danych na żywo, aby utworzyć mapę z elementami pogrupowanymi według informacji o filmie (takich jak tytuł, data dodania czy długość filmu) na podstawie unikalnej listy używanej na urządzeniach mobilnych. Ponieważ Android TV wyświetla filmy w trybie poziomym, zespół podzielił treści na kilka wierszy zamiast umieszczać je na pionowej liście z możliwością przewijania.
Integracja sterowania głosowego i funkcji „Odtwórz następny”
Firma VideoLAN wdrożyła w końcu MediaSession, aby umożliwić sterowanie odtwarzaniem za pomocą poleceń głosowych przez Asystenta Google. Zespół dodał też do kodu aplikacji TV funkcję „Odtwórz następny”, która umożliwia użytkownikom wznowienie odtwarzania wcześniej rozpoczętego filmu bezpośrednio z ekranu głównego Androida TV.
Wyniki
VLC to bezpłatny i łatwy w obsłudze odtwarzacz multimediów, który najlepiej sprawdza się na większych ekranach. Zespół VideoLAN nadal otrzymuje pozytywne opinie od użytkowników z całego świata, a dostawcy internetu we Francji i Szwajcarii poprosili nawet o dodanie VLC jako domyślnej aplikacji na dekoderach.
„Telewizory to naturalne środowisko dla odtwarzacza multimediów takiego jak VLC, więc wiedzieliśmy, że istnieje duża społeczność osób, które czekają na możliwość korzystania z aplikacji na Androidzie TV” – powiedział Jean-Baptiste Kempf, prezes VideoLAN. „Okazało się, że jest to najprostsza platforma do optymalizacji, ponieważ mogliśmy ponownie wykorzystać 95% kodu z Androida. Jesteśmy zachwyceni wynikami”.
Dzięki aplikacji zaprojektowanej na urządzenia od smartfonów z małym ekranem po telewizory z dużym ekranem VideoLAN może docierać do większej liczby użytkowników mobilnych, niezależnie od tego, gdzie wolą oglądać ulubione filmy.
Pierwsze kroki
Poznaj sprawdzone metody optymalizacji aplikacji na Androida TV.