Avatar billede optur Novice
22. april 2010 - 18:41 Der er 1 løsning

Video player i flash med brug af FlashVars

Jeg har fået en opgave af min kære lærer og sidder nu fast. Opgaven lyder at vi skal lave en videoafspiller via flash med brug af flashvar.

vi har fået følgende fil udlevet af vores lærer med ordene at det er alt vi skal bruge for at afspille en video via Flashvar.

Video.as:
-----------------------------------------
import flash.display.StageDisplayState;
//Slår højre-kliks menuen fra samt sætter scenestørrelsen til almindelig
stage.showDefaultContextMenu=false
StageDisplayState.NORMAL;

//Sætter pause-knappens synlig tilstand til falsk
pausekn.visible=false;

//Oprettes og deklareres variablerne "varName" samt "linx" som et streng; bruges i.f.m. opfangning af FlashVars-parametre.
var varName:String
var linx:String;

//Her fanges parametrene fra FlashVars i (X)HTML-delen
function getFlashVars():Object {
    return Object( LoaderInfo( this.loaderInfo ).parameters );
}

//Her indsættes variablen "linx" med variable-værdien fra FlashVars
linx = getFlashVars().linx;

//Her oprettes en ny "netConnection"-funktion og binder det hele op til variablen "ns"
var nc:NetConnection = new NetConnection();
nc.connect(null);
var ns:NetStream = new NetStream(nc);
ns.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
ns.bufferTime = 5;
//Her indsættes/anvendes variablen "linx" med URI'en til FLV-filen,
//og skulle få video'en til starte, men se linierne 47-50...
ns.play(linx);

ns.addEventListener(NetStatusEvent.NET_STATUS, statusHandler);
function statusHandler (myevent:NetStatusEvent):void {
    if (myevent.info.code == "NetStream.Play.Stop") {
        ns.pause();
        ns.seek(0);
        }
    }

function asyncErrorHandler(event:AsyncErrorEvent):void
{
    // ignore error
}
//Her deklarer vi en video-instans med dimensionerne 320X240
var vid:Video = new Video(320, 240);
//Her forbinder vi "attachNetStream"-funktionen til variablen "vid"
vid.attachNetStream(ns);
//For at video'en IKKE skal starte af sig selv initialiser vi
//pause-funktionen med det, og så vil SWF-filen vente på en mouseEvent
//fra spil-knappen
ns.pause();
//Her bliver selve video tilføjet til scenen
addChild(vid);

pausekn.addEventListener(MouseEvent.MOUSE_UP, handleClick);
spil.addEventListener(MouseEvent.MOUSE_UP, handleClick);
stands.addEventListener(MouseEvent.MOUSE_UP, handleClick);
fscreen.addEventListener(MouseEvent.MOUSE_UP, handleClick);

function handleClick(bEvent: MouseEvent):void {
    //Relaterer til pause-knappen
    if (bEvent.target == pausekn) {
        spil.visible=true;
        pausekn.visible=false;
        ns.pause();}
    //Relaterer til spil-knappen
    if (bEvent.target == spil) {addChild(vid);
        spil.visible=false;
        pausekn.visible=true;
        ns.resume();}
    //Relaterer til stop-knappen
    if (bEvent.target == stands) {removeChild(vid);
        spil.visible=true;
        pausekn.visible=false;
        ns.pause();
        ns.seek(0);}
    //Relaterer til fuldskærms-knappen
    if (bEvent.target == fscreen) {
        if (stage.displayState == StageDisplayState.NORMAL) {
        stage.displayState=StageDisplayState.FULL_SCREEN;
        } else {
            stage.displayState=StageDisplayState.NORMAL;
        }
}
}
----------------------------------

Jeg har så lavet en swf fil hvor jeg includere denne as fil.
Jeg har hentet en FLVPlayback på Scenen, og givet den vid som instancenavn.

Lavet de 4 knapper, spil, stands, pausekn og fscreen.

min html fil har jeg følgende kode: (bemærk har fjernet http stien af sikkerhedsmæssige årsager, men stien er rettet mod en flv fil)
<object data="video.swf" type="application/x-shockwave-flash" width="320" height="240">
<param name="movie" value="video.swf" />
<param name="allowFullScreen" value="true" />
<param name="FlashVars" value="linx=http://" />
Get Flash... <a href="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash&amp;promoid=BIOW"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Flash"/></a>
</object>
Avatar billede optur Novice
11. april 2011 - 12:38 #1
lukket
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester