2010-07-13 13 views
0

J'utilise FMLE 3.1 pour diffuser de la vidéo en direct encodée au format H.264 avec FMS 3 et Flash player 10 + AS 3 pour se connecter au flux.Diffusion en direct h.264 avec FMLE 3.1 et FMS 3 ne montrant pas de vidéo

Lorsque je me connecte au flux, seul l'audio est lu. Je suis même capable d'obtenir les informations sur les métadonnées de la vidéo, mais je ne reçois que l'audio.

je l'ai déjà essayé quelques trucs comme

  1. "Flash 10 ne sera pas lire les vidéos H.264 de flux en direct après iTunes installer" http://forums.adobe.com/thread/505620. Je l'ai testé dans un environnement complètement différent du mien, mais le même résultat.

  2. J'ai essayé un format à jouer méthode, mais cela est juste pour lire les fichiers

    ns.play("mp4:saple.f4v"); 
    ns.play("mp4:sample"); 
    
  3. lire aussi « Comment regarder et d'enregistrer un h.264 en direct » à « http://www.flashcomguru.co.uk/forum/forum_posts.asp?TID=4649 », mais je n'arrive même pas à jouer le courant à la première place.

C'est le code que je utilise

import flash.media.Video; 

var video:Video = new Video(720, 480); 
var ncVideo = new NetConnection(); 
this.ncVideo.addEventListener(NetStatusEvent.NET_STATUS, onNetStatus); 
this.ncVideo.connect("rtmp://localhost/livecast", "user"); 

var customClient:Object = new Object(); 
customClient.onMetaData = metaDataHandler; 

function onNetStatus(e:NetStatusEvent) { 
    if (e.info.code == "NetConnection.Connect.Success") 
     createNetStream(); 
} 

function createNetStream(){ 
    var ns = new NetStream(this.ncVideo); 
    ns.client = customClient; 
    ns.addEventListener(NetStatusE vent.NET_STATUS, onNsStatus); 

    ns.play("livestream", -1); 
    this.video.attachNetStream(ns) ; 
    this.addChild(video); 
} 

function onNsStatus(e) { 
    trace("onNsStatus " + e.info.code); 
} 

function metaDataHandler(infoObject:Object):void { 
    trace(infoObject.width + " - " + infoObject.height); 
} 

Un autre détail est que lorsque j'enregistrer la vidéo dans un fichier, par exemple « sample.f4v », je mets cette vidéo dans le FMS, mais lorsque je me connecte à ce flux, le message d'erreur "FileStructureInvalid" s'affiche.

Je suis passé de changer l'extension en .flv "http://www.adobe.com/devnet/flashplayer/articles/hd_video_flash_player_04.html" à la solution pour aplatir les fichiers "http://www.flashcomguru.com/forum/forum_posts.asp?TID=4006" mais ce n'est pas le cas parce que j'utilise FMS pour diffuser la vidéo enregistrée.

Répondre

0

SE_0208 répondu: "Pouvez-vous mettre à jour 3.0.5 et essayer votre scénario - il y avait un certain nombre de bogues H.264 ont été corrigés dans les versions dot - sa mise à jour gratuite" et c'était la solution.

Dans les notes de version, il n'y a pas de spécificité liée à mon contexte, mais peut-être était-ce un groupe de choses.

1628134: L'enregistrement du contenu H.264 sur le serveur n'est pas pris en charge dans cette version. Le comportement du serveur n'est pas garanti lors de la diffusion de fichiers corrompus, en particulier ceux contenant du contenu H.264/AAC, et peut entraîner des problèmes de dégradation grave des performances, une utilisation excessive de la mémoire et éventuellement des plantages de processus serveur. Veuillez utiliser l'outil FLVCheck pour garantir l'intégrité du contenu avant son déploiement.

1630621: Les vidéos H264 à très basse fréquence peuvent prendre beaucoup de temps à démarrer si le tampon est trop court.