SlideShare a Scribd company logo
Raspberry Piで
ハイレゾ音源を鳴らそう
みやはら とおる
@tmiyahar
そもそもの動機
• いい音で聴きたいな〜と思って少し前にUSB
DAC「iFi nano iDSD」を買った
2
そしてヘッドフォン買い替え
• iPhone用インナーイヤーヘッドフォンをnano
iDSDに繋いだら左側の音が出ない?
– 少し強く押し込むと音は出る
• マイク、コントロール用の4極プラグと相性が
悪いらしい
• いいや、ヘッドフォン買い替えちゃえ!
3
SONY XBA-300購入
すごくいいけど、もう少し音に迫力が欲しいなぁ・・
4
SONY MDR-1A購入
5
バランス接続したくなり…
PHA-3購入!
6
7
まさに
オーディオ沼…
nano iDSDを再活用したいな〜
• オフィス環境はPHA-3の一択で固定された
• 自宅で使っていたけど、いまいち使いにくい
• ネットワークオーディオ化してリビングのス
ピーカーで聴きたい
そうだ、ラズパイでハイレゾだ!
8
ハイレゾとは
1. 録音フォーマット:FLAC or WAVの
96kHz/24bit以上が可能であること
2. 入出力インターフェイス:96kHz/24bit以上が
可能であること
3. ファイル再生:FLAC/WAVの96kHz/24bitに対
応可能であること(自己録再機はFLAC、また
はWAVのどちらかのみで可とする)
4. 信号処理:96kHz/24bit以上の信号処理性
能が可能であること
5. デジタル・アナログ変換:96kHz/24bit以上が
可能であること
6. 生産若しくは販売責任において聴感評価が
確実に行なわれていること。各社の評価基
準に基づき、聴感評価を行ない、ハイレゾ
に相応しい商品と最終判断されていること
9
ラズパイでハイレゾするには
• 「Volumio」というオーディオプレイヤーソフト
がラズパイ用イメージで配布されている
– 内部的にはRaspbian+MPD+独自Webアプリ
• MPD:Music Player Daemon
• クライアントサーバー型でクライアント多数
よし、試すぞ!
10
試してみた
• Raspberry Pi 3 モデルBを購入!
– Amazonで6980円
– 本体(element14版)+透明ケース+ヒートシンク
– ケースはRaspberry Pi 2用に買った木製ケースと
交換(干渉する部分はバシバシっとカット!)
• microSDカードにVolumio 2 RC1をイメージ書き
込み
– RasPi 3でVolumio 1.x系は動作しません!
11
Volumio 2の感想
• FLAC(96kHz/24bit)、WAV(96kHz/32bit)も問
題なく再生できた
• WebUIはまぁまぁ使いやすい
• /var/lib/mpd/musicに対するSMBファイル共
有が作られておりファイルコピーしやすい
• USBメモリを挿すだけでその中の音楽ファイル
を再生できる
しかし大きな課題も…
12
Volumio 2でDSDが再生できない
• 正確には「再生できるがPCM変換される」
– CPU負荷が高くてプツプツ切れる
• Volumio 2からDoP(DSD over PCM)のOn/Off
設定が無くなった
• ネットで調べてみると再生できている人もいる
– そもそもRC版なので報告例が少なすぎて・・
よし、切り分けだ!
13
DSD(Direct Stream Digital)とは
• ΔΣ変調を利用したサンプリング
方式
• 1bitで表す
• DSD64(2.8MHz)、DSD128
(5.6MHz)、DSD256(11.2MHz)
など
– 数字はCDの何倍、という意味
• DSD再生に対応したオーディオ
インターフェースが必要
14
DoPによるDSD再生方式
• DSDデータをDACに如何に送り込むか?
• ネイティブDSD再生サポートしたDACは少ない
• PCMのフリをして送り込むDoP(DSD Audio
over PCM Frames)が主流
PCM再生の24bitのうち、先頭8bitをマーカー、後ろ16ビットをDSDデータとして扱う
15
行った切り分け
A. Raspberry Pi 2でVolumio 1.55を動かしてみる
B. 自分でMPDを入れてみる
– RaspbianをmicroSDカードにイメージ書き込み
– $ sudo apt-get install mpd mpc
– /etc/mpd.confでHW設定変更とdop "yes"を設定
どっちもDSD鳴るじゃん!?
でも、実際には試行錯誤が…
16
DoPで必要なデータ転送レート
DSD種別 DSD DoP
DSD64 2.8224MHz/1bit 176.4kHz/16bit
DSD128 5.6448MHz/1bit
6.1440MHz/1bit
352.8kHz/16bit
384kHz/16bit?
DSD256 11.2896MHz/1bit
14.1120MHz/1bit
705.6KHz/16bit
768kHz/16bit?
DSD512 22.5792MHz/1bit 1,411.2KHz/16bit
データ転送量の計算例
(2,822.4kHz×1bit)÷16bit=176.4kHz
※実際には24bit転送
17
DSD128再生状況の確認
$ cat
/proc/asound/card1/pcm0p/sub0/hw_params
A. 正常にDoPで再生できている場合
– access: RW_INTERLEAVED
– format: S32_LE
– subformat: STD
– channels: 2
– rate: 352800 (352800/1) ←352.8kHzでDACに送信
B. PCM変換されている場合
– rate: 384000 (384000/1) ←DACの仕様の最大値18
DSD64、DSD256再生状況の確認
$ cat /proc/asound/card1/pcm0p/sub0/hw_params
• DSD64
– rate: 176400 (176400/1) ←176.4kHzでDACに送信
• DSD256
– rate: 705600 (705600/1) ←705.6kHzでDACに送信
– 1回目再生した時に
19
まとめ
• DSDを使わないなら、普通に使う分には
Volumio 2で問題なし
– 早く正式版が出るといいね
• マニアックにやるなら、自分でゴリゴリとMPD
を入れてクライアント入れてやるべし
– 色んなクライアントがあります
20

