ARP Ideas logo

Kino Dostępne 2.0. Audiodeskrypcja, która nie traci sygnału.

Wspólnie z ARP Ideas Fundacja przeprowadziła fundamentalną zmianę architektury: z modelu klient-serwer na przetwarzanie lokalne (Edge Processing). Logika synchronizacji audio została przeniesiona z chmury na urządzenie końcowe.
Executive Summary

Fundamentalna zmiana architektury systemu

Fundacja Kino Dostępne umożliwia osobom ze specjalnymi potrzebami w obszarze wzroku udział w kulturze filmowej na równych zasadach z osobami pełnosprawnymi. Fundacja stworzyła aplikację na smartfony, która pozwala na odsłuchiwanie audiodeskrypcji i napisów audio w czasie seansu w sali kinowej, przy użyciu osobistego telefonu użytkownika i słuchawek.

Wersja 1.0 aplikacji wymagała stałego połączenia z internetem podczas seansu. Ten warunek często nie był spełniony, gdyż wyciszone, ekranowane sale kinowe blokują sygnał GSM i Wi-Fi, a wraz z nim możliwość synchronizacji audiodeskrypcji poprzez kontakt z serwerem. Stabilność oferowanej usługi była niska.

Wspólnie z ARP Ideas Fundacja przeprowadziła fundamentalną zmianę architektury: z modelu klient-serwer na przetwarzanie lokalne (Edge Processing). Logika synchronizacji audio została przeniesiona z chmury na urządzenie końcowe. Telefon nie wysyła już próbek dźwięku do serwera, ale porównuje rejestrowany dźwięk z wcześniej pobraną mapą sygnatur audio (fingerprintów) bezpośrednio na procesorze smartfona.

Efekt jest podwójny. Po pierwsze, aplikacja działa w 100% offline w trakcie seansu, niezależnie od zasięgu w sali. Po drugie, miesięczne koszty operacyjne infrastruktury chmurowej spadły o 73%, a obciążenie serwera podczas seansu wynosi 0%. Misja społeczna Fundacji zyskała architekturę, która ją skaluje, zamiast jej ograniczać.

73 %

redukcja miesięcznych kosztów infrastruktury chmurowej (OpEx)

100 %

dostępność offline aplikacji w trakcie seansu kinowego

65 %

skrócenie czasu od otrzymania materiału do publikacji w aplikacji

100+

kin objętych rozwiązaniem
Kontekst społeczny

Dla kogo powstaje Kino Dostępne

W Polsce żyje ponad 1,8 miliona osób z dysfunkcją wzroku. Audiodeskrypcja, czyli dodatkowa ścieżka dźwiękowa opisująca to, co dzieje się na ekranie, jest dla nich jedyną drogą do pełnego doświadczenia filmu. Misja Fundacji Kino Dostępne to udostępnienie tej ścieżki w każdej polskiej sali kinowej, bez konieczności organizowania osobnych, dedykowanych seansów.

Aplikacja mobilna była technologicznym sercem tej misji. Osoba niewidoma przychodzi na zwykły, komercyjny seans, uruchamia aplikację, a ta sama synchronizuje audiodeskrypcję ze ścieżką dźwiękową filmu lecącego z głośników kinowych. W teorii rozwiązanie eleganckie. W praktyce zderzało się z fizyką sali kinowej.
Wymagania, które musi spełnić aplikacja kinowa:
Ograniczona łączność
Działanie w warunkach „Faraday Cage" — wyciszonych, ekranowanych salach blokujących sygnał GSM i Wi-Fi
Precyzyjna synchronizacja
Synchronizacja audiodeskrypcji ze ścieżką filmu z dokładnością milisekundową
Intuicyjna obsługa
Niski próg techniczny dla użytkownika końcowego — instalacja, pobranie, odtworzenie
Skalowalność rozwiązania
Skalowalność katalogu filmów bez wzrostu kosztów operacyjnych proporcjonalnego do liczby widzów
Misja

