Rozwiązania
Digital Signage

Przewodnik - krok po kroku

Chcę wyświetlić na moim terminalu prostą, nieruchomą planszę. Niech prezentacja składa się z obrazka na pełnym ekranie i firmowego logo z przezroczystością w prawym górnym rogu.

Rozwiązanie: Zaloguj się do UniView Admin za pomocą swojej przeglądarki internetowej.

W panelu "Programy" stwórz prezentację i nazwij ją.

W zakładce "Terminale programu" przypisz wybrane terminale do utworzonego programu.

Do głównej gałęzi programu dodaj elementy obrazkowe, załadowując pliki graficzne z dysku na serwer.

Za pomocą myszy ustaw wymiary i położenie loga.

Program:

Wynik:

Następnie chciałbym dodać drugi obrazek, wyświetlany naprzemiennie z pierwszym.
Logo niech nadal będzie cały czas widoczne.

Rozwiązanie: W głównej gałęzi dodaj zapętloną sekwencję, w której umieść oba obrazki i określ domyślny czas ich wyświetlania.
Logo pozostaw w gałęzi głównej.

Program:

Wynik (kliknij na film):

Czy mogę dodać jakiś ozdobny efekt przejścia między obrazkami?

Rozwiązanie: Do każdego obrazka wybierz pożądany efekt z listy, lub stwórz własny efekt przez kombinację istniejących. Np. efekt "fade" - oznacza płynne przejście.

Opcja:

Wynik (kliknij na film):

Jak dodać pasek z poziomo przesuwanym tekstem? Niech będzie na półprzezroczystym tle.

Rozwiązanie: Dodaj element "Markiza", ustaw wymiary, tekst, kolor, szybkość przesuwu i stopień przezroczystości tła.

Program:

Wynik (kliknij na film):

Chcę dodać jeszcze pełnoekranowy plik wideo w taki sposób, żeby w trakcie jego odtwarzania żadne inne elementy nie były widoczne.

Rozwiązanie: Wstaw wideo jako element przykrywający inne obiekty (ustawiając wysoki z-order).

Za pomocą funkcji UniView można wstrzymywać przesuwanie paska w trakcie odtwarzania pełnoekranowego filmu.

Program:

Wynik (kliknij na film):

Niech pętla obrazków (z widocznym logo, bez paska) wyświetli się dwa razy, zanim pojawi się pełnoekranowy film.

Rozwiązanie: Podziel sekwencję główną na dwie części. W pierwszej części oprócz logo umieść sekwencję obrazków i ustaw w niej ilość pętli na 2. W drugiej części umieść film.

Program:

Wynik (kliknij na film):

Czy przez takie zagnieżdżanie mogę uzyskać dowolnie złożoną prezentację?
Np. czy mogę dodać jakiś element do filmu pełnoekranowego albo dodać podpisy do rysunków?

Rozwiązanie: Tak, każdy element możesz zamienić na grupę elementów wyświetlanych jednocześnie lub sekwencyjnie.

Poprzez kombinację grup, sekwencji i elementów możesz nie tylko dowolnie formować prezentację w przestrzeni, ale też w czasie.
Możesz tworzyć warstwy lub dzielić ekran na strefy, zmieniać ten układ w czasie, wyświetlać równocześnie lub kolejno po sobie elementy, grupy elementów a nawet całe prezentacje.

Program:

Wynik (kliknij na film):

W powyższym przykładzie widać dwie podobne grupy - obrazek z podpisem, które mają takie same efekty wejściowe, styl czcionek, względne położenie podpisu itd.
Jak sprawić, żeby te wspólne cechy były edytowane w jednym miejscu? Ułatwiłoby to ich zmiany w przypadku dużej liczby obrazków.

Rozwiązanie: Wydziel obrazek z podpisem jako podprogram.
Plik obrazka i tekst podpisu ustaw jako edytowalne cechy tego podprogramu.

W ten sposób możesz stworzyć własne, rozbudowane elementy, złożone z prostszych elementów wbudowanych lub innych podprogramów, takie jak plansze lub graficzne kontrolki.
W głównym programie możesz używać podprogramy analogicznie do zwykłych elementów - wstawiając je w określone miejsce programu i edytując jego atrybuty. Oprócz standardowych parametrów (na przykład wymiary i położenie), mogą one mieć atrybuty zdefiniowane przez użytkownika.
Podprogramy upraszczają program główny.
Podprogramy można wykorzystywać w wielu różnych programach użytkownika.
Tworzą one własną bibliotekę elementów użytkownika, stanowiącą uzupełnienie listy elementów wbudowanych oraz szerokiej oferty gotowych, publicznych podprogramów UniView.

