/ 雑記帳

rpi-dac そういう事なのかぁ Raspberry as generic i2s master at 384kHz

某掲示板で質問したが検索しているうちに答えの記事を見つけて解決出来た?様に思う。
たぶんベテランの方々の間では即知の問題だったのかなぁ...
事の始めは自分は実験用サブシステム

RaspberryPi4(GentooPlayer Diretta Target)
APU2D4(Diretta Host)
KALI Reclocker基板 
やなさん送信基板
DAC AK4493EQ気楽kit製基板

の組み合わせでI2S出力で使用した時に
DSD64までしか再生出来ない事に加えて自動でPCMに変換されて且つDSD64以外のファイルも
24bit/192kHzで出力されます。
残念ながらDAC基板はPCMしか受け付けませんがAK4493EQなら768KHzまではいけるはずです。
どうも出力が192kHzまでに制限されているような感じです。
この現象はgentooplayerで発見したのですが流石にGentooPlayerのカーネルをコンパイルする勇気も技術もありません笑)
GentooPlayer使用時の場合で某掲示板中udosanさんにアドバイスをいただいて
[1] i-sabre-q2m/k2m and i2s general
[31] Generic-1 I2S (hifiberry-dac)
どちらか?試してみてくださいとの事でした。試して見たのですが
どうしても安定した再生が出来ない...
なので自前でイジっている汎用rt-kernelソースを使ってリンク先の内容を実験してみる事にしました。
[root@alarm ~]# uname -a
Linux alarm 5.16.0-rc3-rt7-v8 #4 SMP PREEMPT_RT Sat Apr 2 22:52:37 JST 2022 aarch64 GNU/Linux

参考リンク:Raspberry as generic i2s master at 384kHz

以下は参考リンク先記事概要
2017年11月、Raspberry Linuxカーネルは、i2sバスの384kHzをサポートするように更新されました。
それ以前は、ストックカーネルは192kHzに制限されていましたが、
汎用i2sマスタードライバーrpi-dacはまだです。
i2sバスでは、Piをマスターまたはスレーブとして使用できます。
Piを汎用i2sマスターとして使用する場合は、rpi-dacドライバーを使用できます。
このドライバのみが、pcm1794aコーデックの使用により192kHzに制限されています。
これは一般的なドライバを混乱させる少し混乱しますが、
pcm1794aコーデックを使用します。そのため、pcm1794のサンプルフォーマットとレートにも制限されています。

rpi-dacドライバーを使った場合は...という事らしいです。
最終的にいたずらも含めてこんな感じにしてみました。
お分かりいただけるでしょうか(笑)
思い付きで32bit分も加えたがこの改修は素晴らしいと思う。
RaspberryPi4 + KALI Reclocker基板 + Archlinux の組み合わせで使っている方は
是非とも挑戦して欲しい。購入して良かったと惚れ直すかも知れない。
自分の環境では参考ページにあるパッチは当たりませんでした。
テキストエディターで開いて該当箇所を手修正後にコンパイルを行いました。

sound/soc/codecs/pcm1794a.c b/sound/soc/codecs/pcm1794a.c

