lemuse Posté 12 Mars 2010 Posté 12 Mars 2010 Bonsoir, J'ai une vidéo au format .flv diffusée par le player "Unobtrusive Flash Objects (UFO)" bobbyvandersluis.com , j'aurais aimé ajouter une seconde vidéo sur la page, mais un copiez coller du code ne suffit pas J'ai lu qu'il serait possible avec une playlist de faire ca, comment s'y prendre ? La page avec le script: </script> </head> <body> <div id="header"></div><? include("menu.php"); ?> <div id="textegauche"> <h1> Le MPF </h1> <h2>Vidio de prisentation</h2><script type="text/javascript" src="ufo.js"></script><p id="player1"><a href="http://www.macromedia.com/go/getflashplayer">Installez Flash Player</a> pour voir cette vidio.</p><script type="text/javascript"> var FO = { movie:"flvplayer.swf",width:"352",height:"240",majorversion:"7",build:"0",bgcolor:"#FFFFFF",allowfullscreen:"true", flashvars:"file=MPF_Pastilles.FLVℑ=preview.jpg" }; UFO.create( FO, "player1");</script> Le ufo.js : /* Unobtrusive Flash Objects (UFO) v3.21 <http://www.bobbyvandersluis.com/ufo/> Copyright 2005, 2006 Bobby van der Sluis This software is licensed under the CC-GNU LGPL <http://creativecommons.org/licenses/LGPL/2.1/>*/var UFO = { req: ["movie", "width", "height", "majorversion", "build"], opt: ["play", "loop", "menu", "quality", "scale", "salign", "wmode", "bgcolor", "base", "flashvars", "devicefont", "allowscriptaccess", "seamlesstabbing", "allowfullscreen"], optAtt: ["id", "name", "align"], optExc: ["swliveconnect"], ximovie: "ufo.swf", xiwidth: "215", xiheight: "138", ua: navigator.userAgent.toLowerCase(), pluginType: "", fv: [0,0], foList: [], create: function(FO, id) { if (!UFO.uaHas("w3cdom") || UFO.uaHas("ieMac")) return; UFO.getFlashVersion(); UFO.foList[id] = UFO.updateFO(FO); UFO.createCSS("#" + id, "visibility:hidden;"); UFO.domLoad(id); }, updateFO: function(FO) { if (typeof FO.xi != "undefined" && FO.xi == "true") { if (typeof FO.ximovie == "undefined") FO.ximovie = UFO.ximovie; if (typeof FO.xiwidth == "undefined") FO.xiwidth = UFO.xiwidth; if (typeof FO.xiheight == "undefined") FO.xiheight = UFO.xiheight; } FO.mainCalled = false; return FO; }, domLoad: function(id) { var _t = setInterval(function() { if ((document.getElementsByTagName("body")[0] != null || document.body != null) && document.getElementById(id) != null) { UFO.main(id); clearInterval(_t); } }, 250); if (typeof document.addEventListener != "undefined") { document.addEventListener("DOMContentLoaded", function() { UFO.main(id); clearInterval(_t); } , null); // Gecko, Opera 9+ } }, main: function(id) { var _fo = UFO.foList[id]; if (_fo.mainCalled) return; UFO.foList[id].mainCalled = true; document.getElementById(id).style.visibility = "hidden"; if (UFO.hasRequired(id)) { if (UFO.hasFlashVersion(parseInt(_fo.majorversion, 10), parseInt(_fo.build, 10))) { if (typeof _fo.setcontainercss != "undefined" && _fo.setcontainercss == "true") UFO.setContainerCSS(id); UFO.writeSWF(id); } else if (_fo.xi == "true" && UFO.hasFlashVersion(6, 65)) { UFO.createDialog(id); } } document.getElementById(id).style.visibility = "visible"; }, createCSS: function(selector, declaration) { var _h = document.getElementsByTagName("head")[0]; var _s = UFO.createElement("style"); if (!UFO.uaHas("ieWin")) _s.appendChild(document.createTextNode(selector + " {" + declaration + "}")); // bugs in IE/Win _s.setAttribute("type", "text/css"); _s.setAttribute("media", "screen"); _h.appendChild(_s); if (UFO.uaHas("ieWin") && document.styleSheets && document.styleSheets.length > 0) { var _ls = document.styleSheets[document.styleSheets.length - 1]; if (typeof _ls.addRule == "object") _ls.addRule(selector, declaration); } }, setContainerCSS: function(id) { var _fo = UFO.foList[id]; var _w = /%/.test(_fo.width) ? "" : "px"; var _h = /%/.test(_fo.height) ? "" : "px"; UFO.createCSS("#" + id, "width:" + _fo.width + _w +"; height:" + _fo.height + _h +";"); if (_fo.width == "100%") { UFO.createCSS("body", "margin-left:0; margin-right:0; padding-left:0; padding-right:0;"); } if (_fo.height == "100%") { UFO.createCSS("html", "height:100%; overflow:hidden;"); UFO.createCSS("body", "margin-top:0; margin-bottom:0; padding-top:0; padding-bottom:0; height:100%;"); } }, createElement: function(el) { return (UFO.uaHas("xml") && typeof document.createElementNS != "undefined") ? document.createElementNS("http://www.w3.org/1999/xhtml", el) : document.createElement(el); }, createObjParam: function(el, aName, aValue) { var _p = UFO.createElement("param"); _p.setAttribute("name", aName); _p.setAttribute("value", aValue); el.appendChild(_p); }, uaHas: function(ft) { var _u = UFO.ua; switch(ft) { case "w3cdom": return (typeof document.getElementById != "undefined" && typeof document.getElementsByTagName != "undefined" && (typeof document.createElement != "undefined" || typeof document.createElementNS != "undefined")); case "xml": var _m = document.getElementsByTagName("meta"); var _l = _m.length; for (var i = 0; i < _l; i++) { if (/content-type/i.test(_m[i].getAttribute("http-equiv")) && /xml/i.test(_m[i].getAttribute("content"))) return true; } return false; case "ieMac": return /msie/.test(_u) && !/opera/.test(_u) && /mac/.test(_u); case "ieWin": return /msie/.test(_u) && !/opera/.test(_u) && /win/.test(_u); case "gecko": return /gecko/.test(_u) && !/applewebkit/.test(_u); case "opera": return /opera/.test(_u); case "safari": return /applewebkit/.test(_u); default: return false; } }, getFlashVersion: function() { if (UFO.fv[0] != 0) return; if (navigator.plugins && typeof navigator.plugins["Shockwave Flash"] == "object") { UFO.pluginType = "npapi"; var _d = navigator.plugins["Shockwave Flash"].description; if (typeof _d != "undefined") { _d = _d.replace(/^.*\s+(\S+\s+\S+$)/, "$1"); var _m = parseInt(_d.replace(/^(.*)\..*$/, "$1"), 10); var _r = /r/.test(_d) ? parseInt(_d.replace(/^.*r(.*)$/, "$1"), 10) : 0; UFO.fv = [_m, _r]; } } else if (window.ActiveXObject) { UFO.pluginType = "ax"; try { // avoid fp 6 crashes var _a = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7"); } catch(e) { try { var _a = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"); UFO.fv = [6, 0]; _a.AllowScriptAccess = "always"; // throws if fp < 6.47 } catch(e) { if (UFO.fv[0] == 6) return; } try { var _a = new ActiveXObject("ShockwaveFlash.ShockwaveFlash"); } catch(e) {} } if (typeof _a == "object") { var _d = _a.GetVariable("$version"); // bugs in fp 6.21/6.23 if (typeof _d != "undefined") { _d = _d.replace(/^\S+\s+(.*)$/, "$1").split(","); UFO.fv = [parseInt(_d[0], 10), parseInt(_d[2], 10)]; } } } }, hasRequired: function(id) { var _l = UFO.req.length; for (var i = 0; i < _l; i++) { if (typeof UFO.foList[id][UFO.req[i]] == "undefined") return false; } return true; }, hasFlashVersion: function(major, release) { return (UFO.fv[0] > major || (UFO.fv[0] == major && UFO.fv[1] >= release)) ? true : false; }, writeSWF: function(id) { var _fo = UFO.foList[id]; var _e = document.getElementById(id); if (UFO.pluginType == "npapi") { if (UFO.uaHas("gecko") || UFO.uaHas("xml")) { while(_e.hasChildNodes()) { _e.removeChild(_e.firstChild); } var _obj = UFO.createElement("object"); _obj.setAttribute("type", "application/x-shockwave-flash"); _obj.setAttribute("data", _fo.movie); _obj.setAttribute("width", _fo.width); _obj.setAttribute("height", _fo.height); var _l = UFO.optAtt.length; for (var i = 0; i < _l; i++) { if (typeof _fo[UFO.optAtt[i]] != "undefined") _obj.setAttribute(UFO.optAtt[i], _fo[UFO.optAtt[i]]); } var _o = UFO.opt.concat(UFO.optExc); var _l = _o.length; for (var i = 0; i < _l; i++) { if (typeof _fo[_o[i]] != "undefined") UFO.createObjParam(_obj, _o[i], _fo[_o[i]]); } _e.appendChild(_obj); } else { var _emb = ""; var _o = UFO.opt.concat(UFO.optAtt).concat(UFO.optExc); var _l = _o.length; for (var i = 0; i < _l; i++) { if (typeof _fo[_o[i]] != "undefined") _emb += ' ' + _o[i] + '="' + _fo[_o[i]] + '"'; } _e.innerHTML = '<embed type="application/x-shockwave-flash" src="' + _fo.movie + '" width="' + _fo.width + '" height="' + _fo.height + '" pluginspage="http://www.macromedia.com/go/getflashplayer"' + _emb + '></embed>'; } } else if (UFO.pluginType == "ax") { var _objAtt = ""; var _l = UFO.optAtt.length; for (var i = 0; i < _l; i++) { if (typeof _fo[UFO.optAtt[i]] != "undefined") _objAtt += ' ' + UFO.optAtt[i] + '="' + _fo[UFO.optAtt[i]] + '"'; } var _objPar = ""; var _l = UFO.opt.length; for (var i = 0; i < _l; i++) { if (typeof _fo[UFO.opt[i]] != "undefined") _objPar += '<param name="' + UFO.opt[i] + '" value="' + _fo[UFO.opt[i]] + '" />'; } var _p = window.location.protocol == "https:" ? "https:" : "http:"; _e.innerHTML = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"' + _objAtt + ' width="' + _fo.width + '" height="' + _fo.height + '" codebase="' + _p + '//download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=' + _fo.majorversion + ',0,' + _fo.build + ',0"><param name="movie" value="' + _fo.movie + '" />' + _objPar + '</object>'; } }, createDialog: function(id) { var _fo = UFO.foList[id]; UFO.createCSS("html", "height:100%; overflow:hidden;"); UFO.createCSS("body", "height:100%; overflow:hidden;"); UFO.createCSS("#xi-con", "position:absolute; left:0; top:0; z-index:1000; width:100%; height:100%; background-color:#fff; filter:alpha(opacity:75); opacity:0.75;"); UFO.createCSS("#xi-dia", "position:absolute; left:50%; top:50%; margin-left: -" + Math.round(parseInt(_fo.xiwidth, 10) / 2) + "px; margin-top: -" + Math.round(parseInt(_fo.xiheight, 10) / 2) + "px; width:" + _fo.xiwidth + "px; height:" + _fo.xiheight + "px;"); var _b = document.getElementsByTagName("body")[0]; var _c = UFO.createElement("div"); _c.setAttribute("id", "xi-con"); var _d = UFO.createElement("div"); _d.setAttribute("id", "xi-dia"); _c.appendChild(_d); _b.appendChild(_c); var _mmu = window.location; if (UFO.uaHas("xml") && UFO.uaHas("safari")) { var _mmd = document.getElementsByTagName("title")[0].firstChild.nodeValue = document.getElementsByTagName("title")[0].firstChild.nodeValue.slice(0, 47) + " - Flash Player Installation"; } else { var _mmd = document.title = document.title.slice(0, 47) + " - Flash Player Installation"; } var _mmp = UFO.pluginType == "ax" ? "ActiveX" : "PlugIn"; var _uc = typeof _fo.xiurlcancel != "undefined" ? "&xiUrlCancel=" + _fo.xiurlcancel : ""; var _uf = typeof _fo.xiurlfailed != "undefined" ? "&xiUrlFailed=" + _fo.xiurlfailed : ""; UFO.foList["xi-dia"] = { movie:_fo.ximovie, width:_fo.xiwidth, height:_fo.xiheight, majorversion:"6", build:"65", flashvars:"MMredirectURL=" + _mmu + "&MMplayerType=" + _mmp + "&MMdoctitle=" + _mmd + _uc + _uf }; UFO.writeSWF("xi-dia"); }, expressInstallCallback: function() { var _b = document.getElementsByTagName("body")[0]; var _c = document.getElementById("xi-con"); _b.removeChild(_c); UFO.createCSS("body", "height:auto; overflow:auto;"); UFO.createCSS("html", "height:auto; overflow:auto;"); }, cleanupIELeaks: function() { var _o = document.getElementsByTagName("object"); var _l = _o.length for (var i = 0; i < _l; i++) { _o[i].style.display = "none"; for (var x in _o[i]) { if (typeof _o[i][x] == "function") { _o[i][x] = null; } } } }};if (typeof window.attachEvent != "undefined" && UFO.uaHas("ieWin")) { window.attachEvent("onunload", UFO.cleanupIELeaks);} Déja merci.
SStephane Posté 13 Mars 2010 Posté 13 Mars 2010 J'ai pas vraiment l'impression qu'il y ait un rapport entre UFO et la lecture de flv; si ton player FLV ne gère pas les playlists, cherches en un autre.
Luan Posté 13 Mars 2010 Posté 13 Mars 2010 (modifié) Salut, Ce player n'a pas l'air de gérer les playlists et chose embêtante, il est obsolète. UFO is officially deprecated. SWFObject 2.0 is UFO's successor and can be downloaded from Google Code. Tu peux télécharger son successeur ici. De plus, celui-ci a l'avantage d'avoir une documentation en français. Ce player, c'est si tu veux absolument continuer avec un player ressemblant. Je tiens à dire que je n'ai pas regardé en détail et que donc, je ne sais pas s'il gère les playlists. J'aurais tendance à te conseiller ce tutoriel, présent sur le site du zéro qui te présente un player et t'explique pas à pas comment t'y prendre. Je ne réponds pas vraiment à ta question mais comme l'a dit Sstephane, il vaut mieux passer à un player plus évolué. Luan. Modifié 13 Mars 2010 par Luan
jcaron Posté 13 Mars 2010 Posté 13 Mars 2010 Utilise plutôt JW Player: http://www.longtailvideo.com/players/jw-flv-player/ il te permettra d'utiliser des playlists (et beaucoup, beaucoup d'autres choses). Jacques.
lemuse Posté 13 Mars 2010 Auteur Posté 13 Mars 2010 J'ai étudié mais pas encore en détail les 2 solutions, le tuto que tu me conseille Luan, est bien fait et m'a permis de clarifier certaines choses, il conseille un lecteur gérant la playlist, je pense pouvoir l'installer, il y aurait donc un code à ajouter à ma page (après configuration) et le player, et c'est tout je crois... JW Player est tout simplement génial, mais un peu plus délicat à mettre en oeuvre, je pense me faire la main sur le premier, l'appétit vient en mangeant Merci à vous !
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant