If you are serving your audio files via PHP for the HTML5 audio element and other players such as MediaElement.js, you need to include the following header for seeking to work:
<?php header('Accept-Ranges: bytes'); ?>
Here's my php to serve the file:
if(file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.$filename);
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
header('Accept-Ranges: bytes');
flush();
readfile($file);
exit();
}
Of course, you need to set $file (file path) and $filename (just the file name).