Pomagamy osobom niewidomym

Jan Dybczyński

Prezes · Fundacja Kino Dostępne

Naszą misją jest, żeby osoba niewidoma mogła wejść do dowolnego kina w Polsce, kupić zwykły bilet i obejrzeć film na równych zasadach co pełnosprawna widownia. Niezawodność działania aplikacji była podstawowym warunkiem, który ten cel pozwalał realizować. Dlatego przebudowa aplikacji nie była dla nas projektem IT. Była warunkiem, by misja Fundacji w ogóle mogła być realizowana.
Wyzwanie

Architektura 1.0 zbudowana na błędnym założeniu o sieci

Pierwsza wersja aplikacji opierała się na założeniu, że smartfon w sali kinowej ma stabilne połączenie z internetem. To założenie okazało się fundamentalnie błędne. Konsekwencje czuli ci, dla których aplikacja powstała.
Efekt Faraday Cage
Wyciszone konstrukcyjnie sale kinowe blokują sygnał GSM i Wi-Fi. Aplikacja w trakcie seansu zrywała połączenie, co skutkowało „dziurami" w audiodeskrypcji lub jej całkowitym brakiem.
Cienki klient w chmurze
Telefon przesyłał próbki audio do serwera, tam następowała analiza i synchronizacja, a strumień wracał do urządzenia. Każda sekunda seansu wymagała aktywnego, niskolatencyjnego połączenia.
Koszt skalowania liniowy
Maszyny wirtualne musiały skalować moc obliczeniową proporcjonalnie do liczby aktywnych widzów. Premierowy weekend oznaczał skok obciążenia CPU/RAM i wysokie rachunki za chmurę w modelu Pay-as-you-go.
Operacyjny nadzór 24/7
Administrator musiał monitorować skalowanie serwerów w godzinach szczytu seansów. Każdy nowy film wymagał konfiguracji dedykowanej instancji serwerowej.
Doświadczenie użytkownika
Osoba niewidoma w połowie filmu zostawała w ciszy. Bez możliwości diagnozy, bez wsparcia obsługi sali. Awaria techniczna stawała się awarią misji społecznej Fundacji.
Bariera dla rozwoju katalogu
Każdy nowy tytuł oznaczał konfigurację serwerową, testy infrastruktury i ręczną synchronizację zasobów. Skalowanie liczby filmów było ograniczane przez procesy administracyjne, nie przez treść.

Jan Dybczyński

Prezes · Fundacja Kino Dostępne

Każda nieudana synchronizacja audiodeskrypcji była dla nas sygnałem alarmowym. Nie chodziło o reklamację techniczną, tylko o człowieka, który właśnie został wykluczony z seansu, na który specjalnie się wybrał. Wiedzieliśmy, że nie naprawimy tego półśrodkami. Potrzebowaliśmy partnera, który z nami rozłoży architekturę na czynniki pierwsze i odbuduje ją od nowa.
Rozwiązanie

Edge Processing. Logika synchronizacji przeniesiona z chmury na smartfon.

