Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 23-08-2006, 12:37   #1 (permalink)
Neuer User
 
Benutzerbild von sakn
 
Registriert seit: Nov 2004
Ort: Schweiz
Beiträge: 66
FLV abfrage?

Hi Leute

Ich bastle gerade an einem FLV netStream herum das mir leider Kopfzerbrechen bereitet.

Abspielen, Pausieren, Sound ein und aus etc. funktioniert alles einwandfrei. Jetzt möchte ich einen kleinen "Goodie" einbauen.
Der soll so funktionieren: Der FLV wird gebuffert , und dann wenn er gerade abspielen würde, diesen Zeitpunkt abzufangen und zu stoppen. So, dass man noch nichts sieht. Genau an diesem Zeitpukt läuft eine Animation ab. Sobald diese fertig ist, wird der FLV abgespielt. So ist für den Zuschauer keinerlei Wartezeit für den Video erkennbar. Auch wenn diese nur 1 Sekunde dauern würde. Damit wäre der flüssige Ablauf des Film gewährleistet. Unabhängig von der Bandbreite des Zuschauers. Ich möchte aber nicht abwarten, bis der ganze Film gebuffert ist, sondern nur die Zeit bis er abspielen würde. Die Wartezeit wäre dann einfach vor der Animation.

Hier noch mein bestehender Code:
PHP-Code:

var netConn:NetConnection = new NetConnection();
netConn.connect(null);
var 
netStream:NetStream = new NetStream(netConn);
MyVideo.attachVideo(netStream);
netStream.setBufferTime(5);

_root.myVideo.attachVideo(_root.netStream); 
_root.myVideo.attachAudio(_root.netStream); 
var 
snd = new Sound(_root.myVideo);  
_root.snd.setVolume(100);
netStream.play("video.flv");
butPlay.enabled=false;


butPause.onRelease=function()
{
    
netStream.pause();
}

var 
soundOK ="1";

butSound.onRelease=function()
{
    if(
soundOK =="1")
        {
        
_root.snd.setVolume(0);
        
soundOK++;
        }
    else
        {
        
_root.snd.setVolume(100);
        
soundOK--;
        }
}
stop(); 

Bitte gebt mir einen Tipp, wie ich dies bewerkstelligen könnte. Da mein Wissen hierzu nicht gerade ausgeprägt ist, bin ich leider auf Hilfe angewiesen.

Cheers'n Thanx
Sakn
sakn ist offline   Mit Zitat antworten
Alt 23-08-2006, 12:50   #2 (permalink)
lernwillig
 
Benutzerbild von Bugfixer
 
Registriert seit: May 2004
Ort: Berlin
Beiträge: 221
Thumbs up

Hi,
netStream hat eine eigenschaft namens Buffer.Full.
Damit kannst du dann stoppen und deine zwischenfunktion aufrufen.

ActionScript:
  1. netStream.onStatus = function(infoObject) {
  2.     if(infoObject.code == "NetStream.Buffer.Full"){
  3.         trace("Buffer voll");
  4.          netStream.pause();
  5.          deinenfunctionsaufruf;
  6.  
  7.     }
  8. };

Grüße
Fabian
Bugfixer ist offline   Mit Zitat antworten
Alt 23-08-2006, 13:36   #3 (permalink)
Neuer User
 
Benutzerbild von sakn
 
Registriert seit: Nov 2004
Ort: Schweiz
Beiträge: 66
Hey Bugfixer

Danke für deine Antwort...
...checkt der NetStream.Buffer.Full Befehl nicht, wenn der Film ganz geladen ist? Also wenn der Buffer ganz voll ist? ...so könnte es doch sein, dass der Film schon abspielt, bevor ich mit der Animation beginne...oder irr ich mich jetzt da?
Ich möchte herausfinden, WANN das swf den flv abspielen möchte, und dann stoppen, so das er erst gar nicht zu laufen beginnt...

Cheers
SAKN

Geändert von sakn (23-08-2006 um 13:38 Uhr)
sakn ist offline   Mit Zitat antworten
Alt 23-08-2006, 17:59   #4 (permalink)
lernwillig
 
Benutzerbild von Bugfixer
 
Registriert seit: May 2004
Ort: Berlin
Beiträge: 221
Wieso, mit "deinenfunctionsaufruf;" startest du doch deine animation erst, wenn der buffer voll ist. Und am ende deiner animation gibst du den play befehl für deine flv.

Deine swf startet die flv, wenn der buffer voll ist.

Geändert von Bugfixer (23-08-2006 um 18:01 Uhr)
Bugfixer 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



Alle Zeitangaben in WEZ +1. Es ist jetzt 13:02 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele