Zurück   Flashforum > Flash > ActionScript > ActionScript 2

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 17-09-2009, 09:17   #1 (permalink)
Neuer User
 
Registriert seit: Mar 2007
Beiträge: 10
Probleme mit NetStream mit mehreren Tabs

Hallo,

ich habe ein Problem mit einem gestreamten Video.

Meine Flashdatei funktioniert ungefähr so:
Ich lade mit Hilfe der NetStream-Klasse ein .flv-Video.
Das Video wird, wenn der Puffer voll ist zunächst mit pause(true) angehalten und dann per Button (mit pause(false)) gestartet.
Wurde das Video vollständig abgespielt gehe ich mit seek(0) an den Anfang und kann es, wieder per Button, erneut starten.

Funktioniert soweit auch alles. Probleme scheint es aber zu geben, wenn ich, währen das Video läuft zwischen verschiedenen Browsertabs wechsele und dann einen Reload mache, oder versuche das Video nach dem abspielen erneut zu starten. In diesen Fällen passiert garnichts, d.h. die pause()-Methode zeigt keine Wirkung.

Handelt es sich hier um ein bekanntes Problem, bzw. gibt es Möglichkeiten das zu verhindern?
Wäre für Infos sehr dankbar.

Grüße und vielen Dank im vorraus,

Daniel
dstaeber ist offline   Mit Zitat antworten
Alt 17-09-2009, 09:46   #2 (permalink)
Neuer User
 
Benutzerbild von andrelehnert
 
Registriert seit: Oct 2007
Ort: Kölle
Beiträge: 1.229
heisst das, das video spielt oder steht nach der aktualisierung?

MfG ANdré
andrelehnert ist offline   Mit Zitat antworten
Alt 17-09-2009, 10:02   #3 (permalink)
Neuer User
 
Registriert seit: Mar 2007
Beiträge: 10
Das Video steht und der Startbutton wird angezeigt, was aber eigentlich auch so sein soll. Nur wenn ich den Button jetzt betätige passiert nichts. So als wären keine Daten mehr da, die die NetStream.start()-Methode ansprechen könnte.

p.s.: habe den Fehler jetzt auch reproduzieren können, ohne das ich zwischen Tabs gewechselt habe, also nur mit einem Reload.
Ziemlich unvorhersehberes Verhalten.

Geändert von dstaeber (17-09-2009 um 10:04 Uhr)
dstaeber ist offline   Mit Zitat antworten
Alt 17-09-2009, 16:40   #4 (permalink)
Neuer User
 
Benutzerbild von andrelehnert
 
Registriert seit: Oct 2007
Ort: Kölle
Beiträge: 1.229
schick mal die fla... weiß nichtgenau genug, wie du es eingebunden hast....
LG ANdré
andrelehnert ist offline   Mit Zitat antworten
Alt 17-09-2009, 16:54   #5 (permalink)
Fohlen-Power
 
Benutzerbild von enky
 
Registriert seit: Mar 2007
Beiträge: 1.223
kANN es vll einfach sein, dass du durch s tabben bzw reloaden einfach den fokus der swf verlierst. ich weiss, will dich nicht für dumm halten, aber shcon mal getestet und deswegend er erste klick, der egtl auf den button geht nur das wiederholen des fokus ist ?
__________________
Vielen Dank für euer Verständnis für einen Flash Noob !!!
enky ist offline   Mit Zitat antworten
Alt 18-09-2009, 11:01   #6 (permalink)
Neuer User
 
Registriert seit: Mar 2007
Beiträge: 10
Zitat:
Zitat von andrelehnert Beitrag anzeigen
schick mal die fla... weiß nichtgenau genug, wie du es eingebunden hast....
LG ANdré
Hi, sorry hat etwas länger gedauert
Unten ist der Code zu sehen den ich verwende. Ich habe lediglich die Zeilen zur Steuerung des Sounbuttons weggelassen, der Übersichtlichkeit halber.

Code:
debug._visible = false;

start_movie._visible = false;
bg_start._visible = false;
change_sound._visible = false;
change_sound.speaker_on._visible = false;
var sound_state:Boolean = true;

//Stream erzeugen
var connection_nc:NetConnection = new NetConnection();
connection_nc.connect(null);
var stream_ns:NetStream = new NetStream(connection_nc);
main_movie.attachVideo(stream_ns);
stream_ns.setBufferTime(30);

stream_ns.play("z302.flv");

