我有使用 Recorder.js 的简单 Record Wave 脚本
记录没问题
减少到我的记录还可以
从blob下载记录文件没问题
上传记录文件(这里是问题)
操作系统 ( windows 10 & appserv )
我的上传.php
<?php
print $_FILES["audio_data"]["tmp_name"]; //this will print out the received name, temp name, type, size, etc.
//check if upload folder exist or not
if(!is_dir("uploads")){
$res = mkdir("uploads",0777);
}
$size = $_FILES['audio_data']['size']; //the size in bytes
$input = $_FILES['audio_data']['tmp_name']; //temporary name that PHP gave to the uploaded file
$output = $_FILES['audio_data']['name'].".wav"; //letting the client control the filename is a rather bad idea
//move the file from temp name to local folder using $output name
move_uploaded_file($input, $output)
?>
我的 js 文件的一部分
function createDownloadLink(blob) {
var url = URL.createObjectURL(blob);
var au = document.createElement('audio');
var li = document.createElement('li');
var link = document.createElement('a');
//name of .wav file to use during upload and download (without extendion)
var filename = new Date().toISOString();
//add controls to the <audio> element
au.controls = true;
au.src = url;
//save to disk link
link.href = url;
link.download = filename+".wav"; //download forces the browser to donwload the file using the filename
link.innerHTML = "Save to disk";
//add the new audio element to li
li.appendChild(au);
//add the filename to the li
li.appendChild(document.createTextNode(filename+".wav "))
//add the save to disk link to li
li.appendChild(link);
呼唤远方