當前位置:首頁 » 文件管理 » html5手機錄音上傳

html5手機錄音上傳

發布時間: 2022-07-25 01:40:45

① 手機上的錄音如何傳到電腦上

方法一:

1、通過QQ的方式,打開電腦和手機上的QQ軟體。

2、在QQ中我的電腦中選擇要傳輸的錄音,就可以發送到電腦了。

3、在電腦上點擊接收,即可。

方法二:

1、將手機通過數據線連接到電腦上。

2、在「我的電腦」只能夠查找到手機設備。

3、雙擊打開手機設備,會出現手機內存和sd卡。

4、根據錄音的存放位置進行選擇。右擊選擇復制。

5、選擇錄音要存放的位置,右擊選擇粘貼即可。

② 如何把自己手機的錄音上傳到網上!

你的手機錄音之後,都會存在一個指定的文件夾里,通常在內存卡里,找到位置後把它導入電腦 如果電腦格式播放不出來的話就找個音頻轉換器轉換過來就行了,網上一搜一大堆。
然後隨便注冊個博客之類的或者視頻網站如土豆 優酷什麼的 上傳就可以了

③ html5調取麥克風錄音後上傳至伺服器 就是想做一個手機網站,調取手機的麥克風功能錄音,然後傳到

這個調取功能要通過安卓編程語言或ios編程語言調取 單單html5是實現不了的

④ HTML5 實現錄音,然後上傳到伺服器,有現成方案嗎

可以用 html5 的 Audio Api 獲取音頻源(還能獲取攝像頭)教程在這里:

⑤ HTML5+js是否可以實現錄音上傳的功能

需要瀏覽器支持html5中的userMedia,但各瀏覽器對它的支持實在是有限。比較成熟的還是flash啦。

⑥ HTML5怎麼實現錄音和播放功能

<span style="white-space:pre"> </span><audio controls autoplay></audio>
<input type="button" value="開始錄音" onclick="startRecording()"/>
<input type="button" value="獲取錄音" onclick="obtainRecord()"/>
<input type="button" value="停止錄音" onclick="stopRecord()"/>
<input type="button" value="播放錄音" onclick="playRecord()"/>

