VideoLeopard
Newbie
- Sep 25, 2012
- 41
- 20
Hello, I found this really nice MP4 Streaming PHP Script online and I just need some help so i can grab videos from remote url's instead of inside the server. For example, right now it only grabs from mydomain.com/video.mp4 but i would like to make it grab the video from differentdomain.com/video.mp4
How do i do this? I don't mind sending you $5 if you have a fix for this. Here's the script:
How do i do this? I don't mind sending you $5 if you have a fix for this. Here's the script:
- <?php
- $file = 'video360p.mp4';
- $fp = @fopen($file, 'rb');
- $size = filesize($file); // File size
- $length = $size; // Content length
- $start = 0; // Start byte
- $end = $size - 1; // End byte
- header('Content-type: video/mp4');
- //header("Accept-Ranges: 0-$length");
- header("Accept-Ranges: bytes");
- if (isset($_SERVER['HTTP_RANGE'])) {
- $c_start = $start;
- $c_end = $end;
- list(, $range) = explode('=', $_SERVER['HTTP_RANGE'], 2);
- if (strpos($range, ',') !== false) {
- header('HTTP/1.1 416 Requested Range Not Satisfiable');
- header("Content-Range: bytes $start-$end/$size");
- exit;
- }
- if ($range == '-') {
- $c_start = $size - substr($range, 1);
- }else{
- $range = explode('-', $range);
- $c_start = $range[0];
- $c_end = (isset($range[1]) && is_numeric($range[1])) ? $range[1] : $size;
- }
- $c_end = ($c_end > $end) ? $end : $c_end;
- if ($c_start > $c_end || $c_start > $size - 1 || $c_end >= $size) {
- header('HTTP/1.1 416 Requested Range Not Satisfiable');
- header("Content-Range: bytes $start-$end/$size");
- exit;
- }
- $start = $c_start;
- $end = $c_end;
- $length = $end - $start + 1;
- fseek($fp, $start);
- header('HTTP/1.1 206 Partial Content');
- }
- header("Content-Range: bytes $start-$end/$size");
- header("Content-Length: ".$length);
- $buffer = 1024 * 8;
- while(!feof($fp) && ($p = ftell($fp)) <= $end) {
- if ($p + $buffer > $end) {
- $buffer = $end - $p + 1;
- }
- set_time_limit(0);
- echo fread($fp, $buffer);
- flush();
- }
- fclose($fp);
- exit();
- ?>
Last edited: