mpd-0.23.1 meson ninja でビルド結果のみ

2023-06-23 23;25 修正
度々の修正です。
TinyCore14 meson が正常終了できません、どうにも理由がはっきりしない、わからないので TinyCore14 はあきらめてしばらく Debian で環境を使います。Debian でのコンパイル結果はなぜかサイズが大きい、オプションの見直しが必要のようです、でも soxr custom 指定でのパラメータ確認は可能なので良しとします。
あと、Windowsで作成した一部のmp3ファイル中のタグに文字化けがありました。当時リッピングソフトに商用、フリーといろいろ使ってたので文字化け原因のソフトは不明です、見つけ次第EasyTagで修正してます。

2023-06-2022:22修正
まずmesonコンパイル・オプション指定の継続表示ができてません
継続行として \ (¥) 記号が必要です。
もう一点 sonapcast=false が正解です、記事中の表記は修正しています。

なんとかTinyCore OS でmesonを使ってのビルド、音出し確認できましたので結果のみ貼り付けておきます
meson,gcc,pythonのバージョン組み合わせがパズルのようでarm7lクロスコンパイルまでたどり着けてません
それにしても真空管高くなりましたね、手が出ません。VT4C交換はしばらく保留です。

1.作業環境は以下になります
Core64 13.1
Linux box 6.1.2-tinycore64 #612 SMP Mon Jan 2 17:24:30 UTC 2023 x86_64 GNU/Linux
sndioライブラリはインストールしてません。

作業フォルダは前処理で削除してます
オプションはCDリッピングMP3が聞けるように設定したつもりです
7,8年前にWindows7でリッピングしたMP3タグも日本語表示できてます

2.mesonスクリプトです
VER="0.23.1"
VERS="0.23"
cd /home/tc
sudo rm -r mpd-$VER :ソース解凍フォルダ
sudo rm -r meson$VER :meson作業フォルダ
sudo rm -r mpdlib :mesonインストール先フォルダ、TCZ作成対象
mkdir meson$VER
mkdir mpdlib

if [ ! -e mpd-$VER.tar.xz ]; then
wget https://www.musicpd.org/download/mpd/$VERS/mpd-$VER.tar.xz
fi

tar -Jxf mpd-$VER.tar.xz

cd mpd-$VER
meson setup --buildtype=release  \
-Dao=disabled -Daudiofile=disabled  \
-Dbzip2=disabled -Dcdio_paranoia=disabled \
-Dchromaprint=disabled -Ddocumentation=disabled \
-Dexpat=disabled -Dfaad=disabled \
-Dfluidsynth=disabled -Dfuzzer=false \
-Dgme=disabled -Dhtml_manual=false \
-Dhttpd=false -Dio_uring=disabled \
-Dinotify=false -Dipv6=disabled \
-Diso9660=disabled -Dio_uring=disabled \
-Djack=disabled -Dmanpages=false \
-Dmpg123=disabled -Dmikmod=disabled \
-Dadplug=disabled -Dmodplug=disabled \
-Dmms=disabled -Dmpcdec=disabled \
-Dneighbor=false -Dopus=disabled \
-Doss=disabled -Dopenal=disabled \
-Dpcre=disabled -Dpulse=disabled \
-Dqobuz=disabled -Drecorder=false \
-Dsystemd=disabled -Dshout=disabled \
-Dshine=disabled -Dsidplay=disabled \
-Dsignalfd=false -Dsnapcast=false \
-Dsolaris_output=disabled -Dsoundcloud=disabled \
-Dtremor=disabled -Dupnp=disabled \
-Dvorbisenc=disabled -Dwavpack=disabled \
-Dwebdav=disabled -Dwildmidi=disabled \
-Dyajl=disabled -Dzeroconf=disabled \
-Dalsa=enabled -Dsoxr=enabled -Dfifo=true -Did3tag=enabled \
-Dicu=enabled \
/home/tc/meson$VER /home/tc/mpd-$VER

