C'est à dire que le film s'arrête brutalement
As-tu essayé après avoir supprimé les fichiers temporaires du navigateur ?
Je viens de faire un nouveau test avec FLV Player de Neolao
Nous savons maintenant que dans le fichier de configuration, ce lecteur FLV ne supporte pas les liens (relatifs ou absolus) contenant des paramètres. Mais il les supporte parfaitement si nous les plaçons dans le paramètre FlashVars de la balise <object>.
Il suffit d'ajouter la variable flv contenant le lien absolu (ainsi que le titre associé à la vidéo).
<param name="FlashVars" value="config=config.txt&flv=http://www.domaine.com/fichier_quelconque.flv&titre=Titre" />
Les variables sont séparées par l'esperluette (& et non & pour rester conforme au W3C).
Le fichier de configuration config.txt (désormais commun à toutes les vidéos) contient uniquement les variables permettant de personnaliser le lecteur.
config.txt
1 2 3 4 5 6
| width=640
height=480
margin=1
showstop=1
showvolume=1
autoload=0 |
La balise object
1 2 3 4 5 6 7
| <object type="application/x-shockwave-flash" data="gestion_video/decodeur.swf" width="640" height="480">
<param name="movie" value="gestion_video/decodeur.swf" />
<param name="allowFullScreen" value="true" />
<param name="wmode" value="transparent" />
<param name="menu" value="false" />
<param name="FlashVars" value="config=gestion_video/config.txt&flv=http://www.domaine.com/gestion_video/get.php?url=peche&title=Titre" />
</object> |
Concernant le script get.php. Cette version n'a besoin que du nom du fichier de la vidéo sans l'extension.
Pout accéder à peche.flv, il n'est plus nécessaire de faire
get.php?url=peche.flv
mais
get.php?url=peche
get.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
$flv=isset($_GET['url'])?trim(basename((string)$_GET['url'])):'';
if($flv!==''){
if(strpos($flv,'.')===false){
$flv=dirname(__FILE__).DIRECTORY_SEPARATOR.'..'.DIRECTORY_SEPARATOR.'film'.DIRECTORY_SEPARATOR.rawurlencode($flv).'.flv';
if(file_exists($flv)){
// header('Content-Type: video/x-flv');
if(@readfile($flv)===false)
$msg='Erreur de lecture';
else
exit();
}else
$msg='Fichier non trouvé';
}else
$msg='Paramètre invalide';
}else
$msg='Paramètre manquant';
echo 'Lecture impossible : '.$msg.'<br>Contactez l\'administrateur<br>'; |
Cette version ne nécessite pas la réécriture d'URL et est donc compatible avec Free
Si tu utilises un lecteur different, et que ça ne fonctionne pas, je te recommande le très populaire :
Il faut acquérir une licence s'il est utilisé dans un site commercial.
Partager