static struct snd_soc_dai_driver pcm1794a_dai = {
.name = "pcm1794a-hifi",
.playback = {
.channels_min = 2,
.channels_max = 2,
.rates = SNDRV_PCM_RATE_8000_384000,
.formats = SNDRV_PCM_FMTBIT_S16_LE |
SNDRV_PCM_FMTBIT_S24_LE |
SNDRV_PCM_FMTBIT_S32_LE
},

カーネル再構築インストール後に適応されているか?コマンドで確認...
[root@alarm ~]# alsacap
*** Scanning for playback devices ***
Card 0, ID `sndrpirpidac', name `snd_rpi_rpi_dac'
Device 0, ID `RPi-DAC HiFi pcm1794a-codec-0', name `RPi-DAC HiFi pcm1794a-codec-0', 1 subdevices (1 available)
2 channels, sampling rate 8000..384000 Hz
Sample formats: S16_LE, S24_LE, S32_LE
Subdevice 0, name `subdevice #0'

この状態でmpd.confで32bit再生を指定後再生するとS32_LEが使われている様に表示されますが
真偽の程は??です(笑)

[root@alarm ~]# c00
access: RW_INTERLEAVED
format: S32_LE
subformat: STD
channels: 2
rate: 44100 (44100/1)
period_size: 4410
buffer_size: 22050

— posted by くま at 01:30 pm   commentComment [2] 

GentooPlayer(3) DirettaApp + GentooPlayer 環境構築まで

かなりの紆余曲折はあったが...
DirettaApp + GentooPlayer 環境をRaspberryPi4で実現する事が出来た。
お金と手間暇は結構かかる。
現在、DirettaAppはキャンペーンセール中で50%割引になっている。
円-ユーロ現在のレートで50ユーロ/約6,800円である。
GentooPlayerのメニューから購入方法のリンクが辿れる様になっている。
06 Player/Audio Setting-z Diretta Target を選択 次に 1) 2) の順で選択すれば良い。

diretta


次にGentooPlayerライセンスの購入だが種類によって価格が異なる。
自分は
59€----1System-------1Pc---------------Unlimited
この内容で購入した価格は59ユーロ/約8,000円である。
※実際には個人間送金で購入の必要があるので銀行手数料がプラスになる。
合計すると結構な金額になってしまうのが辛い。
私個人感覚ではあるが購入手順が結構複雑で印象としてはかなり怪しい(笑)
「怪しい。」の意味は商売として全然完成されていないところである。
どこか自分の技術を誇示したいという意図が見え隠れしている様に感じる。
-----------------------------------------------------------------------
ここから先に書くことはGentooPlayer購入時の支払い方法に関してですが
これを参考にした結果として何か事故があっても当方は一切保証出来ません。
あくまでも参考としてくださいm(_ _)m

注意しなければならない事は相手先(GentooPlayer側gentooplayer.gp@gmail.com )へ
日本からPAYPALを通じて代金支払いをする場合には
個人対個人の 個人間送金 での支払いが必須であるという事だ。
※注1 無理に通常のショッピングと同じ送金をHP上から出来ない事も無いが
その場合は相手先からその支払いではダメ!と連絡が来る。
その理由としては通常のPAYPAL取引保証を付けた代金支払いでは先方がお金を受け取れないという事らしい。
※注2 この内容はgentooplayer@gmail.com宛に私の拙い英語で問い合わせたレスによる。
参考画像

PAYPAL2


そしてこの保証の無い送金をする場合はPAYPALにクレジットカードでは無く
銀行口座を支払い先として登録する必要がある。
更にその登録する口座は私が知る限り 三菱UFJ or りそな銀行 でなければならない。
過去にネット取引で事故があり以前は可能だった銀行、ゆうちょ等の金融機関は
現時点ではPAYPAL連動の個人間の支払いは出来ない様になっている。
-----------------------------------------------------------------------
尚この件に関して質問意見をいただいても当方は回答出来ないので宜しくお願いします。

— posted by くま at 07:20 am  

 

GentooPlayer(2) sshを有効にする

メニューとしては System Config Advansed -TWK various ここに設定がある。
分かりにくいよね...

ssh-on



— posted by くま at 06:56 am  

 

めちゃ色々ありました。GentooPlayer(1)

自分は何で空いている穴にすべて落ちるのか?
遥かな道のり?でしたがやっとGentooPlayerを購入出来ました。
ホントホント長かったなぁ(涙)
うどさんありがとうございました。ホントにお陰様ですm(_ _)m

key-user


sshでDiretta Hostにログインして正常動作しているか確認
たぶん大丈夫だと思う。
# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: DirettaAlsa [TargetApp_2D2A:snd_rpi_rpi_dac], device 0: DirettaSink [snd_rpi_rpi_dac]
Subdevices: 0/1
Subdevice #0: subdevice #0

# cat /proc/asound/card0/pcm0p/sub0/hw_params
access: RW_INTERLEAVED
format: S24_3LE
subformat: STD
channels: 2
rate: 44100 (44100/1)
period_size: 3675
buffer_size: 22050

参考リンク https://gentooplayers.com/

— posted by くま at 06:32 am  

<< 2022.4 >>
SMTWTFS
     1 2
345 67 89
10 11 12 13 14 1516
17181920 21 2223
242526272829 30
 
























T: Y: ALL: Online:
ThemePanel
Created in 0.1875 sec.