//Audiosteuerung einrichten
this.createEmptyMovieClip("main_movie_audio", this.getNextHighestDepth());
main_movie_audio.attachAudio(stream_ns);
var audio_sound:Sound = new Sound(main_movie_audio);

//Preloader für Buffer
stream_ns.onStatus = function(info:Object)
{
	debug.text = info.code;
	
    if (info.code == "NetStream.Buffer.Full")
	{
		preloader._visible = false;
		stream_ns.pause(true);
		start_movie._visible = true;
		bg_start._visible = true;
    }
	if (info.code == "NetStream.Play.Stop")
	{
		stream_ns.seek(0);
		bg_start._visible = true;
		start_movie._visible = true;
		change_sound._visible = false;
	}
}

//Film starten
start_movie.onRelease = function()
{	
	stream_ns.pause(false);
	start_movie._visible = false;
	bg_start._visible = false;
	change_sound._visible = true;
}
@enky: Das wird es wohl nicht sein, da beim Betätigen des Buttons die anderen Aktionen die ausgeführt werden, also das aus-/und einblenden diverser Movieclips funktioniert. Nur der Film läuft nicht.
dstaeber ist offline   Mit Zitat antworten
Alt 18-09-2009, 19:46   #7 (permalink)
Neuer User
 
Benutzerbild von andrelehnert
 
Registriert seit: Oct 2007
Ort: Kölle
Beiträge: 1.229
flash-Hilfe:

my_ns.pause(); // unterbricht die Wiedergabe bei der ersten Ausgabe
my_ns.pause(); // setzt die Wiedergabe fort
my_ns.pause(false); // keine Wirkung, Wiedergabe wird fortgesetzt
my_ns.pause(); // unterbricht die Wiedergabe


Das bedeutet meiner meinung nach, Du solltest versuchen,das (false) mal wegzunehmen und nur jeweils mit _ns.pause() arbeiten - wenn der film auf pausiert startet er, wenn er spielt, pausiert er durch diesen Befehl...

Hoffe, das hilft

André
andrelehnert ist offline   Mit Zitat antworten
Alt 19-09-2009, 07:24   #8 (permalink)
Neuer User
 
Benutzerbild von andrelehnert
 
Registriert seit: Oct 2007
Ort: Kölle
Beiträge: 1.229
Und?
andrelehnert ist offline   Mit Zitat antworten
Alt 23-09-2009, 08:44   #9 (permalink)
Neuer User
 
Registriert seit: Mar 2007
Beiträge: 10
Zitat:
Zitat von andrelehnert Beitrag anzeigen
flash-Hilfe:

my_ns.pause(); // unterbricht die Wiedergabe bei der ersten Ausgabe
my_ns.pause(); // setzt die Wiedergabe fort
my_ns.pause(false); // keine Wirkung, Wiedergabe wird fortgesetzt
my_ns.pause(); // unterbricht die Wiedergabe


Das bedeutet meiner meinung nach, Du solltest versuchen,das (false) mal wegzunehmen und nur jeweils mit _ns.pause() arbeiten - wenn der film auf pausiert startet er, wenn er spielt, pausiert er durch diesen Befehl...

Hoffe, das hilft

André
Hi und sorry für meine sehr späte Antwort.
Danke für den Tip, aber leider hat das auch keinen Unterschied gemacht.

Ich habe mir nochmal mit einem Firefox-Add On angesehen was da passiert und festgestellt, das in den Fällen wo nach dem Reload nichts mehr läuft, die .flv-Datei garnicht geladen wird - es wird gar kein Request abgeschickt, keine Ahnung warum.

Hat also offenbar doch nichts mit der pause()-Methode zutun.

Grüße
dstaeber ist offline   Mit Zitat antworten
Alt 23-09-2009, 09:50   #10 (permalink)
Neuer User
 
Benutzerbild von andrelehnert
 
Registriert seit: Oct 2007
Ort: Kölle
Beiträge: 1.229
sO - DET HAT MIR JETZTE JANZ NERVÖS JEMACHT!

Habs nachgebaut und es läuft folgendermassen:

PHP-Code:
stop()
//debug._visible = false;

//start_movie._visible = false;
bg_start._visible false;
//change_sound._visible = false;
//change_sound.speaker_on._visible = false;
var sound_state:Boolean true;