Oprócz podprogramów, możliwe jest rozszerzanie listy elementów o kontrolki ekranowe wykonane jako rozszerzenia UniViewPlayer (biblioteki plug-in), o czym będzie wspomniane w dalszej części przewodnika.

Program:

Podprogram "Obrazek z podpisem":

Wynik (kliknij na film):

Mam szczególne wymagania co do czasowego rozkładu prezentacji i zamieszczania treści.
Dział reklam naszej firmy przygotowuje wiele obrazków promocyjnych i kilka filmów reklamowych. Lista aktualnych promocji i reklam zmienia się w czasie. Chcę, aby obrazki i filmy wyświetlały się w pętli, ale utrzymując stały schemat prezentacji: Po dwóch obrazkach (podpisanych) ma się wyświetlać dokładnie jedno video.
Obawiam się, że przy ręcznym układaniu programu pracownicy będą mieli problem z utrzymaniem tego schematu, zwłaszcza przy dużej liczbie zdjęć i filmów. Pracownicy mogliby np. zapomnieć o wstawieniu kolejnego filmu po zamieszczeniu dwóch zdjęć. Operacje polegające na usunięciu jednego z obrazków (ze środka programu), albo zmiana schematu (np. zmiana proporcji obrazków do filmów z 2:1 na 3:1) wymagałaby czasochłonnej reorganizacji całej prezentacji.
Czy jest więc jakaś dobra metoda na utrzymanie stałego schematu prezentacji przy zmiennej liczbie grafik i materiałów video?
Dobrze by było, żeby pracownicy nie mieli uprawnień do zmiany tego schematu, tzn. nie mogli zmieniać wyglądu i stałych elementów prezentacji, takich jak logo.
Pracownicy powinni używać prostego interfejsu wyłącznie do wstawiania i usuwania obrazków i video.

Rozwiązanie: Wszystkie te oczekiwania realizuje podział procesu tworzenia prezentacji na schemat (program) oraz listy plików (playlisty). Zamiast wstawiać do programu elementy wyświetlające określony plik, wstaw elementy odpowiedzialne za pobranie i wyświetlenie kolejnej pozycji z wybranej playlisty.
Stwórz tyle list plików, ile potrzebujesz i określ pracownikom uprawnienia do ich edycji, pozostawiając uprawnienia do zmiany schematu programu np. tylko sobie.

Program korzystający z playlist różni się od zwykłego programu tym, że jego elementy nie wskazują konkretnego pliku, lecz listę plików, z której za każdym wyświetleniem pobrana będzie jedna, kolejna pozycja. Można to porównać do zamiany "konkretnych plików" na "okienka na pliki z określonej listy" (dobrą analogia jest też program telewizyjny zawierający pozycję "kolejny odcinek serialu X", zamiast "15-ty odcinek serialu X"). Np. sekwencja główna programu może składać się z dwóch "okienek" wyświetlających kolejny obrazek z playlisty "promocja" i jednego okienka wyświetlający kolejny film z playlisty "reklamy".
Przy każdym wyświetleniu elementu programu pobierany będzie następny obrazek lub film z playlisty. Mechanizm ten nazywa się "rotowaniem".

W ten sposób uzyskuje się oczekiwany rezultat: Program (definiujący wygląd i rozkład) jest odseparowany od list plików (czyli od danych).
Osoby o niższych uprawnieniach nie zmienią wyglądu i rozkładu prezentacji.
Codzienna edycja list plików jest prosta i może być wykonywana przez niewykwalifikowany personel, któremu można zawęzić uprawnienia do określonych list plików.