Nasi architekci podczas analizy zidentyfikowali, że problem leży nie w jakości sieci, lecz w samym założeniu, że sieć jest w sali potrzebna. Decyzja architektoniczna była radykalna i trafna. Cała logika synchronizacji audio została przeniesiona z serwera na urządzenie końcowe.
Audio fingerprinting on-device
Edge processing
Mikrofon smartfona rejestruje dźwięk z sali, a algorytm porównuje próbkę z lokalnym wzorcem. Synchronizacja odbywa się w pamięci urządzenia, bez wysyłki danych na zewnątrz.
Paczka seansu pobierana przed wejściem do sali
Pre-download
Użytkownik pobiera audiodeskrypcję i mapę sygnatur dla wybranego filmu jednorazowo, np. w drodze do kina. Po wejściu do sali aplikacja działa w pełni offline.
Statyczne repozytorium treści na Microsoft Azure
Backend Azure
Backend dystrybuuje pliki przez CDN. Brak otwartych sesji, brak skalowania VM. Koszt operacyjny rośnie liniowo ze storage, nie z liczbą widzów na sali.
Jednolity przepływ publikacji filmu
Panel administratora
Upload pliku audiodeskrypcji, automatyczne wygenerowanie mapy fingerprintów, publikacja w katalogu. Bez nadzoru serwerów w premierowe weekendy.
Kino Dostępne 2.0 — architektura On-Device na infrastrukturze Microsoft Azure
Telefon nie wysyła już próbek dźwięku na zewnątrz. Mikrofon rejestruje audio z głośników kinowych, a algorytm w czasie rzeczywistym porównuje je z lokalnie zapisaną mapą sygnatur audio (fingerprint), pobraną przed seansem razem z plikiem audiodeskrypcji. Backend w chmurze Azure przekształcił się z silnika obliczeniowego w lekkie repozytorium treści (Storage/CDN).
Wymiar Architektura 1.0 (klient-serwer) Architektura 2.0 (Edge Processing)
Miejsce obliczeń Maszyny wirtualne w chmurze, real-time processing Procesor smartfona, on-device fingerprinting
Wymóg sieci podczas seansu Stałe połączenie o niskiej latencji Brak, tylko przed seansem (pobranie paczki)
Rola backendu Silnik obliczeniowy i skalowanie VM Storage / CDN: dystrybucja zasobów statycznych
Model kosztowy Pay-as-you-go za compute, skala z liczbą widzów Storage-based, przewidywalny, niezależny od ruchu
Obciążenie serwera w trakcie seansu Wysokie CPU/RAM proporcjonalne do liczby aktywnych sesji 0% - brak obciążenia
Dodanie nowego filmu Konfiguracja instancji, testy, ręczna synchronizacja Upload i automatyczne fingerprinty w jednym przepływie


Wyniki

Niezawodność dla widza, przewidywalność dla fundacji.

73 %
redukcja OpEx infrastruktury chmurowej
100 %
dostępność offline w trakcie seansu
65 %
skrócenie time-to-market filmu
0 %
obciążenie serwera podczas seansu
Doświadczenie widza
  • Pełna audiodeskrypcja od pierwszej do ostatniej minuty filmu, niezależnie od zasięgu w sali
  • Eliminacja „dziur" i zerwanych synchronizacji, które wcześniej wykluczały widza w środku seansu
  • Próg techniczny dla osoby niewidomej sprowadzony do jednej akcji przed seansem (pobranie paczki)
Operacyjne i finansowe
  • Model kosztowy z dynamicznego compute-based przekształcony w przewidywalny storage-based
  • Brak konieczności nadzoru serwerów w premierowe weekendy, gdy obciążenie widzów jest największe
  • Publikacja nowego filmu w jednym przepływie zamiast wielodniowej konfiguracji infrastruktury
Opinia o ARP Ideas

Udana transformacja

Jan Dybczyński

Prezes · Fundacja Kino Dostępne

Zespół ARP Ideas nie próbował naprawić starej architektury, tylko zaproponował nam jej całkowitą inwersję. Z perspektywy fundacji to była odważna decyzja, ale dziś widzę, że jedyna sensowna. Aplikacja, która polega na sieci, w sali kinowej była bardzo zawodna. Aplikacja, która liczy lokalnie, działa po prostu zawsze i w każdej sali kinowej w Polsce.

Masz aplikację, której architektura nie nadąża za misją?

Edge Processing, optymalizacja kosztów chmury, rearchitektura backendu pod realne warunki użytkowania. Nasi architekci pomagają fundacjom, organizacjom non-profit i firmom B2B przeprowadzać podobne transformacje na infrastrukturze Microsoft Azure. Wyślij formularz poniżej, porozmawiajmy jak możemy Ci pomóc.