>本教程演示了使用媒體捕獲和流動API(MediaStream API)構建用於音頻錄製和服務器端存儲的Web應用程序。 用戶記錄音頻,將其保存到服務器,然後查看/播放保存的錄音。 服務器端是用Node.js實現的,並且客戶端使用HTML,CSS(Bootstrap)和JavaScript。
密鑰功能:
- 客戶端錄製:
服務器端存儲:>
- 播放和管理:>用戶可以直接從網頁中播放其保存的錄音。 丟棄選項允許刪除錄音。
-
>服務器設置(node.js&express):>
>
項目初始化:>創建一個項目目錄,初始化npm(),然後安裝依賴項(
)。
- >服務器創建(index.js):>創建一個基本的Express服務器來處理路由和文件上傳。
npm init -y
npm i express nodemon multer
> multer集成: multer中間件被配置為處理文件上傳,將其保存到帶有唯一文件名的時間戳的目錄中。 - >
API端點:- >定義了兩個API端點:(post)上傳記錄和(get)檢索保存的記錄列表。
uploads
>
- 服務器啟動:>使用>。
/record
/recordings
錄製頁面(客戶端): -
npm start
html結構:使用記錄按鈕,音頻播放器容器和一個用於顯示已保存的記錄的容器創建HTML PAGE(
)。 Bootstrap用於造型。
CSS樣式(): css樣式接口元素。
- > javaScript邏輯():> javaScript處理用戶交互,使用
public/index.html
錄製並使用fetch API上傳。 事件聽眾管理錄製開始/停止,保存,丟棄和播放。 >
-
public/assets/css/index.css
- 工作流:
public/assets/js/record.js
- 用戶單擊記錄按鈕。
- 瀏覽器提示麥克風訪問。
>
- >經許可後,音頻錄製開始。
- 在停止時,錄製被保存為斑點。
>
- 用戶可以保存或丟棄錄音。
- >保存的錄音通過
/record
端點上傳到服務器。 >
-
/recordings
端點檢索頁面上顯示的保存文件的列表。
結論:
本教程提供了構建功能性錄音應用程序的綜合指南。 使用MediaStream API和結構良好的服務器端組件可確保具有良好且用戶友好的體驗。 進一步的增強功能可能包括更高級的功能,例如文件驗證,用戶身份驗證和改進的UI元素。
關於MediaStream API的FAQ
:>
- >什麼是mediastream api?
>
>它如何工作? - >通過JavaScript從設備(麥克風,相機)提供對多媒體流的訪問。
音頻和視頻支持?
- >視頻捕獲? >使用
訪問相機。
- 屏幕共享? 可能需要額外的瀏覽器權限。
getUserMedia
以上是如何使用MediaStream API錄製音頻的詳細內容。更多資訊請關注PHP中文網其他相關文章!