Hola, estoy trabajando en un reproductor de videos en localhost, tengo un archivo php que es una funcion que al llamarlo con JSON al ejecutarse me lee un directorio y me devuelve una lista de los archivos con formato "webm". El reproductor es bien tonto, al terminar de reproducirse la lista se vuelve a ejectuar la funcion php para dar comienzo nuevamente al bucle y asi hasta el fin de los tiempos.
Mi problema es que me di cuenta que al iniciar los videos el reproductor le come los primeros segundos a cada uno. Estoy con la herramienta de desarrolladores que incluye el chrome y al cargar los videos me sale en la columna Status el codigo "206 - Partial Content". Buscando encontre que corresponde a la carga de archivos grandes, que los ubica pero no los carga completamente. Adjunto mis codigos:  
Este es el reproductor:   
 Código HTML:
 <!DOCTYPE html>
<html>
	<head>
	</head>
	<body bgcolor="#FFFFFF">
		<video id="reproductor" width="100%" muted></video>
		<script type="text/javascript" src="jquery.js"></script>
		<script type="text/javascript">
			(function(){
			    $.ajax({
			        url: "funcion_array.php",
			        dataType: "JSON"
			    }).done(function(respuesta){
			        var reproductor = document.getElementById("reproductor"),
			            videos = respuesta;
			         
			        reproductor.src = videos[0];
			        reproductor.play();
			                                 
			        reproductor.addEventListener("ended", function(){
			             var nombreActual = this.src.substr(this.src.lastIndexOf("/") + 1);
			                  actual = videos.indexOf(decodeURIComponent(nombreActual));
			                                 
			             if (actual == videos.length - 1)
			                  window.location = "videos.html";
			             else{
			                  this.src = videos[++actual];
			                  this.play(); 
			             }
			        }, false);
			     });
			})();
		</script>
	</body>
</html>   
Funcion PHP que me devuelve la lista de videos:  
Código:
 <?php
    // ------------------- FUNCION QUE RETORNA UN ARRAY CON LOS NOMBRES DE LOS VIDEOS ------------------ //
    function showFiles($path){
    $dir = opendir($path);
    $files = array();
    while ($current = readdir($dir)){
        if( $current != "." && $current != "..") {
            if(is_dir($path.$current)) {
                showFiles($path.$current.'/');
            }
            else {
                if(eregi(".*\.webm", $path.$current)){
                    $files[] = $current;
                }
            }
        }
    }
    return $files;
    }
    // ----------------------  CODIFICACION DEL ARRAY  ---------------------- //
    $directorio = getcwd();
    $dir = showFiles($directorio);
    echo json_encode($dir);
?>
  
Si a alguien se le ocurre que puede llegar a ser o como solucionarlo me ayudaria muchisimo. Desde ya muchas gracias. Un saludo. 
Braian