|
Składnik FLVPlayback w wersji ActionScript 3.0 obsługuje tryb pełnoekranowy, który wymaga odtwarzacza Flash Player 9.0.28.0 (lub jego późniejszej wersji), a także odpowiedniego ustawienia HTML dla wyświetlania na pełnym ekranie. Niektóre wstępnie zaprojektowane karnacje udostępniają przycisk przełączania, który umożliwia włączanie i wyłączanie trybu pełnoekranowego. Ikona FullScreenButton jest widoczna po prawej stronie paska sterowania na poniższej ilustracji.
Ikona trybu pełnoekranowego na pasku sterowania
Funkcje obsługi trybu pełnoekranowego są dostępne tylko wówczas, gdy dla właściwości
fullScreenTakeOver
ustawiona jest wartość
true
, co jest ustawieniem domyślnym.
Obsługa trybu pełnoekranowego może być dostępna w przypadku stosowania, a także niestosowania przyspieszania sprzętowego. Informacje na temat obsługi przyspieszania sprzętowego zawiera sekcja
Akcelerator sprzętowy
.
Aby zaimplementować funkcję obsługi trybu pełnoekranowego dla składnika FLVPlayback:
-
Dodaj składnik FLVPlayback do aplikacji i przypisz do niego plik wideo.
-
Wybierz karnację dla składnika FLVPlayback, który zawiera przycisk trybu pełnoekranowego (np. SkinUnderPlaySeekFullscreen.swf) lub dodaj składnik FullScreenButton (interfejsu użytkownika) do składnika FLVPlayback z sekcji Wideo panelu Składniki.
-
Wybierz polecenie Plik > Ustawienia publikowania.
-
W oknie dialogowym Ustawienia publikowania kliknij kartę HTML.
-
Na karcie HTML z menu podręcznego Szablon wybierz opcję Flash z obsługą pełnego ekranu.
-
Na karcie HTML zaznacz pole wyboru Wykryj wersję Flash, a następnie określ wersję 9.0.28 lub nowszą — w zależności od używanej wersji programu Flash Player.
-
Wybierz kartę Formaty i upewnij się, że zaznaczone są opcje Flash (.swf) i HTML (.html). Domyślne nazwy plików można zastąpić.
-
Kliknij przycisk Publikuj, a następnie przycisk OK.
Zamiast wykonywać krok 7 możesz kliknąć przycisk OK, a następnie wybrać polecenia Plik > Podgląd publikowania > Domyślne - (HTML), aby automatycznie otworzyć wyeksportowany plik HTML w domyślnej przeglądarce. W przeciwnym wypadku otwórz wyeksportowany plik HTML za pomocą przeglądarki, aby przetestować opcję trybu pełnoekranowego.
Aby dodać składnik FLVPlayback z funkcją obsługi trybu pełnoekranowego do strony WWW, otwórz wyeksportowany plik HTML i skopiuj kod, który osadza plik SWF w pliku HTML dla strony WWW. Ten kod powinien przypominać poniższy:
//from the <head> section
<script language="javascript"> AC_FL_RunContent = 0; </script>
<script language="javascript"> DetectFlashVer = 0; </script>
<script src="AC_RunActiveContent.js" language="javascript"></script>
<script language="JavaScript" type="text/javascript">
<!--
// -----------------------------------------------------------------------------
// Globals
// Major version of Flash required
var requiredMajorVersion = 9;
// Minor version of Flash required
var requiredMinorVersion = 0;
// Revision of Flash required
var requiredRevision = 28;
// -----------------------------------------------------------------------------
// -->
</script>
//and from the <body> section
<script language="JavaScript" type="text/javascript">
<!--
if (AC_FL_RunContent == 0 || DetectFlashVer == 0) {
alert("This page requires AC_RunActiveContent.js.");
} else {
var hasRightVersion = DetectFlashVer(requiredMajorVersion,
requiredMinorVersion, requiredRevision);
if(hasRightVersion) { // if we've detected an acceptable version
// embed the Flash movie
AC_FL_RunContent(
'codebase', 'http://download.macromedia.com/pub/
shockwave/cabs/flash/swflash.cab#version=9,0,28,0',
'width', '550',
'height', '400',
'src', 'fullscreen',
'quality', 'high',
'pluginspage', 'http://www.macromedia.com/go/
getflashplayer',
'align', 'middle',
'play', 'true',
'loop', 'true',
'scale', 'showall',
'wmode', 'window',
'devicefont', 'false',
'id', 'fullscreen',
'bgcolor', '#ffffff',
'name', 'fullscreen',
'menu', 'true',
'allowScriptAccess','sameDomain',
'allowFullScreen','true',
'movie', 'fullscreen',
'salign', '' ); //end AC code
} else { // Flash is too old or we can't detect the plug-in.
var alternateContent = 'Alternative HTML content should be placed
here.'
+ 'This content requires Adobe Flash Player.'
+ '<a href=http://www.macromedia.com/go/getflash/>Get Flash</a>
';
document.write(alternateContent); // Insert non-Flash content.
}
}
// -->
</script>
<noscript>
// Provide alternative content for browsers that do not support scripting
// or for those that have scripting disabled.
Alternative HTML content should be placed here. This content requires Adobe Flash Player.
<a href="http://www.macromedia.com/go/getflash/">Get Flash</a>
</noscript>
Możliwe jest również użycie wyeksportowanego pliku HTML jako szablonu dla strony WWW oraz dodanie do niego innej treści. W takim przypadku należy jednak zmienić nazwę pliku HTML w taki sposób, aby nie doszło do jej przypadkowego zastąpienia w razie ponownego eksportu pliku HTML FLVPlayback z programu Flash.
W każdym z tych przypadków należy załadować do serwera WWW plik AC_RunActiveContent.js, który zostanie wyeksportowany do tego samego folderu, co plik HTML.
Obsługa trybu pełnoekranowego w języku ActionScript obejmuje właściwości
fullScreenBackgroundColor
,
fullScreenSkinDelay,
i
fullScreenTakeOver
, a także metodę
enterFullScreenDisplayState()
. Więcej informacji na temat tych elementów języka ActionScript zawiera
Skorowidz języka ActionScript 3.0
dla programu Flash Professional
.
Stosowanie metody enterFullScreenDisplayState()
Tryb pełnoekranowy można również uruchomić, wywołując metodę
enterFullScreenDisplayState()
ActionScript, co zostało przedstawione w poniższym przykładzie.
function handleClick(e:MouseEvent):void {
myFLVPlybk.enterFullScreenDisplayState();
}
myButton.addEventListener(MouseEvent.CLICK, handleClick);
W tym przykładzie tryb pełnoekranowy
nie
jest wywoływany poprzez kliknięcie przycisku przełączania trybu pełnoekranowego na karnacji FLVPlayback — jest uruchamiany poprzez kliknięcie przycisku (MyButton), który został umieszczony przez twórcę strony WWW i służy do wywoływania tego trybu. Kliknięcie przycisku powoduje uruchomienie programu obsługi zdarzenia
handleClick
, który wywołuje metodę
enterFullScreen DisplayState()
.
Metoda
enterFullScreenDisplayState()
ustawia dla właściwości
Stage.displayState
wartość
StageDisplayState.FULL_SCREEN
i dlatego obowiązują dla niej te same ograniczenia, co dla właściwości
displayState
. Więcej informacji na temat metody
enterFullScreenDisplayState()
i właściwości
Stage
.
displayState
zawiera
Skorowidz języka ActionScript 3.0
dla programu Flash Professional
.
Akcelerator sprzętowy
Program Flash Player 9.0.115.0 i jego późniejsze wersje zawierają kod, który korzysta z dostępnych urządzeń wideo w celu poprawy wydajności i wierności plików FLV, które składnik FLVPlayback odtwarza w trybie pełnoekranowym. Jeśli spełnione są wszystkie wymagania wstępne, a dla właściwości
fullScreenTakeOver
ustawiono wartość
true
, wówczas w celu skalowania pliku wideo program Flash Player wykorzystuje przyspieszenie sprzętowe zamiast rozwiązań programowych. Jeśli składnik FLVPlayback działa we wcześniejszej wersji programu Flash Player lub jeśli wymagania wstępne dla przyspieszenia sprzętowego nie istnieją, program Flash Player dokona zwiększenia skali pliku wideo, tak jak poprzednio.
Aby wykorzystać przyspieszenie sprzętowe dla obsługi trybu pełnoekranowego, komputer musi być wyposażony w kartę graficzną zgodną z formatem DirectX 7 z 4 MB lub większą liczbą pamięci VRAM (wideo RAM). Obsługa urządzeń jest dostępna w systemach Windows 2000 lub Mac OS X 10.2, a także w późniejszych wersjach tych systemów operacyjnych. Direct X® udostępnia interfejsy API stanowiące połączenie między oprogramowaniem i sprzętem, które umożliwia między innymi przyspieszenie grafik dwu- i trójwymiarowych.
W celu wykorzystania przyspieszenia sprzętowego należy wywołać tryb pełnoekranowy na jeden z poniższych sposobów:
-
Za pomocą przycisku przełączania trybu pełnoekranowego w karnacji FLVPlayback
-
Za pomocą elementu do sterowania wideo FullScreenButton
-
Za pomocą metody
enterFullScreenDisplayState()
języka ActionScript. Więcej informacji zawiera sekcja
Stosowanie metody enterFullScreenDisplayState()
.
Jeśli tryb pełnoekranowy zostanie wywołany poprzez ustawienie dla właściwości
Stage.displayState
wartości
StageDisplayState.FULLSCREEN
, wówczas składnik FLVPlayback nie korzysta z przyspieszenia sprzętowego, nawet jeśli dostępne są odpowiednie urządzenia wideo i pamięć.
Jedną konsekwencją korzystania z przyspieszenia sprzętowego dla obsługi trybu pełnoekranowego jest to, że karnacje FLVPlayback są skalowane wraz z odtwarzaczem wideo i plikiem wideo. Poniższy obraz pokazuje wpływ trybu pełnoekranowego z przyspieszeniem sprzętowym na karnację FLVPlayback, której szczegół został przedstawiony w pełnej rozdzielczości.
Tryb pełnoekranowy na monitorze 1600 x 1200 z wideo o rozdzielczości 320x240 pikseli
Ten obraz przedstawia wynik korzystania z trybu pełnoekranowego na monitorze 1600 x 1200 z plikiem wideo, którego szerokość wynosi 320, a wysokość 240 pikseli — są to domyślne wymiary dla składnika FLVPlayback. Efekt zniekształcenia karnacji jest bardziej widoczny w przypadku plików FLV o mniejszych rozmiarach lub na większych monitorach. I przeciwnie — efekt zniekształcenia jest mniej widoczny na większych plikach FLV i mniejszych monitorach. Przykład: zmiana wielkości 640 x 480 na 1600 x 1200 powoduje zwiększenie wielkości karnacji, ale wówczas karnacja jest mniej zniekształcona.
Istnieje możliwość ustawienia właściwości
skinScaleMaximum
w celu ograniczenia skalowania karnacji FLVPlayback. Wartością domyślną jest 4,0 lub 400%. Ograniczanie skalowania karnacji wymaga jednak wykorzystania sprzętu oraz oprogramowania w celu skalowania pliku FLV, co może negatywnie wpływać na wydajność wyświetlania plików FLV o większych rozdzielczościach niż zakodowane przy wyższej szybkości transmisji. Jeśli plik wideo jest duży (na przykład: szerokość 640 pikseli lub więcej, wysokość 480 pikseli lub więcej), nie należy ustawiać dla właściwości
skinScaleMaximum
małej wartości, ponieważ może to spowodować znaczne problemy z wydajnością w przypadku dużych monitorów. Właściwość
skinScaleMaximum
umożliwia zarządzanie zmianami (obustronnymi) wydajności i jakości oraz wyglądem dużych karnacji.
Zamknięcie trybu pełnoekranowego
Aby zamknąć tryb pełnoekranowy, kliknij ponownie przycisk tego trybu lub naciśnij klawisz Esc.
Ustawienie poniższych właściwości i wywołanie poniższych metod może spowodować zmiany układu, które spowodują zamknięcie trybu pełnoekranowego przez składnik FLVPLayback:
height
,
registrationHeight
,
registrationWidth
,
registrationX
,
registrationY
,
scaleX
,
scaleY
,
width
,
x
,
y
,
setScale()
lub
setSize()
.
Jeśli użytkownik ustawi właściwości
align
lub
scaleMode
, składnik FLVPlayback ustawi dla nich wartości
center
i
maintainAspectRatio
do czasu zamknięcia trybu pełnoekranowego.
Zmiana wartości właściwości
fullScreenTakeOver
z
true
na
false
podczas korzystania z trybu pełnoekranowego również sprawia, że program Flash zamyka tryb pełnoekranowy.
|
|
|