Name is required.
Email address is required.
Invalid email address
Answer is required.
Exceeding max length of 5KB

Embed mp4 with php readfle script


I'm trying to embed an mp4 video get from yours exemples (bunny.mp4) with php readfile script to protect my videos...
I try different way to do this (headers, embed, cache) but i always get this error : "Error loading player: No playable sources found".

my html here :
my php readfile : (work find on chrome & firefox)

My html embed :
bc.. <html>
<title>jwp Video</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="jwplayer/jwplayer.js" ></script>
<script type="text/javascript">jwplayer.key="rNg+aGOPF80o3PjSgi+qZCXHvoOnffhS8CDBOg==";</script>
<body style="margin: 0; padding: 0;">
<div id="container">Loading the player...</div>
<script type="text/javascript">
width: 960,
height: 400,
file: 'ingwe/sd/temp/jwp/test.php',
provider: 'http'

My php file :
bc.. <?php

$path = "";
$extension = "mp4";
$fileName = "test";

$dirFile = $path . $fileName . "." . $extension;

switch($extension) {
case "flv": $ctype="application/x-shockwave-flash"; break;
case "mp4": $ctype="video/mp4"; break;
case "wmv": $ctype="video/mpeg"; break;
case "mov": $ctype="video/quicktime"; break;

header("Content-type: " . $ctype);
//header("Content-Length: " . filesize($dirFile));
header("Cache-Control: no-cache, no-store, max-age=0, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Expires: Mon, 20 Dec 1980 00:00:00 GMT"); // Date dans le pass
header("Pragma: no-cache");
header("Content-Transfer-Encoding: binary");
header("Content-Description: File Transfer");
// header("Accept-Ranges: bytes");

$fh = fopen($dirFile, "rb") or die("Could not open file: " . $dirFile . "n");
while (!

print(fread($fh, 16384));


Do you have any solution ?


2 Community Answers

JW Player

0 rated :

Problem solved !
I just add the type attribute and set it to mp4 in my js embed setup...

Ethan Feldman

JW Player Support Agent  
0 rated :

Glad you got it.

This question has received the maximum number of answers.