cd /home/tc/meson$VER
ninja -j 2
DESTDIR=/home/tc/mpdlib ninja install

cd /home/tc
sudo rm mpd-$VER.tcz*
mksquashfs mpdlib mpd-$VER.tcz
md5sum mpd-$VER.tcz > mpd-$VER.tcz.md5.txt

3.以下 mpd-V の表示結果

Music Player Daemon 0.23.1 (0.23.1)
Copyright 2003-2007 Warren Dukes warren.dukes@gmail.com
Copyright 2008-2021 Max Kellermann max.kellermann@gmail.com
This is free software; see the source for copying conditions. There is NO warranty; not even MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Database plugins:
simple proxy

Storage plugins:
local udisks

Decoders plugins:
[mad] mp3 mp2
[vorbis] ogg oga
[oggflac] ogg oga
[flac] flac
[sndfile] wav aiff aif au snd paf iff svx sf voc w64 pvf xi htk caf sd2
[dsdiff] dff
[dsf] dsf
[hybrid_dsd] m4a
[pcm]

Filters:
libsamplerate soxr

Tag plugins:
id3tag

Output plugins:
null fifo pipe alsa

Encoder plugins:
null lame wave flac

Archive plugins:
[zzip] zip

Input plugins:
file archive alsa curl

Playlist plugins:
extm3u m3u pls flac cue embcue

Protocols:
file:// alsa:// ftp:// ftps:// gopher:// http:// https:// smb://

Other features:
dbus udisks epoll icu tcp un

4.mpd.conf の内容
soxr設定値は MPD本家サイトを参考にしました

music_directory "/music/data"
playlist_directory "/music/data/mpd2/playlists"
db_file "/music/data/mpd2/mdb2301"
log_file "/music/data/mpd2/log66"
pid_file "/music/data/66/pid"
state_file "/music/data/66/state"
#sticker_file "/music/sticker.sql"

port "6600"
follow_outside_symlinks "yes"
follow_inside_symlinks "yes"
zeroconf_enabled "no"

audio_output {
type "alsa"
name "DAC"
device "hw:0,0"
mixer_type "none"
auto_resample "no"
dsd_usb "no"
buffer_time "30000"
period_time "7500"
}
audio_buffer_size "640"
mixer_type "none"
log_level "default" # "verbose" "default"
filesystem_charset "UTF-8"
auto_update "no"

resampler {
plugin "soxr"
quality "custom"
precision "24"
passband_end "91"
stopband_begin "100"
phase_response "50"
}

input {
plugin "curl"
}

5.aplay -L 表示内容:USD DDC(Combo384互換)に接続してます

null
Discard all samples (playback) or generate zero samples (capture)
default:CARD=DAC
USB AUDIO DAC, USB Audio
Default Audio Device
sysdefault:CARD=DAC
USB AUDIO DAC, USB Audio
Default Audio Device
front:CARD=DAC,DEV=0
USB AUDIO DAC, USB Audio
Front speakers
surround21:CARD=DAC,DEV=0
USB AUDIO DAC, USB Audio
2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=DAC,DEV=0
USB AUDIO DAC, USB Audio
4.0 Surround output to Front and Rear speakers
surround41:CARD=DAC,DEV=0
USB AUDIO DAC, USB Audio
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=DAC,DEV=0
USB AUDIO DAC, USB Audio
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=DAC,DEV=0
USB AUDIO DAC, USB Audio
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=DAC,DEV=0
USB AUDIO DAC, USB Audio
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=DAC,DEV=0
USB AUDIO DAC, USB Audio
IEC958 (S/PDIF) Digital Audio Output
usbstream:CARD=DAC
USB AUDIO DAC
USB Stream Output

以上になります、tczライブラリになくて依存チェックにひっかかるライブラリの調査とインストールに時間がかかり遅くなりました。途中DebianOSでの作業も考えたのですが似たりよったりでした。