décortication du maniement complexe de la video en live avec l'ami flash MX 2004 (obligé ce coup ci :) ). déja vu.
y'en a déja 5 dont 2 tro la classe mais disons que... bon ben disons rien.
si vous etes un(e) flemmard(e) ou un(e) curieu(xse), ça peut valoir le détour.
Source / Exemple :
// le streaming VIDEO sans peine.
// pour les non-comprenants
//
// Créer un objet NetConnection : c'est obligé ; sans ça point de FLV.
var Ma_Connection:NetConnection = new NetConnection();
// Créer une connexion en flux continu :
// pour l'instant elle est vide, juste on l'ouvre
Ma_Connection.connect(null);
//Créer un objet NetStream qui permettra de choisir
//notre media via la connection ouverte
Mon_Flux = new NetStream(Ma_Connection);
/////////////////////////////
// preloader ///
/////////////////////////////
// nota : il existe un handler onStatus() :
// onStatus() ça permet de controler ce qui se passe pendant que ça charge
// ou s'il y a une erreur mais bon... passons
this.onEnterFrame = function(){
//Mon_Flux.bytesTotal; = le poids total du flv en octets
//Mon_Flux.bytesLoaded; = le nombre d'octets chargés
tot = Mon_Flux.bytesTotal; //récupère le poids total du FLV
lod = Mon_Flux.bytesLoaded; //récupère le poids déjà chargé
pourcent = lod/tot; //rapport : déja chargé / restant à charger
fait = int(pourcent*100);//pourcentage de chargement
// tant que tout n'est pas chragé
if (fait <100)
{
//la barre de progression... heu... progresse
progbar.bar._width = fait*2.9;// la taille finale de la progressbar est 290px
progbar._alpha = 100;
// sortie pour voir la progression en chiffres
// trace(pourcent +" "+progbar.bar._width);
}else{
//si c'est fini
if (fait == 100)
{
//estompe la progbar
progbar._alpha =10;
}
}
};
// associer la vidéo qui sort de Mon_Flux à l'objet Video sur la scène :
ma_video.attachVideo(Mon_Flux);
// définir la durée du tampon :
// un tampon ça sert à ne pas interrompre le flim quand il est diffusé.
// C'est comme quand on grave un CD.
// dilemne : on doit choisir entre un gros tampon bien confortable
// mais inchargeable et un petit tampon tout con qui s'essouffle très vite.
// faut essayer... la valeur est en dizièmes de secondes.
Mon_Flux.setBufferTime(5);
// lire quel fichier ?
Mon_Flux.play("http://nicoptere.land.free.fr/tutos/02/2.flv");
/////////////////////////////
function lecture() {
// afficher la position de la tête de lecture en secondes
tmp = Mon_Flux.time; // récupère le temps actuel via netstream
sec = Math.round(tmp);//arrondit pour faire des secondes sans virgule
temps.text = sec+" secs";// affichage de la seconde en cours de lecture
bl.text = Mon_Flux.bufferLength;// données effectivement chargées dans le tampon
bt.text = Mon_Flux.bufferTime;// taille du tampon en diièmes de secondes
}
// rafraichit toutes les secondes
setInterval( lecture, 1000 );
/////////////////////////////
// boutons 'aller à' ///
/////////////////////////////
/// surement optimisable...
function aller(qui){
// indique la seconde dans le champ de texte
// en fonction des 2 caractères finaux du nom du clip
qui.onRollOver =function(){
_root.texte.text = qui._name.substr(3,2);
}
qui.onPress = function(){
// atteindre la seconde voulue
Mon_Flux.seek(qui._name.substr(3,2));
}
}
aller(_root.seg0);
aller(_root.seg19);
aller(_root.seg30);
aller(_root.seg52);
/////////////////////////////
// bouton play_pause ///
/////////////////////////////
/// surement optimisable...
function arret(qui){
qui.onPress = function()
{
if (f==1){
qui.gotoAndPlay(1);
Mon_Flux.pause(false);
}else{
qui.gotoAndPlay(2);
Mon_Flux.pause();
}
}
}
arret(play_pause);
// cette exemple est principalement extrait de l'aide (=F1 :) ) de Flash
// mots-clés : NetStream / NetConnectionn / FLV
// le pti film est à moi, tu peux le montrer à tes amis
// mais pas le vendre contre du bon pognon :)
// voila bonnes expériences à toutes et à tous.
// nicoptere@free.fr
Conclusion :
aha ! ce coup ci j'ai mis le code !
il manque une bricole dans le clip play_pause:
dans la frame 1 :
f=1;
stop();
dans la frame 2 :
f=2;
stop();
bon rien d'autre à dire je crois
a bientot
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.