Paket | flash.media |
Klass | public class Video |
Arv | Video DisplayObject EventDispatcher Object |
Underklasser | VideoPlayer |
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
När Video-objektet används med Flash Media Server kan du med det skicka livevideo som spelas in av en användare till servern och sedan sända den från servern till andra användare. Med hjälp av dessa funktioner kan du skapa medieprogram som till exempel en enkel videospelare, en videospelare med flerpunktspublicering från en server till en annan eller ett videodelningsprogram för en användargrupp.
Flash Player 9 och senare versioner har stöd för publicering och uppspelning av FLV-filer som har kodats med videokodeken Sorenson Spark eller On2 VP6. Dessutom stöds en alfakanal. Videokodeken On2 VP6 använder mindre bandbredd än äldre tekniker och ger extra filter för avkodning och avringning. Mer information om videouppspelning och de format som stöds finns i avsnittet om klassen flash.net.NetStream.
Flash Player 9.0.115.0 och senare versioner har stöd för mipmapping för att optimera återgivningskvalitet och prestanda vid körning. Flash Player använder optimering med mipmapping för videouppspelning om du ställer in Video-objektets smoothing
-egenskap på true
.
Från och med AIR 25 har en ny tagg med namnet disableMediaCodec
lagts till för Android i app.xml. Om taggen ställs in på true
inaktiveras mediekodeken och videon avkodas med OpenMax AL. I annat fall är mediekodeken aktiverad. Värdet för den här taggen är false
som standard.
Liksom med andra objekt på visningslistan kan du styra olika egenskaper i Video-objekt. Du kan t.ex. flytta Video-objektet runt scenen med egenskaperna x
och y
, du kan ändra storlek på det med egenskaperna height
och width
och så vidare.
Om du vill spela upp ett videoflöde använder du attachCamera()
eller attachNetStream()
för att koppla videoflödet till Video-objektet. Lägg sedan till Video-objektet i visningslistan med addChild()
.
Om du använder Flash Professional kan du också placera Video-objektet på scenen, i stället för att lägga till det med addChild()
, på följande sätt:
- Om bibliotekspanelen inte visas väljer du Fönster > Bibliotek.
- Lägg till ett inbäddat Video-objekt i biblioteket genom att klicka på Alternativ-menyn till höger om bibliotekspanelens titelfält och välja Ny video.
- I dialogrutan Videoegenskaper anger du ett namn för det inbäddade Video-objektet som ska användas i biblioteket och klickar på OK.
- Dra Video-objektet till scenen och ge det ett unikt instansnamn, till exempel
my_video
, med hjälp av egenskapsinspektören. (Ge det inte namnet Video).
I AIR-program på klientdatorer inaktiveras alla energisparfunktioner och skärmsläckarfunktioner (om det tillåts av operativsystemet) när video spelas upp i helskärmsläge.
Obs! Video-klassen är inte en underklass av InteractiveObject-klassen, så den kan inte skicka mushändelser. Du kan dock anropa metoden addEventListener()
i behållaren för visningsobjektet som innehåller Video-objektet.
Lär dig mer
Relaterade API-element
attachNetStream()
flash.media.Camera.getCamera()
flash.net.NetConnection
flash.net.NetStream
flash.display.DisplayObjectContainer.addChild()
flash.display.Stage.addChild()
Egenskap | Definieras med | ||
---|---|---|---|
accessibilityProperties : AccessibilityProperties
De nuvarande hjälpmedelsalternativen för det här visningsobjektet. | DisplayObject | ||
alpha : Number
Anger det angivna objektets alfagenomskinlighetsvärde. | DisplayObject | ||
blendMode : String
Ett värde från klassen BlendMode som anger vilket blandningsläge som ska användas. | DisplayObject | ||
blendShader : Shader [lässkyddad]
Ställer in en skuggning som används för blandning av förgrund och bakgrund. | DisplayObject | ||
cacheAsBitmap : Boolean
Om det är true, sparar Flash-miljöerna en intern bitmappsrepresentation av visningsobjektet i cache-minnet. | DisplayObject | ||
cacheAsBitmapMatrix : Matrix
Om detta inte är null definierar det här Matrix-objektet hur ett visningsobjekt återges när cacheAsBitmap har värdet true. | DisplayObject | ||
constructor : Object
En referens till klassobjektet eller konstruktorfunktionen för en given objektinstans. | Object | ||
deblocking : int
Anger typen av filter som tillämpas på avkodad video i efterbehandlingen. | Video | ||
filters : Array
En indexerad array som innehåller varje filterobjekt som är associerat med visningsobjektet. | DisplayObject | ||
height : Number
Anger visningsobjektets höjd i pixlar. | DisplayObject | ||
loaderInfo : LoaderInfo [skrivskyddad]
Returnerar ett LoaderInfo-objekt som innehåller information om hur filen som visningsobjektet tillhör ska läsas in. | DisplayObject | ||
mask : DisplayObject
Det anropande visningsobjektet maskeras av det angivna visningsobjektet. | DisplayObject | ||
metaData : Object
Erhåller metadataobjektet för instansen DisplayObject om metadata har lagrats tillsammans med instansen för detta DisplayObject i SWF-filen via en PlaceObject4-tagg. | DisplayObject | ||
mouseX : Number [skrivskyddad]
Anger x-koordinaten för musens eller användarens indataenhets position i pixlar. | DisplayObject | ||
mouseY : Number [skrivskyddad]
Anger y-koordinaten för musens eller användarens indataenhets position i pixlar. | DisplayObject | ||
name : String
Anger instansnamnet för DisplayObject. | DisplayObject | ||
opaqueBackground : Object
Anger om visningsobjektet är ogenomskinligt med en viss bakgrundsfärg. | DisplayObject | ||
parent : DisplayObjectContainer [skrivskyddad]
Anger DisplayObjectContainer-objektet som innehåller visningsobjektet. | DisplayObject | ||
root : DisplayObject [skrivskyddad]
För ett visningsobjekt i en inläst SWF-fil är rotegenskapen det översta visningsobjektet i den del av visningslistans trädstruktur som representeras av den SWF-filen. | DisplayObject | ||
rotation : Number
Anger DisplayObject-instansens rotation i grader från den ursprungliga orienteringen. | DisplayObject | ||
rotationX : Number
Anger x-axelsrotationen i grader för DisplayObject-instansen, från den ursprungliga orienteringen i förhållande till den överordnade 3D-behållaren. | DisplayObject | ||
rotationY : Number
Anger y-axelsrotationen i grader för DisplayObject-instansen, från den ursprungliga orienteringen i förhållande till den överordnade 3D-behållaren. | DisplayObject | ||
rotationZ : Number
Anger z-axelsrotationen i grader för DisplayObject-instansen, från den ursprungliga orienteringen i förhållande till den överordnade 3D-behållaren. | DisplayObject | ||
scale9Grid : Rectangle
Det skalningsrutnät som används för närvarande. | DisplayObject | ||
scaleX : Number
Anger vågrät skala (i procent) för objektet utifrån dess registreringspunkt. | DisplayObject | ||
scaleY : Number
Anger lodrät skala (i procent) för objektet utifrån dess registreringspunkt. | DisplayObject | ||
scaleZ : Number
Anger djupskala (procent) för objektet utifrån dess registreringspunkt. | DisplayObject | ||
scrollRect : Rectangle
Visningsobjektets gränser för rullningsrektangeln. | DisplayObject | ||
smoothing : Boolean
Anger om videon ska utjämnas (interpoleras) när den skalas. | Video | ||
stage : Stage [skrivskyddad]
Visningsobjektets scen. | DisplayObject | ||
transform : flash.geom:Transform
Ett objekt med egenskaper som gäller ett visningsobjekts matris, färgomformning och pixelgränser. | DisplayObject | ||
videoHeight : int [skrivskyddad]
Ett heltal som anger videoflödets höjd i pixlar. | Video | ||
videoWidth : int [skrivskyddad]
Ett heltal som anger videoflödets bredd i pixlar. | Video | ||
visible : Boolean
Om visingsobjektet är synligt eller inte. | DisplayObject | ||
width : Number
Anger visningsobjektets bredd i pixlar. | DisplayObject | ||
x : Number
Anger x-koordinaten för DisplayObject-instansen i förhållande till de lokala koordinaterna för den överordnade DisplayObjectContainer. | DisplayObject | ||
y : Number
Anger y-koordinaten för DisplayObject-instansen i förhållande till de lokala koordinaterna för den överordnade DisplayObjectContainer. | DisplayObject | ||
z : Number
Anger z-koordinatens position längs DisplayObject-instansens z-axel i förhållande till den överordnade 3D-behållaren. | DisplayObject |
Metod | Definieras med | ||
---|---|---|---|
Skapar en ny Video-instans. | Video | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registrerar ett händelseavlyssnarobjekt för ett EventDispatcher-objekt så att avlyssnaren får meddelanden om händelser. | EventDispatcher | ||
Anger ett videoflöde från en kamera som ska visas inom Video-objektets gränser i programmet. | Video | ||
Anger ett videoflöde som ska visas inom Video-objektets gränser i programmet. | Video | ||
Raderar den bild som för tillfället visas i Video-objektet (inte i videoströmmen). | Video | ||
Skickar en händelse till händelseflödet. | EventDispatcher | ||
Returnerar en rektangel som definierar visningsområdets område i relation till targetCoordinateSpace-objektets koordinatsystem. | DisplayObject | ||
Returnerar en rektangel som definierar visningsområdets gräns, baserat på koordinatsystemet som definieras av targetCoordinateSpace-parametern, exklusive eventuella linjer i former. | DisplayObject | ||
Konverterar punktobjektet från scenens (globala) koordinater till visningsobjektets (lokala) koordinater. | DisplayObject | ||
Konverterar en tvådimensionell punkt från scenens (globala) koordinater till ett tredimensionellt visningsobjekts (lokala) koordinater. | DisplayObject | ||
Kontrollerar om EventDispatcher-objektet har några avlyssnare registrerade för en viss typ av händelse. | EventDispatcher | ||
Anger om det finns en egenskap angiven för ett objekt. | Object | ||
Utvärderar begränsningsramen för visningsobjektet för att kontrollera om den överlappar eller korsar begränsningsramen för obj-visningsobjektet. | DisplayObject | ||
Utvärderar visningsobjektet för att avgöra om det överlappar eller korsar den punkt som anges av x- och y-parametrarna. | DisplayObject | ||
Anger om en instans av klassen Object finns i prototypkedjan för objektet som anges som parameter. | Object | ||
Konverterar en tredimensionell punkt för det tredimensionella visningsobjektets (lokala) koordinater till en tvådimensionell punkt i scenens (globala) koordinater. | DisplayObject | ||
Konverterar punktobjektet från visningsobjektets (lokala) koordinater till scenens (globala) koordinater. | DisplayObject | ||
Anger om den angivna egenskapen finns och är uppräkningsbar. | Object | ||
Tar bort en avlyssnare från EventDispatcher-objektet. | EventDispatcher | ||
Anger tillgänglighet för en dynamisk egenskap för slingåtgärder. | Object | ||
Returnerar det här objektets strängrepresentation, formaterad i enlighet med språkspecifika konventioner. | Object | ||
Returnerar det angivna objektets strängbeteckning. | Object | ||
Returnerar det angivna objektets primitiva värde. | Object | ||
Kontrollerar om en händelseavlyssnare är registrerad för det här EventDispatcher-objektet eller något av dess överordnade objekt för den angivna händelsetypen. | EventDispatcher |
deblocking | egenskap |
deblocking:int
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Anger typen av filter som tillämpas på avkodad video i efterbehandlingen. Standardvärdet är noll och det värdet låter videokompressorn använda avkodningsfiltret om det behövs.
Videokomprimering kan resultera i oönskade grafikdefekter. Du kan använda egenskapen deblocking
för att ställa in filter som minskar blockering och, för video som komprimerats med On2-kodeken, ringing.
Blocking avser synliga brister mellan gränserna för blocken som skapar varje videobildruta. Ringing avser förvrängda kanter runt element i en videobild.
Två avkodningsfilter finns: ett i Sorenson-kodeken och ett i On2 VP6-kodeken. Ett avringningsfilter är dessutom tillgängligt när du använder On2 VP6-kodeken. Om du vill ställa in ett filter använder du ett av följande värden:
- 0 – låter videokompressorn använda avkodningsfiltret om det behövs.
- 1 – avkodningsfiltret används inte.
- 2 – Sorenson-avkodningsfiltret används.
- 3 – (endast för On2-video) On2-avkodningsfiltret används, men inget avringningsfilter.
- 4 – (endast för On2-video) On2-avkodningsfiltret och avringningsfiltret används.
- 5 – (endast för On2-video) On2-avkodningsfiltret och ett On2-avringningsfilter med högre prestanda används.
Om ett värde som är högre än 2 väljs för video när Sorenson-kodeken används, använder Sorenson-dekodern läge 2 automatiskt.
Avkodningsfilter påverkar övergripande uppspelningsprestanda och behövs oftast inte för video med hög bandbredd. Om ett användarsystem inte är tillräckligt kraftfullt kan du få problem med uppspelning av video med ett avkodningsfilter aktiverat.
Implementering
public function get deblocking():int
public function set deblocking(value:int):void
smoothing | egenskap |
smoothing:Boolean
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Anger om videon ska utjämnas (interpoleras) när den skalas. För att utjämning ska fungera måste miljön vara inställd på hög kvalitet (standard). Standardvärdet är false
(ingen utjämning).
För videouppspelning med Flash Player 9.0.115.0 och senare versioner ska egenskapen ställas in på true
för att dra fördel av bildoptimering med mipmapping.
Implementering
public function get smoothing():Boolean
public function set smoothing(value:Boolean):void
videoHeight | egenskap |
videoHeight:int
[skrivskyddad] Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Ett heltal som anger videoflödets höjd i pixlar. För direktflöden är värdet detsamma som egenskapen Camera.height
för det Camera-objekt som spelar in videoflödet. För inspelade videofiler är det här värdet höjden på videon. För inspelad video skickas NetStream.Video.DimensionChange-händelsen när detta värde ändras.
Du kan till exempel använda egenskapen för att se till att användaren ser video med samma storlek som den spelas in med, oavsett Video-objektets faktiska storlek på scenen.
Implementering
public function get videoHeight():int
Relaterade API-element
videoWidth | egenskap |
videoWidth:int
[skrivskyddad] Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Ett heltal som anger videoflödets bredd i pixlar. För direktflöden är värdet detsamma som egenskapen Camera.width
för det Camera-objekt som spelar in videoflödet. För inspelade videofiler är det här värdet bredden på videon. För inspelad video skickas NetStream.Video.DimensionChange-händelsen när detta värde ändras.
Du kan till exempel använda egenskapen för att se till att användaren ser video med samma storlek som den spelas in med, oavsett Video-objektets faktiska storlek på scenen.
Implementering
public function get videoWidth():int
Relaterade API-element
Video | () | Konstruktor |
public function Video(width:int = 320, height:int = 240)
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Skapar en ny Video-instans. Om inga värden för width
- och height
-parametrarna anges används standardvärdena. Du kan även ställa in width- och height-egenskaperna i Video-objektet efter den ursprungliga konstruktionen med Video.width
och Video.height
. Om ett nytt Video-objekt skapas är inte nollvärden för width eller height tillåtna. Om du skickar noll används standardvärdena.
Om du har skapat videon anropar du metoden DisplayObjectContainer.addChild()
eller DisplayObjectContainer.addChildAt()
och lägger till Video-objektet i ett överordnat DisplayObjectContainer-objekt.
width:int (default = 320 ) — Videons bredd i pixlar.
| |
height:int (default = 240 ) — Videons höjd i pixlar.
|
Exempel ( Så här använder du exemplet )
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 | () | metod |
public function attachCamera(camera:Camera):void
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9 |
Anger ett videoflöde från en kamera som ska visas inom Video-objektets gränser i programmet.
Använd den här metoden för att bifoga livevideo som har spelats in av användaren i Video-objektet. Du kan spela upp livevideo lokalt på samma dator eller enhet som den spelas in på eller skicka den till Flash Media Server och använda servern för att direktuppspela videon för andra användare.
Obs! I ett iOS AIR-program kan kameravideo inte visas när programmet använder GPU-återgivningsläge.
Parametrar
camera:Camera — Ett Camera-objekt som spelar in videodata. Om du vill avsluta anslutningen till Video-objektet skickar du null .
|
Relaterade API-element
Exempel
Så här använder du exemplet
Hur den här metoden används visas i exemplet för metoden Camera.getCamera().
attachNetStream | () | metod |
public function attachNetStream(netStream:NetStream):void
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Anger ett videoflöde som ska visas inom Video-objektets gränser i programmet. Videoströmmen är antingen en videofil som spelas upp med NetStream.play()
, ett Camera-objekt eller null
. Om du använder en videofil kan den lagras på det lokala filsystemet eller på Flash Media Server. Om värdet på argumentet netStream
är null
spelas videofilmen inte längre upp i Video-objektet.
Du behöver inte använda den här metoden om videofilen bara innehåller ljud. Ljuddelen av en videofil spelas upp automatiskt när NetStream.play()
anropas. Om du vill styra ljudet som associeras med en videofil använder du egenskapen soundTransform
för det NetStream-objekt som spelar upp videofilen.
Parametrar
netStream:NetStream — Ett NetStream-objekt. Om du vill avsluta anslutningen till Video-objektet skickar du null .
|
Relaterade API-element
clear | () | metod |
public function clear():void
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Raderar den bild som för tillfället visas i Video-objektet (inte i videoströmmen). Den här metoden är användbar för hantering av den aktuella bilden. Du kan till exempel radera den sista bilden eller visa väntelägesinformation utan att dölja Video-objektet.
Relaterade API-element
videoURL
, i det här fallet en FLV-fil som kallas Video.flv som ligger i samma katalog som SWF-filen.
I det här exemplet placeras koden som skapar Video- och NetStream-objekten och anropar Video.attachNetStream()
och NetStream.play()
i en hanterarfunktion. Hanteraren anropas bara om försöket att ansluta till NetConnection-objektet lyckas, vilket är när netStatus
-händelsen returnerar ett infoobjekt med en code
-egenskap som visar om åtgärden lyckades. Du bör vänta tills anslutningen har upprättats innan du anropar 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, 01:40 PM Z