BambooMaster/pico_usb_i2s_speaker
BambooMaster/pico_usb_i2s_speaker has 26 GitHub stars and 14 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-14 19:09 UTC. Last push 2026-10-01.
Measured star growth
- in 24h
- 0
- in 7 days
- Collecting history
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
About
High-resolution USB-DDC based on tinyusb. Features I2S output with low-jitter MCLK.
Creative & MediaREADME.md
Originalpico_usb_i2s_speaker
Raspberry Pi Picoとtinyusbを使ったマスタークロック付きのi2sを出力するUSB DDCです。 uac2_speaker_fbをベースに、ハイレゾ(96kHz 24bit)に対応しました。 USBスタックには、tinyusbを使用しています。
Interpolation 機能
RP2350のDSPを使用したインターポレーション(オーバーサンプリング)機能を実装しています。 RP2350のデュアルコアを活かし、高性能なフィルタを実装したものがinterpolationブランチ、シングルコアのみで実装をしたものがinterpolation-liteブランチです。
インターポレーション倍率
- 44.1/48kHz: 8倍
- 88.2/96kHz: 4倍
フィルタ特性 (44.1KHz)
interpolation ブランチ
- Passband: 20.5kHz
- Passband Ripple: 0.001dB
- Stopband: 22.05kHz
- Stopband Attenuation: -140dB
interpolation-lite ブランチ
- Passband: 20kHz
- Passband Ripple: 0.002dB
- Stopband: 24.1kHz
- Stopband Attenuation: -100dB
i2s
pico-i2s-pioを使っています。RP2040/RP2350のシステムクロックをMCLKの整数倍に設定し、pioのフラクショナル分周を使わないlowジッタモードを搭載しています。
i2s、PT8211の16bit右詰め、AK449XのEXDF、i2sのスレーブモードに対応しています。また、i2sとPT8211をデュアルモノで動作させることも可能です。
デフォルト
lowジッタ、i2sモード
| name | pin |
|---|---|
| DATA | GPIO18 |
| LRCLK | GPIO20 |
| BCLK | GPIO21 |
| MCLK | GPIO22 |
build
vscodeの拡張機能を使う場合
git clone https://github.com/BambooMaster/pico_usb_i2s_speaker.git
cd pico_usb_i2s_speaker
git switch main
git submodule update --init
を実行した後、vscodeの拡張機能(Raspberry Pi Pico)でインポートし、ビルドしてください。
interpolation機能を使用する場合は、git switch mainをgit switch interpolationに変更してください。
vscodeの拡張機能を使わない場合
git clone https://github.com/BambooMaster/pico_usb_i2s_speaker.git
cd pico_usb_i2s_speaker
git switch main
git submodule update --init
mkdir build && cd build
cmake .. && make -j4
interpolation機能を使用する場合は、git switch mainをgit switch interpolationまたはgit switch interpolation-liteに変更してください。
動作確認環境
- Windows11
- Ubuntu 24.04
- Pixel6a (Android 16)
- iPad Air Gen4 (iPadOS 26.3.1)