Vocalize是為語言學習者製作的發音教練。
Vocalize是一個為語言學習者提供發音培訓的應用程序。用戶選擇了他們想要練習的語言,要么是英語和西班牙語,然後用練習單詞呈現。用戶能夠記錄其發音並將其提交以與單詞的平均發音進行比較。用戶發音的可視化表示與平均發音有關。
每個單詞的平均發音是通過將YouTube視頻饋送到自定義音頻處理算法中創建的。我們首先從YouTube刮下音頻書,然後將其提交給IBM Watson的文本對語API。然後,我們使用FFMPEG為有聲讀物中的每個單詞創建一個音頻文件。當單詞多次出現時,我們使用自定義的Python模塊一起平均將單詞實例合在一起,該模塊構建在SCIPI之上。我們僅處理每種語言中的1000個最受歡迎的單詞來縮小數據的範圍。一旦為單詞創建平均發音,它就會使用Amazon S3存儲。
前端:react.js,反應本地,redux,d3.js
後端:Node.js,Express,MongoDB,Amazon S3
音頻處理:Python,Scipy,IBM Watson,FFMPEG
測試:柴,摩卡,pytest
構建工具:gulp,browersify,webpack
部署:數字海洋
brew install youtube-dl
npm install
gulp build
node server.js
在數據刮擦目錄中,您會找到刮擦YouTube視頻(音頻書)的節點JS文件,以獲取單詞的WAV文件。
npm install
node index.js scrape <youtube id> <language>
還有一個文件運行Python腳本以平均單詞並將其輸出為“平均”文件夾,稱為falus.sh。