More Related Content

PPTX
Raspberry Piでハイレゾ音源を鳴らそう
PPTX
Raspberry Piでハイレゾ音源を鳴らそう RuneAudio+Pi-DAC+編
PPTX
はじめよう、ラズパイオーディオ 210306
PPT
はじめようRaspberry Piでハイレゾオーディオ再生
PPTX
Raspberry Piでハイレゾ音源を鳴らそう つぶやいていると色々あるね編
PDF
諭吉と始めるオーディオ入門
PPTX
5分で分かるRaspberry Piでハイレゾオーディオ再生
PPTX
Raspberry Piでつくる高音質オーディオ
Raspberry Piでハイレゾ音源を鳴らそう
Raspberry Piでハイレゾ音源を鳴らそう RuneAudio+Pi-DAC+編
はじめよう、ラズパイオーディオ 210306
はじめようRaspberry Piでハイレゾオーディオ再生
Raspberry Piでハイレゾ音源を鳴らそう つぶやいていると色々あるね編
諭吉と始めるオーディオ入門
5分で分かるRaspberry Piでハイレゾオーディオ再生
Raspberry Piでつくる高音質オーディオ

What's hot (6)

PDF
Logitech
PPTX
カンパイペッパー
PPTX
Raspberry Piで音楽を楽しもう!
PPTX
5分間ラズパイオーディオLT-東海道らぐ編-
PDF
20141115 fx os-codereading
PDF
20191129 node red-ug_kitazaki_ss
Logitech
カンパイペッパー
Raspberry Piで音楽を楽しもう!
5分間ラズパイオーディオLT-東海道らぐ編-
20141115 fx os-codereading
20191129 node red-ug_kitazaki_ss
Ad

More from Toru Miyahara (20)

PPTX
今さら聞けない人のためのDevOps超入門 OSC2024 Online/Fall版
PPTX
爆速!DBチューニング超入門 〜DB性能の基礎とPG-Stromによる高速化〜 OSC2024 Online/Fall版
PPTX
今さら聞けない人のためのDevOps超入門 ODC2024 9月7日バージョン
PPT
今年こそ始めたい!SQL超入門 MIRACLE Linux Meetup版 0620
PPTX
エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料
PPTX
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
PPTX
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
PPT
今年こそ始めたい!SQL超入門 セミナー資料 2024年5月22日 富士通クラウドミートアップ
PPTX
DB性能の基礎 DB性能高速化入門 〜基礎から列指向、GPU活用まで〜 宮原 徹
PPTX
2024/03/02 『Linuxサーバー構築標準教科書』V4をリリースしました
PPTX
2024/03/01 今さら聞けない人のためのDevOps超入門 OSC2024 Online/Spring
PPTX
2024/03/01 爆速!DBチューニング超入門 〜DB性能の基礎とGPU活用による高速化〜
PPTX
SSH超入門
PPTX
DevOps超入門 〜DevSecOps実現に向けたはじめの一歩〜
PPTX
今さら聞けない人のためのDevOps超入門
PPTX
DBチューニング超入門
PPTX
これから始めるDevOps
PPTX
今さら聞けない人のためのバックアップ超入門
PPTX
やってみよう!Pi-Stopで学ぶRaspberry Pi+Pythonプログラミング
PPTX
今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDevOps超入門 OSC2024 Online/Fall版
爆速!DBチューニング超入門 〜DB性能の基礎とPG-Stromによる高速化〜 OSC2024 Online/Fall版
今さら聞けない人のためのDevOps超入門 ODC2024 9月7日バージョン
今年こそ始めたい!SQL超入門 MIRACLE Linux Meetup版 0620
エンジニアのセルフブランディングと技術情報発信の重要性 テクニカルライターになろう 講演資料
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
今年こそ始めたい!SQL超入門 セミナー資料 2024年5月22日 富士通クラウドミートアップ
DB性能の基礎 DB性能高速化入門 〜基礎から列指向、GPU活用まで〜 宮原 徹
2024/03/02 『Linuxサーバー構築標準教科書』V4をリリースしました
2024/03/01 今さら聞けない人のためのDevOps超入門 OSC2024 Online/Spring
2024/03/01 爆速!DBチューニング超入門 〜DB性能の基礎とGPU活用による高速化〜
SSH超入門
DevOps超入門 〜DevSecOps実現に向けたはじめの一歩〜
今さら聞けない人のためのDevOps超入門
DBチューニング超入門
これから始めるDevOps
今さら聞けない人のためのバックアップ超入門
やってみよう!Pi-Stopで学ぶRaspberry Pi+Pythonプログラミング
今さら聞けない人のためのDocker超入門
Ad

Raspberry Piでハイレゾ音源を鳴らそう