M5StickCplus+SPEAKER HATでmp3再生時に音がおかしい問題について

どーも、まるです。小学生みたいなタイトルになってしまったが、
次自分が「M5 音 おかしい」とかでggる時に引っ掛かるようにした。

さて、今回はこちらのM5StickCplusを使って音を出したいけど、何故か音飛び(?)のようなものが発生しうまく再生が出来なかった時の問題について備忘録。

問題:なんか音が飛ぶ

問題の切り分け

問題の音源はどれもPC上では正常に再生される。

色々と検索していたところ、どうやらスピーカー側の周波数の仕様なんじゃないかということがわかった。

ハードウェアの限界ぽい

いつものlang-shipさんのサイトで紹介されていた。

再生は符号なし8ビットとのこと。

より詳しくいうなら、

・モノラル
・サンプリング周波数8000Hz
・Unsigned 8-bit PCM
・ヘッダなし

saasan.github.io

でないと、だめらしい。

つまり、サンプリングレート8kHz×1chの8kbpsのビットレートの音声ファイルしか再生できないという事になる。マジか。

解決法

ダウンサンプリングを行う。

Audacityを使うと良い。

具体的なやり方は既におもちゃラボさんの以下記事で分かりやすく紹介されているので割愛。

まとめ

取り敢えず再生できたという事で今回はここまで。

但し、それでも音質は悪い。あと音量も小さい。ゲインすると割れる。

こちらのQiitaでも触れられているが、如何せん音質が悪いと評判らしい。

どなたか対処法知ってる人いたら教えてくださると嬉しいです。<m(__)m>

今回はここまで。お読みいただきありがとうございました。

まる。

Python歴5年のフルスタックエンジニア&ヨギー。
大学は心理学、趣味はヘルスケア全般。

最近は自作脳波デバイスとそれを使ったインタラクティブアートのチューニングに勤しみ中。
お仕事の依頼はDMもしくはメールにて。

↓アートとかの趣味アカ。よかったらみてね。٩(๑❛ᴗ❛๑)
Insta:@malmal0v0

まる。をフォローする
その他の記事はこちら
【4K60fpsキャプチャソフト】EaseUS RecExperts Pro版の機能を使ってレビューしてみた。(Windows/Mac対応)
【C++/Arduino】文字列をシンプルに結合する方法
【C++】追加の変数宣言・格納なしに効率良く文字列を追加させる方法
【C/C++】could not convert ‘xxx’ from ‘std::__cxx11::string’ {aka ‘std::__cxx11::basic_string‘} to ‘String’と出る時の解決法
【格安SIM】povo2.0にてテザリングができない時の解決法(Android)

タイトルとURLをコピーしました