Pakiet | flash.media |
Klasa | public class Video |
Dziedziczenie | Video DisplayObject EventDispatcher Object |
Podklasy | VideoPlayer |
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Obiekt Video, w połączeniu z oprogramowaniem Flash Media Server, umożliwia przesyłanie „na żywo” przechwyconego wideo na serwer i jego dalszą transmisję z serwera do innych użytkowników. Korzystając z opisywanych tutaj funkcji, można tworzyć aplikacje multimedialne, takie jak np. prosty odtwarzacz wideo, odtwarzacz wideo z funkcją publikacji w wielu miejscach za pośrednictwem wielu serwerów lub aplikację do udostępniania wideo w ramach społeczności użytkowników.
Program Flash Player 9 i późniejsze wersje umożliwia publikowanie i odtwarzanie plików FLV zakodowanych za pomocą kodeka Sorenson Spark, On2 VP6 oraz kanału alfa. Kodek On2 VP6 wykorzystuje mniejszą szerokość pasma niż starsze technologie i dodatkowo oferuje filtry do usuwania bloków i niedoskonałości typu ringing. Więcej informacji na temat odtwarzania wideo i obsługiwanych formatów znajduje się w informacjach o klasie flash.net.NetStream.
Program Flash Player 9.0.115.0 oraz późniejsze wersje obsługują technikę mipmapping optymalizującą jakość i wydajność renderowania w środowisku wykonania. Program Flash Player odtwarza wideo z wykorzystaniem optymalizacji techniką mipmappingu, gdy właściwość smoothing
obiektu Video jest ustawiona na true
.
Począwszy od wersji 25 środowiska AIR dla platformy Android w pliku app.xml wprowadzono nowy znacznik o nazwie disableMediaCodec
. Ustawienie wartości true
dla tego znacznika powoduje dezaktywację kodeków dla materiałów multimedialnych i dekodowanie materiałów wideo przy użyciu standardu OpenMax AL. W innym przypadku kodeki materiałów multimedialnych będą aktywne. Domyślna wartość tego znacznika to false
.
Istnieje możliwość kontrolowania różnych właściwości obiektów Video podobnie, jak wielu innych obiektów wyświetlanych z listy wyświetlania. Przykładowo istnieje możliwość poruszania obiektem Video dookoła stołu montażowego za pomocą właściwości x
i y
, zmiany jego rozmiaru za pomocą właściwości height
i width
itd.
Aby odtworzyć strumień wideo, należy skorzystać z metody attachCamera()
lub attachNetStream()
w celu dołączenia obiektu Video. Następnie za pomocą metody addChild()
należy dodać obiekt Video do listy wyświetlania.
W programie Flash Professional zamiast używać metody addChild()
, można bezpośrednio umieścić obiekt Video na stole montażowym:
- Aby wyświetlić panel Biblioteka (jeśli jest niewidoczny), wybierz opcję Okno > Biblioteka.
- Dodaj osadzony obiekt Video do biblioteki, klikając menu Opcje po prawej stronie paska tytułu panelu Biblioteka i wybierając opcję Nowe wideo.
- W oknie dialogowym Właściwości wideo, wpisz nazwę osadzonego obiektu Video, który będzie używany w bibliotece i kliknij przycisk OK.
- Przeciągnij obiekt Video na stół montażowy i skorzystaj z Inspektora właściwości, aby nadać mu niepowtarzalną nazwę instancji taką, jak np.
my_video
. (Nie należy nadawać nazwy Video).
W aplikacjach AIR dla komputerów stacjonarnych odtworzenie wideo w trybie pełnoekranowym powoduje wyłączenie wszystkich funkcji oszczędzania energii i wygaszaczy ekranu (o ile zezwala na to system operacyjny).
Uwaga: klasa Video nie jest podzbiorem klasy InteractiveObject, dlatego nie może wywołać zdarzeń myszy. Można jednak wywołać metodę addEventListener()
w kontenerze obiektu wyświetlanego, który zawiera obiekt Video.
Więcej informacji
Powiązane elementy interfejsu API
attachNetStream()
flash.media.Camera.getCamera()
flash.net.NetConnection
flash.net.NetStream
flash.display.DisplayObjectContainer.addChild()
flash.display.Stage.addChild()
Właściwość | Zdefiniowane przez | ||
---|---|---|---|
accessibilityProperties : AccessibilityProperties
Bieżące opcje dostępności tego obiektu wyświetlanego. | DisplayObject | ||
alpha : Number
Wartość przezroczystości alfa określonego obiektu. | DisplayObject | ||
blendMode : String
Wartość z klasy BlendMode określająca, jakiego trybu mieszania należy użyć. | DisplayObject | ||
blendShader : Shader [tylko do zapisu]
Ustawia moduł cieniujący, który jest używany do mieszania pierwszego planu oraz tła. | DisplayObject | ||
cacheAsBitmap : Boolean
Jeśli ustawiono wartość true, środowisko wykonawcze Flash buforuje wewnętrzną reprezentację bitmapy obiektu wyświetlanego. | DisplayObject | ||
cacheAsBitmapMatrix : Matrix
W przypadku wartości innej niż null ten obiekt Matrix definiuje sposób renderowania obiektu wyświetlanego, gdy cacheAsBitmap jest ustawione na true. | DisplayObject | ||
constructor : Object
Odwołanie do obiektu klasy lub funkcji konstruktora, dotyczące danej instancji obiektu. | Object | ||
deblocking : int
Określa typ filtra zastosowanego do dekodowanych danych wideo podczas przetwarzania końcowego. | Video | ||
filters : Array
Indeksowana tablica zawierająca wszystkie filtry aktualnie skojarzone z obiektem wyświetlanym. | DisplayObject | ||
height : Number
Wysokość obiektu ekranowego w pikselach. | DisplayObject | ||
loaderInfo : LoaderInfo [tylko do odczytu]
Zwraca obiekt LoaderInfo zawierający informacje o ładowaniu pliku, do którego należy ten obiekt wyświetlany. | DisplayObject | ||
mask : DisplayObject
Wywoływany obiekt wyświetlany jest maskowany przez określony obiekt maski. | DisplayObject | ||
metaData : Object
Pobiera obiekt metadanych wystąpienia klasy DisplayObject, jeśli metadane są przechowywane razem z tym wystąpieniem klasy DisplayObject w pliku SWF, korzystając ze znacznika PlaceObject4. | DisplayObject | ||
mouseX : Number [tylko do odczytu]
Określa współrzędną x myszy lub urządzenia wejściowego użytkownika w pikselach. | DisplayObject | ||
mouseY : Number [tylko do odczytu]
Określa współrzędną y myszy lub urządzenia wejściowego użytkownika w pikselach. | DisplayObject | ||
name : String
Nazwa instancji obiektu DisplayObject. | DisplayObject | ||
opaqueBackground : Object
Określa, czy przy konkretnym kolorze tła obiekt wyświetlany jest nieprzejrzysty. | DisplayObject | ||
parent : DisplayObjectContainer [tylko do odczytu]
Odnosi się do obiektu DisplayObjectContainer, który zawiera obiekt wyświetlany. | DisplayObject | ||
root : DisplayObject [tylko do odczytu]
Dla obiektu wyświetlanego w załadowanym pliku SWF główną właściwość stanowi obiekt wyświetlany na samym szczycie na liście wyświetlania w postaci struktury drzewa, którą reprezentuje plik SWF. | DisplayObject | ||
rotation : Number
Określa wielkość obrotu instancji obiektu DisplayObject (w kątach). | DisplayObject | ||
rotationX : Number
Wskazuje kąt obrotu (w stopniach) instancji DisplayObject wokół osi x — od pozycji początkowej względem nadrzędnego kontenera 3D. | DisplayObject | ||
rotationY : Number
Wskazuje kąt obrotu (w stopniach) instancji DisplayObject wokół osi y — od pozycji początkowej względem nadrzędnego kontenera 3D. | DisplayObject | ||
rotationZ : Number
Wskazuje kąt obrotu (w stopniach) instancji DisplayObject wokół osi z — od pozycji początkowej względem nadrzędnego kontenera 3D. | DisplayObject | ||
scale9Grid : Rectangle
Aktualnie stosowana siatka skalowania. | DisplayObject | ||
scaleX : Number
Wskazuje skalę poziomą (procent) obiektu względem punktu odniesienia. | DisplayObject | ||
scaleY : Number
Wskazuje skalę pionową (procent) obiektu względem punktu odniesienia. | DisplayObject | ||
scaleZ : Number
Wskazuje skalę głębokości (procent) obiektu względem punktu odniesienia. | DisplayObject | ||
scrollRect : Rectangle
Granice obszaru przewijania obiektu wyświetlanego. | DisplayObject | ||
smoothing : Boolean
Określa, czy podczas skalowania obraz wideo powinien zostać wygładzony (poddany interpolacji). | Video | ||
stage : Stage [tylko do odczytu]
Stół montażowy obiektu wyświetlanego. | DisplayObject | ||
transform : flash.geom:Transform
Obiekt z właściwościami dotyczącymi matrycy obiektu wyświetlanego, transformacji kolorów oraz granic pikseli. | DisplayObject | ||
videoHeight : int [tylko do odczytu]
Liczba całkowita określająca wysokość strumienia wideo (w pikselach). | Video | ||
videoWidth : int [tylko do odczytu]
Liczba całkowita określająca szerokość strumienia wideo (w pikselach). | Video | ||
visible : Boolean
Decyduje, czy obiekt wyświetlany jest widoczny, czy nie. | DisplayObject | ||
width : Number
Szerokość obiektu ekranowego w pikselach. | DisplayObject | ||
x : Number
Oznacza współrzędną x instancji obiektu DisplayObject w lokalnym układzie współrzędnych nadrzędnego obiektu DisplayObjectContainer. | DisplayObject | ||
y : Number
Oznacza współrzędną y instancji obiektu DisplayObject w lokalnym układzie współrzędnych nadrzędnego obiektu DisplayObjectContainer. | DisplayObject | ||
z : Number
Wskazuje współrzędną wzdłuż osi Z instancji DisplayObject względem nadrzędnego kontenera 3D. | DisplayObject |
Metoda | Zdefiniowane przez | ||
---|---|---|---|
Tworzy nową instancję klasy Video. | Video | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Rejestruje obiekt detektora zdarzeń w obiekcie EventDispatcher, dzięki czemu detektor będzie otrzymywał powiadomienia o zdarzeniu. | EventDispatcher | ||
Określa strumień wideo z kamery, który ma być wyświetlany w obszarze wyznaczonym przez obiekt Video w oknie aplikacji. | Video | ||
Określa strumień danych wideo, który ma być wyświetlany w obszarze wyznaczonym przez obiekt Video w oknie aplikacji. | Video | ||
Usuwa obraz aktualnie wyświetlany w obiekcie Video (a nie strumień wideo). | Video | ||
Wywołuje zdarzenie, tj. kieruje je do przepływu zdarzeń. | EventDispatcher | ||
Zwraca prostokąt definiujący obszar obiektu wyświetlanego (w układzie współrzędnych obiektu targetCoordinateSpace). | DisplayObject | ||
Zwraca prostokąt definiujący granice obiektu wyświetlanego w układzie współrzędnych określonych przez parametr targetCoordinateSpace (z wyłączeniem konturów kształtów). | DisplayObject | ||
Konwertuje obiekt punktowy ze współrzędnych obiektu Stage (globalne) do współrzędnych obiektu wyświetlanego (lokalne). | DisplayObject | ||
Konwertuje punkt dwuwymiarowy ze współrzędnych stołu wymiarowego (globalnych) na współrzędne trójwymiarowego obiektu wyświetlanego (lokalne). | DisplayObject | ||
Sprawdza, czy obiekt EventDispatcher zawiera jakiekolwiek detektory zarejestrowane dla konkretnego typu zdarzeń. | EventDispatcher | ||
Wskazuje, czy dla obiektu zdefiniowano określoną właściwość. | Object | ||
Wyznacza prostokąt ograniczający obiekt wyświetlany w celu sprawdzenia, czy zachodzi on lub przecina się z prostokątem ograniczającym obiektu wyświetlanego obj. | DisplayObject | ||
Analizuje obiekt wyświetlany w celu ustalenia czy nakłada się on lub przecina punkt określony przez parametry x i y. | DisplayObject | ||
Wskazuje, czy instancja klasy Object należy do łańcucha prototypów obiektu określonego jako parametr. | Object | ||
Konwertuje punkt trójwymiarowy trójwymiarowego obiektu wyświetlanego (lokalnego) na punkt dwuwymiarowy we współrzędnych stołu montażowego (globalnych). | DisplayObject | ||
Konwertuje obiekt punktowy ze współrzędnych obiektu wyświetlanego (lokalne) do współrzędnych obiektu Stage (globalne). | DisplayObject | ||
Wskazuje, czy określona właściwość istnieje i jest przeliczalna. | Object | ||
Usuwa detektor z obiektu EventDispatcher. | EventDispatcher | ||
Ustawia dostępność właściwości dynamicznej używanej w pętlach. | Object | ||
Zwraca ciąg reprezentujący obiekt — sformatowany zgodnie z konwencjami właściwymi dla ustawień regionalnych. | Object | ||
Zwraca ciąg reprezentujący określony obiekt. | Object | ||
Zwraca pierwotną wartość dla określonego obiektu. | Object | ||
Sprawdza, czy detektor zdarzeń określonego typu jest zarejestrowany w tym obiekcie EventDispatcher lub jego elementach macierzystych. | EventDispatcher |
deblocking | właściwość |
deblocking:int
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Określa typ filtra zastosowanego do dekodowanych danych wideo podczas przetwarzania końcowego. Wartością domyślną jest 0, co oznacza, że kompresor wideo będzie odpowiednio do potrzeb stosował filtr usuwający bloki.
Kompresja obrazu wideo może spowodować powstanie niepożądanych artefaktów. Korzystając z właściwości deblocking
, można ustawić filtry usuwające bloki i i zniekształcenia typu ringing z obrazu wideo skompresowanego za pomocą kodeka On2.
Przez bloki rozumie się niedoskonałości widoczne na granicach bloków tworzących klatkę wideo. Zniekształcenia typu ringing to zniekształcone krawędzie wokół elementów na obrazie wideo.
Dostępne są dwa filtry usuwania bloków: filtr w kodeku Sorenson oraz filtr w kodeku On2 VP6. Ponadto filtr zniekształceń typu ringing jest dostępny w przypadku korzystania z kodeka On2 VP6. Aby ustawić filtr, należy skorzystać z jednej z następujących wartości:
- 0 — pozwala kompresorowi wideo na stosowanie filtru usuwającego bloki odpowiednio do potrzeb.
- 1 — nie zezwala na użycie filtru usuwającego bloki.
- 2 — umożliwia zastosowanie filtru Sorenson do usuwania bloków.
- 3 — umożliwia zastosowanie filtru On2 do usuwania bloków, bez filtru zniekształceń typu ringing (tylko dla wideo w formacie On2).
- 4 — umożliwia zastosowanie filtru On2 usuwania bloków i usuwania zniekształceń typu ringing (tylko dla wideo w formacie On2).
- 5 — umożliwia zastosowanie filtru On2 usuwania bloków i bardziej wydajnego filtru On2 zniekształceń typu ringing (tylko dla wideo formatu On2).
Jeśli dla wideo skompresowanego za pomocą kodeka Sorenson wybrana została wartość większa od 2, dekoder Sorenson ponownie ustawi ją na wartość domyślną 2.
Użycie filtru usuwania bloków ma wpływ na ogólną wydajność odtwarzania i zwykle nie jest konieczne jego stosowanie dla wideo o dużej szybkości transmisji/wysokiej rozdzielczości. Jeśli system użytkownika nie ma wystarczająco dużej mocy obliczeniowej, użytkownik może natrafić napotkać trudności w odtwarzaniu wideo zarejestrowanego z włączonym filtrem usuwającym bloki.
Implementacja
public function get deblocking():int
public function set deblocking(value:int):void
smoothing | właściwość |
smoothing:Boolean
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Określa, czy podczas skalowania obraz wideo powinien zostać wygładzony (poddany interpolacji). Aby funkcja wygładzania rozpoczęła działanie, należy przełączyć środowisko wykonawcze na tryb wysokiej jakości (domyślny). Wartością domyślną jest false
(brak wygładzania).
Aby móc odtwarzać wideo za pomocą programu Flash Player w wersji 9.0.115.0 lub nowszej, należy ustawić tę właściwość na wartość true
w celu skorzystania z optymalizacji obrazu techniką mipmappingu.
Implementacja
public function get smoothing():Boolean
public function set smoothing(value:Boolean):void
videoHeight | właściwość |
videoHeight:int
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liczba całkowita określająca wysokość strumienia wideo (w pikselach). Dla strumieni w trybie na żywo, ta wartość jest taka sama jak we właściwości Camera.height
obiektu Camera, który przechwytuje strumień wideo. W przypadku nagranych plików wideo ta wartość oznacza wysokość wideo. W przypadku zmiany tej wartości dla nagranych materiałów wideo wywoływane jest zdarzenie NetStream.Video.DimensionChange.
Z tej właściwości można skorzystać, na przykład aby upewnić się, że użytkownik widzi obraz wideo w tej samej rozdzielczości, w której zostało ono zapisane, bez względu na rzeczywistą rozdzielczość obiektu Video na stole montażowym.
Implementacja
public function get videoHeight():int
Powiązane elementy interfejsu API
videoWidth | właściwość |
videoWidth:int
[tylko do odczytu] Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Liczba całkowita określająca szerokość strumienia wideo (w pikselach). Dla strumieni w trybie na żywo, ta wartość jest taka sama jak we właściwości Camera.width
obiektu Camera, który przechwytuje strumień wideo. W przypadku nagranych plików wideo ta wartość oznacza szerokość wideo. W przypadku zmiany tej wartości dla nagranych materiałów wideo wywoływane jest zdarzenie NetStream.Video.DimensionChange.
Z tej właściwości można skorzystać na przykład po to, aby upewnić się, że użytkownik widzi obraz wideo w tej samej rozdzielczości, w której zostało ono zapisane, bez względu na rzeczywistą rozdzielczość obiektu Video na stole montażowym.
Implementacja
public function get videoWidth():int
Powiązane elementy interfejsu API
Video | () | Konstruktor |
public function Video(width:int = 320, height:int = 240)
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9 |
Tworzy nową instancję klasy Video. Jeśli żadne wartości nie zostaną przekazane do parametrów width
oraz height
, użyte będą wartości domyślne. Istnieje możliwość ustawienia właściwości szerokości i wysokości obiektu Video również po jego utworzeniu za pomocą Video.width
i Video.height
. W momencie tworzenia obiektu Video wartości zerowe dla parametrów szerokości i wysokości są niedozwolone; przekazanie do nich wartości zero spowoduje ustawienie wartości domyślnych.
Po utworzeniu obiektu Video, należy wywołać metodę DisplayObjectContainer.addChild()
lub DisplayObjectContainer.addChildAt()
, aby dodać obiekt Video do nadrzędnego obiektu DisplayObjectContainer.
width:int (default = 320 ) — Szerokość obrazu wideo w pikselach.
| |
height:int (default = 240 ) — Wysokość obrazu wideo w pikselach.
|
Przykład ( Sposób korzystania z tego przykładu )
var MyVideo:Video = new Video(); addChild(MyVideo); var MyNC:NetConnection = new NetConnection(); MyNC.connect(null); var MyNS:NetStream = new NetStream(MyNC); MyNS.play("http://www.helpexamples.com/flash/video/clouds.flv"); MyVideo.attachNetStream(MyNS); //the clouds.flv video has metadata we're not using, so create //an error handler to ignore the message generated by the runtime //about the metadata MyNS.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler); function asyncErrorHandler(event:AsyncErrorEvent):void { //ignore metadata error message }
attachCamera | () | metoda |
public function attachCamera(camera:Camera):void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9 |
Określa strumień wideo z kamery, który ma być wyświetlany w obszarze wyznaczonym przez obiekt Video w oknie aplikacji.
Za pomocą tej metody można dołączać wideo „na żywo” przechwycone przez użytkownika, do obiektu Video. Istnieje możliwość odtwarzania obrazu wideo lokalnie na tym samym komputerze lub urządzeniu, na którym było przechwytywane lub przesłania go do serwera z oprogramowaniem Flash Media Server i skorzystania z niego w celu strumieniowej transmisji do pozostałych użytkowników.
Uwaga: W aplikacji AIR w systemie iOS nie można wyświetlać wideo z kamery, gdy aplikacja korzysta z trybu renderingu GPU.
Parametry
camera:Camera — Obiekt Camera przechwytujący dane wideo. Aby przerwać połączenie z obiektem Video, należy przekazać wartość null .
|
Powiązane elementy interfejsu API
Przykład
Sposób korzystania z tego przykładu
Sposób zastosowania tej metody został przedstawiony w przykładzie metody Camera.getCamera().
attachNetStream | () | metoda |
public function attachNetStream(netStream:NetStream):void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Określa strumień danych wideo, który ma być wyświetlany w obszarze wyznaczonym przez obiekt Video w oknie aplikacji. Strumień wideo jest plikiem wideo odtwarzanym za pomocą metody NetStream.play()
, obiektem Camera lub wartością null
. Plik wideo może być przechowywany w lokalnym systemie plików lub na serwerze Flash Media Server. Jeśli argument netStream
ma wartość null
, wideo nie jest już odtwarzane w obiekcie Video.
Nie należy korzystać z tej metody, jeśli plik wideo zawiera jedynie dźwięk; sekcja dźwięku pliku wideo jest automatycznie odtwarzana po wywołaniu metody NetStream.play()
. Aby kontrolować strumień audio skojarzony z plikiem wideo, należy skorzystać z właściwości soundTransform
obiektu NetStream, który odtwarza plik wideo.
Parametry
netStream:NetStream — Obiekt NetStream. Aby przerwać połączenie do obiektu Video, należy przekazać wartość null .
|
Powiązane elementy interfejsu API
clear | () | metoda |
public function clear():void
Wersja języka: | ActionScript 3.0 |
Wersje środowiska wykonawczego: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Usuwa obraz aktualnie wyświetlany w obiekcie Video (a nie strumień wideo). Ta metoda jest używana w ramach obsługi bieżącego obrazu. Przykład: można usunąć ostatni obraz lub wyświetlić informacje dotyczące stanu oczekiwania bez ukrywania obiektu Video.
Powiązane elementy interfejsu API
videoURL
, w tym przypadku, plik FLV o nazwie Video.flv, który jest umieszczony w tym samym katalogu co plik SWF.
W przykładzie kod tworzący obiekty Video oraz NetStream i wywołujący metody Video.attachNetStream()
oraz NetStream.play()
jest umieszczany w funkcji modułu obsługi. Moduł obsługi wywoływany jest jedynie w momencie próby połączenia z obiektem NetConnection zakończonej pomyślnie, czyli wtedy, gdy zdarzenie netStatus
zwróci obiekt info z właściwością code
wskazującą na powodzenie operacji. Zaleca się zaczekanie·do momentu pomyślnego nawiązania połączenia, zanim wywołana zostanie metoda NetStream.play()
.
package { import flash.display.Sprite; import flash.events.*; import flash.media.Video; import flash.net.NetConnection; import flash.net.NetStream; public class VideoExample extends Sprite { private var videoURL:String = "Video.flv"; private var connection:NetConnection; private var stream:NetStream; public function VideoExample() { connection = new NetConnection(); connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); connection.connect(null); } private function netStatusHandler(event:NetStatusEvent):void { switch (event.info.code) { case "NetConnection.Connect.Success": connectStream(); break; case "NetStream.Play.StreamNotFound": trace("Unable to locate video: " + videoURL); break; } } private function connectStream():void { stream = new NetStream(connection); stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); stream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler); var video:Video = new Video(); video.attachNetStream(stream); stream.play(videoURL); addChild(video); } private function securityErrorHandler(event:SecurityErrorEvent):void { trace("securityErrorHandler: " + event); } private function asyncErrorHandler(event:AsyncErrorEvent):void { // ignore AsyncErrorEvent events. } } }
Tue Jun 12 2018, 12:06 PM Z