//Stream erzeugen
var connection_nc:NetConnection = new NetConnection();
connection_nc.connect(null);
var 
stream_ns:NetStream = new NetStream(connection_nc);
main_movie.attachVideo(stream_ns);
stream_ns.setBufferTime(30);
stream_ns.onStatus = function(info:Object)
{
    
debug.text info.code;
    
    if (
info.code == "NetStream.Buffer.Full")
    {
        
preloader._visible false;
        
stream_ns.pause();
        
start_movie._visible true;
        
bg_start._visible true;
    }
    if (
info.code == "NetStream.Play.Stop")
    {
        
stream_ns.seek(0);
        
bg_start._visible true;
        
start_movie._visible true;
        
change_sound._visible false;
    }
}
stream_ns.play("deinVideo AUF DEM SERVER!!!.flv");



//Audiosteuerung einrichten
//this.createEmptyMovieClip("main_movie_audio", this.getNextHighestDepth());
//main_movie_audio.attachAudio(stream_ns);
//var audio_sound:Sound = new Sound(main_movie_audio);

//Preloader für Buffer


//Film starten
start_movie.onRelease = function()
{    
    
stream_ns.pause();
    
start_movie._visible false;
    
//bg_start._visible = false;
    //change_sound._visible = true;

Ganz Wichtig ist: Auf dem server testen!
sowohl die swf oder html mit der eingebetten swf als auch das video auf der gleichen domain.

hier kannst du es die anschauen - http://www.miegl.com/fremdtest.html sorry für die hässlichen testbuttons.

Hoffe, es geht jetzt endlich. Melde dich wenns klappt und wenns nicht klappt.

LG André

Geändert von andrelehnert (23-09-2009 um 09:51 Uhr)
andrelehnert ist offline   Mit Zitat antworten
Alt 23-09-2009, 11:13   #11 (permalink)
Neuer User
 
Registriert seit: Mar 2007
Beiträge: 10
Zitat:
Zitat von andrelehnert Beitrag anzeigen
sO - DET HAT MIR JETZTE JANZ NERVÖS JEMACHT!

Habs nachgebaut und es läuft folgendermassen:

PHP-Code:
stop()
//debug._visible = false;

//start_movie._visible = false;
bg_start._visible false;
//change_sound._visible = false;
//change_sound.speaker_on._visible = false;
var sound_state:Boolean true;

//Stream erzeugen
var connection_nc:NetConnection = new NetConnection();
connection_nc.connect(null);
var 
stream_ns:NetStream = new NetStream(connection_nc);
main_movie.attachVideo(stream_ns);
stream_ns.setBufferTime(30);
stream_ns.onStatus = function(info:Object)
{
    
debug.text info.code;
    
    if (
info.code == "NetStream.Buffer.Full")
    {
        
preloader._visible false;
        
stream_ns.pause();
        
start_movie._visible true;
        
bg_start._visible true;
    }
    if (
info.code == "NetStream.Play.Stop")
    {
        
stream_ns.seek(0);
        
bg_start._visible true;
        
start_movie._visible true;
        
change_sound._visible false;
    }
}
stream_ns.play("deinVideo AUF DEM SERVER!!!.flv");



//Audiosteuerung einrichten
//this.createEmptyMovieClip("main_movie_audio", this.getNextHighestDepth());
//main_movie_audio.attachAudio(stream_ns);
//var audio_sound:Sound = new Sound(main_movie_audio);

//Preloader für Buffer


//Film starten
start_movie.onRelease = function()
{    
    
stream_ns.pause();
    
start_movie._visible false;
    
//bg_start._visible = false;
    //change_sound._visible = true;

Ganz Wichtig ist: Auf dem server testen!
sowohl die swf oder html mit der eingebetten swf als auch das video auf der gleichen domain.

hier kannst du es die anschauen - fremdtest sorry für die hässlichen testbuttons.

Hoffe, es geht jetzt endlich. Melde dich wenns klappt und wenns nicht klappt.

LG André
Hi,

vielen Dank für deine Mühe!
Deine Datei funktioniert, aber ich hab die Probleme immernoch. Ich werde es mal auf einem anderen Server testen, vielleicht liegt ja dort irgendwo das Problem.

Ich melde mich auf jeden Fall wenn ich Neuigkeiten habe!

Grüße
dstaeber 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
NetStream CuePoint setzen, abrufen, streamen: Fragen / Probleme stiffmeister ActionScript 2 2 29-05-2009 15:43
Probleme mit netStream palmdale ActionScript 2 2 06-05-2009 21:59
netstream probleme deak Flash 8 2 09-02-2007 19:42
Probleme mit Progressive Download / NetStream.Play() rsaccon 3D 0 26-05-2004 04:16
Probleme mit mehreren MC Oberchef ActionScript 1 2 20-01-2003 09:34


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

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


Copyright ©1999 – 2012 Marc Thiele