Oprócz zwykłych, prostych list plików, można korzystać z bardziej rozbudowanych list wiadomości - zawierających oprócz plików multimedialnych dodatkowe informacje (tytuł, opis i inne). Zasady w obu przypadkach są podobne.
Ponadto, dane do wyświetlenia mogą pochodzić z dowolnych innych list, zwanych ogólnie "źródłami danych", np. z zewnętrznych źródeł informacji RSS, XML, informacji pogodowych, arkuszy kalkulacyjnych, baz danych z Twojej firmy.
Dla najbardziej wymagających UniView oferuje funkcjonalność nazywaną "rozkładem ramowym", gdzie można zdefiniować parametry dla automatycznego miksowania list plików. Przykładowo, użytkownik może zażyczyć sobie, aby "reklamy zajmowały 20% czasu, wiadomości sportowe i pogodowe zajmowały w sumie nie więcej niż 15 minut na godzinę, a resztę czasu wypełniały newsy". UniView wyręczy użytkowników z ręcznego układania planu, używajac przy tym wyrafinowanych metod miksowania danych.

Playlisty i inne źródła danych możesz podpiąć do elementu podstawowego, albo wyświetlać za pomocą swojego własnego, rozbudowanego elementu, czyli podprogramu.
Poniższy program korzysta z podprogramu "obrazek z podpisem" (uzupełnionego o wyświetlanie podtytułu).

Program:

Lista obrazków z podpisem:

Lista filmów:

Wynik (kliknij na film):

Czy pomimo tak rozbudowanych możliwości tworzenia animacji, jest możliwość osadzania zewnętrznych animacji w postaci swf/Flash?
Poprzednio często korzystaliśmy z technologii Flash i mamy sporo gotowych plików w tym formacie, z których nie chcemy rezygnować. Czy można je użyć w prezentacji UniView?
Jeśli tak, to czy jest możliwość dołączania do nich źródeł danych w postaci plików, tak jak w przykładzie wyżej, albo ze źródeł wiadomości RSS?

Możliwości prezentacyjne UniView są na tyle rozbudowane, że w wielu przypadkach można zrezygnować z animacji Flash, korzystając z podstawowych elementów UniView.

Jednak UniView w pełni wspiera technologię Flash.

Osadzając animację Flash w prezentacji UniView, można podawać dowolne parametry wejściowe, w tym dane pochodzące z dowolnych źródeł, w tym wiadomości tekstowych UniView i wiadomości zewnętrznych w formacie RSS.

Ponadto, można odbierać zdarzenia wysyłane przez Flash (np. wykrywać zakończenie animacji), wykonując stosowną akcję związaną ze zdarzeniem - np. wyświetlenie kolejnego elementu.

Poniższa animacja Flash korzysta z danych tekstowych i obrazkowych edytowanych w systemie UniView.

Program:

Lista wiadomości:

Wynik (kliknij na film):

W powyższej prezentacji zauważyłem efekt zanikania kontrolki Flash. Czy oznacza to, że do kontrolek ActiveX można dodawać przezroczystość?

Do specjalnych wersji kontrolek ActiveX (Flash, Acrobat PDF, Browser WWW) można dodawać wszystkie efekty obsługiwane przez zwykłe elementy UniView - dynamiczne (różne efekty pojawiania i znikania) i statyczne (przezroczystość, cienie, rozmycia, efekty bitmapowe, obroty 2D i 3D). W pełni obsługiwane jest też warstwowanie takich elementów.

Używanie kontrolek ActiveX z włączonymi efektami wymaga jednak komputera z silniejszą kartą graficzną, niż w przypadku zwykłego osadzania takich kontrolek.
Zazwyczaj zaleca się stosowanie standardowych, wydajnych kontrolek UniView Player (podsystemu WPF), niż kontrolek starszej generacji (Forms, ActiveX, Flash).

Efekty specjalne obsługiwane są też we wszystkich elementach renderowanych na warstwie HTML5, np. można wstawić element wyświetlający podstronę WWW z animacją, efektem 3D i przezroczystością.

W poniższym przykładzie animacja swf/Flash z półprzezroczystością i obrotem 3D przykrywa kontrolkę wyświetlającą formatowany plik w formacie Acrobat PDF, z włączonym efektem perspektywicznego pochylenia.

Program:

Wynik (kliknij na film):

Współpracuję z programistami, którzy potrafią wykonywać kontrolki wizualne na zamówienie mojej firmy. Czy da się je osadzić w playerze UniView?