<video id="video1" width="320px" height="240px" controls autoplay ></video>
<video id="video2" width="320px" height="240px" controls autoplay ></video>
<canvas id="canvas1" width="320" height="240"></canvas>
<input type="button" value="拍攝" onclick="scamera()"/>
<input type="button" value="播放視頻" onclick="playVideo()"/>
js文件:
[javascript] view plain (function (window) {
//兼容
window.URL = window.URL || window.webkitURL;
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia;

var HZRecorder = function (stream, config) {
config = config || {};
config.sampleBits = config.sampleBits || 8; //采樣數位 8, 16
config.sampleRate = config.sampleRate || (44100 / 6); //采樣率(1/6 44100)

//創建一個音頻環境對象
audioContext = window.AudioContext || window.webkitAudioContext;
var context = new audioContext();

//將聲音輸入這個對像
var audioInput = context.createMediaStreamSource(stream);

//設置音量節點
var volume = context.createGain();
audioInput.connect(volume);

//創建緩存,用來緩存聲音
var bufferSize = 4096;

// 創建聲音的緩存節點,createScriptProcessor方法的
// 第二個和第三個參數指的是輸入和輸出都是雙聲道。
var recorder = context.createScriptProcessor(bufferSize, 2, 2);

var audioData = {
size: 0 //錄音文件長度
, buffer: [] //錄音緩存
, inputSampleRate: context.sampleRate //輸入采樣率
, inputSampleBits: 16 //輸入采樣數位 8, 16
, outputSampleRate: config.sampleRate //輸出采樣率
, oututSampleBits: config.sampleBits //輸出采樣數位 8, 16
, input: function (data) {
this.buffer.push(new Float32Array(data));
this.size += data.length;
}
, compress: function () { //合並壓縮
//合並
var data = new Float32Array(this.size);
var offset = 0;
for (var i = 0; i < this.buffer.length; i++) {
data.set(this.buffer[i], offset);
offset += this.buffer[i].length;
}
//壓縮
var compression = parseInt(this.inputSampleRate / this.outputSampleRate);
var length = data.length / compression;
var result = new Float32Array(length);
var index = 0, j = 0;
while (index < length) {
result[index] = data[j];
j += compression;
index++;
}
return result;
}
, encodeWAV: function () {
var sampleRate = Math.min(this.inputSampleRate, this.outputSampleRate);
var sampleBits = Math.min(this.inputSampleBits, this.oututSampleBits);
var bytes = this.compress();
var dataLength = bytes.length * (sampleBits / 8);
var buffer = new ArrayBuffer(44 + dataLength);
var data = new DataView(buffer);

var channelCount = 1;//單聲道
var offset = 0;

var writeString = function (str) {
for (var i = 0; i < str.length; i++) {
data.setUint8(offset + i, str.charCodeAt(i));
}
};

// 資源交換文件標識符
writeString('RIFF'); offset += 4;
// 下個地址開始到文件尾總位元組數,即文件大小-8
data.setUint32(offset, 36 + dataLength, true); offset += 4;
// WAV文件標志
writeString('WAVE'); offset += 4;
// 波形格式標志
writeString('fmt '); offset += 4;
// 過濾位元組,一般為 0x10 = 16
data.setUint32(offset, 16, true); offset += 4;
// 格式類別 (PCM形式采樣數據)
data.setUint16(offset, 1, true); offset += 2;
// 通道數
data.setUint16(offset, channelCount, true); offset += 2;
// 采樣率,每秒樣本數,表示每個通道的播放速度
data.setUint32(offset, sampleRate, true); offset += 4;
// 波形數據傳輸率 (每秒平均位元組數) 單聲道×每秒數據位數×每樣本數據位/8
data.setUint32(offset, channelCount * sampleRate * (sampleBits / 8), true); offset += 4;
// 快數據調整數 采樣一次佔用位元組數 單聲道×每樣本的數據位數/8
data.setUint16(offset, channelCount * (sampleBits / 8), true); offset += 2;
// 每樣本數據位數
data.setUint16(offset, sampleBits, true); offset += 2;
// 數據標識符
writeString('data'); offset += 4;
// 采樣數據總數,即數據總大小-44
data.setUint32(offset, dataLength, true); offset += 4;
// 寫入采樣數據
if (sampleBits === 8) {
for (var i = 0; i < bytes.length; i++, offset++) {
var s = Math.max(-1, Math.min(1, bytes[i]));
var val = s < 0 ? s * 0x8000 : s * 0x7FFF;
val = parseInt(255 / (65535 / (val + 32768)));
data.setInt8(offset, val, true);
}
} else {
for (var i = 0; i < bytes.length; i++, offset += 2) {
var s = Math.max(-1, Math.min(1, bytes[i]));
data.setInt16(offset, s < 0 ? s * 0x8000 : s * 0x7FFF, true);
}
}

return new Blob([data], { type: 'audio/wav' });
}
};

//開始錄音
this.start = function () {
audioInput.connect(recorder);
recorder.connect(context.destination);
};

//停止
this.stop = function () {
recorder.disconnect();
};

//獲取音頻文件
this.getBlob = function () {
this.stop();
return audioData.encodeWAV();
};

//回放
this.play = function (audio) {
audio.src = window.URL.createObjectURL(this.getBlob());
};

//上傳
this.upload = function (url, callback) {
var fd = new FormData();
fd.append('audioData', this.getBlob());
var xhr = new XMLHttpRequest();
if (callback) {
xhr.upload.addEventListener('progress', function (e) {
callback('uploading', e);
}, false);
xhr.addEventListener('load', function (e) {
callback('ok', e);
}, false);
xhr.addEventListener('error', function (e) {
callback('error', e);
}, false);
xhr.addEventListener('abort', function (e) {
callback('cancel', e);
}, false);
}
xhr.open('POST', url);
xhr.send(fd);
};

//音頻採集
recorder.onaudioprocess = function (e) {
audioData.input(e.inputBuffer.getChannelData(0));
//record(e.inputBuffer.getChannelData(0));
};

};
//拋出異常
HZRecorder.throwError = function (message) {
throw new function () { this.toString = function () { return message; };};
};
//是否支持錄音
HZRecorder.canRecording = (navigator.getUserMedia != null);
//獲取錄音機
HZRecorder.get = function (callback, config) {
if (callback) {
if (navigator.getUserMedia) {
navigator.getUserMedia(
{ audio: true } //只啟用音頻
, function (stream) {
var rec = new HZRecorder(stream, config);
callback(rec);
}
, function (error) {
switch (error.code || error.name) {
case 'PERMISSION_DENIED':
case 'PermissionDeniedError':
HZRecorder.throwError('用戶拒絕提供信息。');
break;
case 'NOT_SU

⑦ 怎樣把手機里的錄音傳到電腦上

將手機上的錄音上傳到本地電腦的具體步驟如下:
以OPPOR11手機為例:
1、首先打開錄音,點擊打開右下角的三條杠。

2、然後在彈出來的頁面中點擊右上角的選擇,選擇想要上傳的錄音文件。

3、然後在彈出來的頁面中點擊打開「發送」。

4、然後在彈出來的頁面中點擊「發送到我的電腦」。

5、然後在電腦彈出來的窗口中右鍵單擊錄音文件選擇「另存為」。

6、選擇想要保存的位置,點擊保存即可。

可以直接連接數據線,從電腦里打開你手機的存儲卡,找到聲音文件復制到電腦。、
也可以將你的手機存儲卡取出放進讀卡器,電腦里打卡讀卡器里的存儲卡找到文件復制到電腦。
還可以將你的文件用藍牙傳給別人有數據線的手機,讓她傳到電腦

其他

若將手機中的錄音文件保存到電腦中,方法如下:
1.將手機與電腦連接,下滑手機屏幕頂簾,查看通知欄是否有提示「已連接為媒體設備」-勾選「媒體設備MTP」。
2.連接成功後,電腦桌面會彈出手機設備頁面-點擊「打開設備以查看文件」(或進入我的電腦/計算機-查找手機設備圖標)。
3.進入Sounds(或call)文件夾中查找錄音文件。然後將錄音文件復制到電腦桌面或需要的盤符中即可。
若手機連接電腦後不顯示設備圖標,請您輸入「手機無法連接電腦」查看相關解決方式。

熱點內容
常用的單向哈希演算法有 發布:2024-04-28 19:16:04 瀏覽:116
牛貝微信淘客源碼 發布:2024-04-28 19:09:16 瀏覽:33
傳奇裝備強化腳本 發布:2024-04-28 18:34:29 瀏覽:328
QQ如何撤銷以儲存的密碼 發布:2024-04-28 18:32:13 瀏覽:321
ttsandroid中文 發布:2024-04-28 18:30:38 瀏覽:766
修改密碼後為什麼連接不了 發布:2024-04-28 18:16:48 瀏覽:743
cfm安卓轉蘋果在哪個買 發布:2024-04-28 18:07:15 瀏覽:161
編譯器錯誤都是什麼意思 發布:2024-04-28 17:31:30 瀏覽:74
伺服器不能復制粘貼到本機是怎麼回事 發布:2024-04-28 17:24:50 瀏覽:15
房產中介管理系統源碼 發布:2024-04-28 17:23:53 瀏覽:77