用聲音傳資料?超酷的 ggwave 讓你用音訊在裝置間傳輸訊息!
哈囉大家好!今天來跟大家介紹一個超有趣的專案叫做 ggwave。 你有沒有想過,除了 Wi-Fi、藍牙,有沒有其他方式可以在裝置之間傳輸資料? ggwave 就讓你透過「聲音」來傳輸資料,聽起來是不是很神奇? 讓我們一起來看看這個特別的技術吧!
什麼是 ggwave?
ggwave 是一個小巧的函式庫,它可以讓你在沒有網路的環境下,透過聲音在裝置之間傳輸少量資料。 想像一下,如果你的手機沒有網路,但你想要分享一段文字給朋友,這時候就可以用 ggwave,讓手機發出一段聲音,朋友的手機接收到聲音後,就可以解碼出你傳輸的文字。 簡而言之,ggwave 就是一個「聲波傳輸資料」的技術!
ggwave 的應用場景
ggwave 的應用範圍其實非常廣泛,以下是一些常見的例子:
- 離線廣播:像wave-share 這樣的專案,可以讓你透過聲音分享檔案,非常適合在沒有網路的場合使用。
- 物聯網(IoT):可以用在微控制器上,例如 ESP32、Arduino 等,讓裝置透過聲音來傳輸資料。 相關範例:esp32-rx, arduino-rx, rp2040-rx, arduino-tx
- 音訊 QR code:把資料編碼成聲音,讓裝置透過麥克風掃描(聽)到 QR code 的內容。
- 裝置配對:像 PairSonic 這樣的專案,可以讓裝置透過聲音交換聯絡資訊或金鑰。
ggwave 怎麼運作的?
ggwave 使用一種叫做 FSK (Frequency-Shift Keying) 的技術,簡單來說,就是把資料轉換成不同頻率的聲音。 發送端將資料轉換成特定頻率的聲波,接收端再分析這些聲波的頻率,還原出原始資料。
為了確保傳輸的穩定性,ggwave 還使用了 ECC (Error Correction Codes) 錯誤校正碼,即使在聲音受到干擾的情況下,也能盡可能正確地解碼資料。
實際體驗 ggwave
想要體驗 ggwave 嗎? 你可以下載一個叫做 Waver 的 App,它支援 iOS、Android、Linux 等平台:
- iOS: App Store 下載連結
- Android: Google Play 下載連結
- Linux: 可以透過 Snap Store 安裝:Snap Store 下載連結
Waver App 可以讓你直接發送和接收 ggwave 訊息,非常方便。
你也可以在瀏覽器上體驗 ggwave:
開發者資源
如果你是開發者,想要在自己的專案中使用 ggwave,官方也提供了許多範例程式碼,支援 C++, Python, Javascript 等語言。 你可以參考 ggwave 的 GitHub 頁面 找到更多資訊。
總結
ggwave 是一個非常有趣且實用的技術,它讓我們可以用聲音來傳輸資料,開啟了許多新的可能性。 無論是在沒有網路的環境下,還是在物聯網應用中,ggwave 都能發揮它的價值。 如果你對聲音傳輸資料有興趣,不妨深入研究一下 ggwave 這個專案吧!
參考閱讀
https://github.com/ggerganov/ggwave