Tak. Kontrolki (wykonane np, w środowisku Visual Studio) powinny być wykonane jako biblioteki środowiska .Net. (WPF, XAML, Forms, Forms+ActiveX dla Windows oraz GTK-Sharp dla Linux). Należy je umieszczać w katalogu "plugins" UniView. Kontrolki mogą przyjmować parametry wejściowe i wysyłać zdarzenia.
Do bibliotecznych kontrolek użytkownika można dodawać efekty (np. efekt zanikania, cień) tak jak do wbudowanych kontrolek UniView.

Kontrolki biblioteczne mogą stanowić kolejny (poza podprogramami) sposób rozszerzania środowiska UniView.

Przykładem ich użycia mogą być rozbudowane kontrolki ekranowe obsługujące interakcję z użytkownikiem (np. gry).

Można też osadzać kontrolki bez interfejsu, np. obsługujące urządzenia podłączone do komputera.

Na wastwie HTML5 można też osadzać kontrolki wykonane w technice specyficznej dla przeglądarek internetowych, przy czym dostępne będą wszystkie standardowe efekty UniView - animacje, przezroczystości, efekty 2D i 3D itp.

Biblioteczne kontrolki użytkownika (wykonane w różnych technologiach) można umieszczać w prezentacji UniView (w sekwencjach i grupach) sterując ich tworzeniem i znikaniem, tak jak w przypadku zwykłych elementów UniView. W ten sposób UniView może być środowiskiem "sklejającym" różnego rodzaju technologie, obsługując najbardziej wyszukane życzenia klientów.

Wspomniano wyżej o możliwości interakcji z użytkownikiem. Na czym ona polega?
Czy można uzyskać interakcję bez użycia zaawansowanych technik programistycznych?
Czy pisząc o interaktywności macie na myśli coś więcej niż obsługa ekranów dotykowych?

Najprostszym (ale nie jedynym) sposobem uzyskania interaktywnej prezentacji jest obsługa zdarzenia kliknięcia z ekranu dotykowego.
Do zdarzenia (kliknięcia) dołącza się określoną akcję, którą najczęściej jest przejście do wybranego elementu sekwencji (skok). Wykonanie tych czynności jest stosunkowo proste i nie wymaga wiedzy programistycznej.

Zamiast sterowania czasowego (jak w poprzednich przykładach) używa się sterowania ręcznego, jednak ogólna zasada tworzenia prezentacji interaktywnych jest podobna:
Umieść elementy lub grupy elementów w wybranej sekwencji - np. reprezentujące kolejne "strony" prezentacji. Ustaw w niej nieskończony czas oczekiwania. Stwórz przyciski i dołącz do zdarzenia "kliknięcie" odpowiednią komendę skoku. Komendy opisane są w dokumentacji.
W zaawansowanych prezentacjach używających ekranów dotykowych oprócz przycisków stosuje się bardziej rozbudowane kontrolki - np. klawiaturę ekranową (kontrolka klawiatury ekranowej oferowana jest jako opcja).

Zdarzenia, do których można dołączać określone akcje, mogą pochodzić nie tylko z ekranu dotykowego, lecz z dowolnych innych urządzeń.
Przykładem są zdarzenia z czujników ruchu, z kamery internetowej, z urządzenia Kinect (umożliwiając sterowanie prezentacją za pomocą gestów).
Zdarzenia mogą też pochodzić z różnych kontrolek ekranowych, np. zaawansowanej kontrolki wykrywającej twarze (kontrolka obrazu z kamery dostarczana jest w standardzie, natomiast moduł wykrywania twarzy oferowany jest jako opcja).
Choć najczęściej używaną komendą jest skok, czyli zmiana bieżącego elementu sekwencji, UniView pozwala na wywołanie dowolnych akcji, np. sterujących urządzeniami zewnętrznymi zgodnymi ze standardem Z-Wave (moduł dostarczany na zamówienie, pozwala np. sterować oświetleniem wystawowym) lub z dołączanych bibliotek użytkownika.

Poniższy przykład przedstawia prezentację interaktywną, zawierającą przycisk ekranowy. Kliknięcie na przycisk wywołuje akcję przejścia do kolejnego elementu sekwencji.
Dla urozmaicenia przykładu, jednym z elementów sekwencji jest grupa, która zawiera kontrolkę wyświetlającą obraz z kamery oraz animowaną ikonę gif z przezroczystością.

Program:

Akcja przycisku:

Wynik (kliknij na film):