Zurück   Flashforum > Flash > Flash Einsteiger

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-01-2010, 21:48   #1 (permalink)
TGB
Neuer User
 
Registriert seit: Jan 2009
Beiträge: 2
Video Player

Hallo,
vielleicht vorweg, ich bin blutiger Anfänger was Flash angeht, wollte mich aber endlich mal daran heranwagen. Ein ganz wenig Programiererfahrung habe ich und daher habe ich mich dann auch mal an AS3 herangewagt.
Das Ziel war, einen kleinen Video-Player für meine Homepage zu entwickeln wobei die Vorgabe war, dass 3 verschiedene Video Clips über ein Menü ansteuerbar sein sollen.

Das Ergebnis habe ich mal online gestellt und man kann es betrachten unter
flash-test

Das dazugehörige Script hier wie folgt:
Code:
stop();
import fl.video.VideoEvent;

video.playButton = AbspielBtn;
video.pauseButton = PauseBtn;
video.stopButton = StopBtn;
video.seekBar = SuchBalken;
video.volumeBar = VolumenRegler;

video.visible = false;


video.addEventListener(VideoEvent.COMPLETE, hideVideo);
function hideVideo(eventObject:VideoEvent) {
	video.seek(0);
	video.stop();
}

s8Btn.addEventListener(MouseEvent.CLICK,play_s8movie);
function play_s8movie(eventObject:MouseEvent) {
	video.source = "s8-v.flv";
	video.visible = true;
	video.play();
}

s8Btn.addEventListener(MouseEvent.MOUSE_OVER,alpha05_btn);
function alpha05_btn(eventObject:MouseEvent) {
	s8Btn.alpha = .5;
}

s8Btn.addEventListener(MouseEvent.MOUSE_OUT,alpha025_btn);
function alpha025_btn(eventObject:MouseEvent) {
	s8Btn.alpha = .25;
}

n8Btn.addEventListener(MouseEvent.MOUSE_OVER,alpha05_n8btn);
function alpha05_n8btn(eventObject:MouseEvent) {
	n8Btn.alpha = .5;
}

n8Btn.addEventListener(MouseEvent.MOUSE_OUT,alpha025_n8btn);
function alpha025_n8btn(eventObject:MouseEvent) {
	n8Btn.alpha = .25;
}

mm16Btn.addEventListener(MouseEvent.MOUSE_OVER,alpha05_mm16btn);
function alpha05_mm16btn(eventObject:MouseEvent) {
	mm16Btn.alpha = .5;	
}

mm16Btn.addEventListener(MouseEvent.MOUSE_OUT,alpha025_mm16Btn);
function alpha025_mm16Btn(eventObject:MouseEvent) {
	mm16Btn.alpha = .25;
}

n8Btn.addEventListener(MouseEvent.CLICK,play_n8movie);
function play_n8movie(eventObject:MouseEvent) {
	video.source = "n8-v.flv";
	video.visible = true;
	video.play();
}

mm16Btn.addEventListener(MouseEvent.CLICK,play_16mmmovie);
function play_16mmmovie(eventObject:MouseEvent) {
	video.source = "16mm-v.flv";
	video.visible = true;
	video.play();
}

StopBtn.addEventListener(MouseEvent.CLICK,stop_movie);
function stop_movie(eventObject:MouseEvent) {
	video.seek(0);
	video.stop();
}
Meine Fragen nun:
1. Kann man das so machen?

2. Wenn ich über das Menü ein Video anwähle und es läuft, kann man ein anderes anwählen, welches dann auch beginnt. Meine Frage dazu:
Müsste das Video, welches vorher lief nicht irgendwie entladen werden?

3. Betätige ich den Stop Button, wird das Video weiter geladen, ist das trotzdem O.K.

Ansonsten wäre ich mit dem Ergebnis ansich erstmal zufrieden, es ließe sich sicherlich am Code noch was verbessern, z.B die Funktionen, die auf die jeweiligen Buttons reagieren ließen sich sicherlich zu einer zusammenfassen aber das habe ich mit der Parameterübergabe noch nicht hinbekommen.

Für Anregungen und Hinweise wäre ich sehr dankbar.

Beste Grüße

TGB

Geändert von TGB (14-01-2010 um 21:56 Uhr)
TGB ist offline   Mit Zitat antworten
Alt 15-01-2010, 05:45   #2 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Zitat:
1. Kann man das so machen?
Wenn es funzt, stellt sich die Frage ja gar nicht. Viele Wege führen nach Rom, ein echtes "richtig" oder "falsch" gibt es in der Programmierung nicht.

Zitat:
Müsste das Video, welches vorher lief nicht irgendwie entladen werden?
Nein, das übernimmt der Flashplayer. Du solltest aber sicherheitshalber das laufende Video stoppen.

Zitat:
3. Betätige ich den Stop Button, wird das Video weiter geladen, ist das trotzdem O.K.
Das ist bei progressiven Downloads normal.

Zitat:
es ließe sich sicherlich am Code noch was verbessern
Es reicht bspw. eine einzige Klickfunktion. Über den event.currentTarget kannst du dann rausfiltern, welche Schaltfläche geklickt wurde und dann mit einem switch-case das entsprechende Video auswählen:
PHP-Code:
n8Btn.addEventListener(MouseEvent.CLICK,play_movieHandler);
mm16Btn.addEventListener(MouseEvent.CLICK,play_movieHandler);

function 
play_movieHandler(event:MouseEvent) {
   var 
url:String;
   switch(
event.currentTarget)
   {
       case 
n8Btn:
          
url="n8-v.flv";
          break;
       case 
mm16Btn:
          
url "16mm-v.flv";
          break;
   }
   
video.source url;
   
video.visible true;
   
video.play();

  Mit Zitat antworten
Alt 15-01-2010, 09:49   #3 (permalink)
TGB
Neuer User
 
Registriert seit: Jan 2009
Beiträge: 2
Vielen Dank für die ausführliche und motivierende Antwort. Klasse!

Viele Grüße

TGB
TGB ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Video-Player ?? chiefofdefense Video 9 06-03-2007 14:17
Video Player Surfman19 Flash MX 3 30-10-2005 12:20
video player mit externem mpg video astronaute Video 4 28-04-2005 13:45
video player csmi Flash MX 2004 19 20-08-2004 16:30
Video für DVD Player LordCash Video 2 27-06-2004 12:10


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:34 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele