Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // First ranged request from Safari on iPhone: Range: bytes=0-1. It asks for two bytes
- $response = new StreamedResponse(function() use($media, $rangeStart, $rangeEnd, $ranges) {
- $fd = fopen($media->getFilename(), 'rb');
- fseek($fd, $rangeStart);
- $bytesRead = self::READ_BLOCK_SIZE;
- while(!feof($fd) && ($p = ftell($fd) < $rangeEnd)) {
- if ($p + $bytesRead >= $rangeEnd) {
- $bytesRead = $rangeEnd - $p + 2; // Fix here: changed from 1 to 2. $p = 1 so we read 1 bytes instead of 2
- }
- set_time_limit(0);
- echo fread($fd, $bytesRead);
- flush();
- }
- fclose($fd);
- }, $statusCode, $headers);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement