Dec 22, 2020
曲順変更でインスタントに新譜アルバム
今回も定額ストリーミングサービスの謎について。
忙しいので多くは書かない。
ケニー・ドーハムというジャズアーティストの音源がDeezer上でストリーミングされている。
彼のアルバムのディスコグラフィは、2020.12.22.現在、こんな感じ。

https://www.deezer.com/ja/album/62001562
Kenny Dorham「Inta Somethin'」 | 1962 | CM BLUE NOTE (A92)
上記はオリジナルアルバムのストリーミングアドレス。
Discogsのデータは下記アドレス。
https://www.discogs.com/master/239468
ケニー・ドーハムの他のアルバムについてアドレスをいくつか貼ってみる。
- https://www.deezer.com/ja/album/145612572
Live Through This | 2020 | LTT brothers music - https://www.deezer.com/ja/album/166529442
Salon | 2020 | More Wings in Hell - https://www.deezer.com/ja/album/149134452
Out Of Mind | 2020 | OOM 1-20 - https://www.deezer.com/ja/album/136594252
Time To Relaxe | 2020 | fsp analog 2be - https://www.deezer.com/ja/album/151288632
Cheaper Tricks | 2020 | tricki masters mind - https://www.deezer.com/ja/album/146346482
Back In The Game | 2020 | the music game companys - https://www.deezer.com/ja/album/131128892
A Happy Easter | 2020 | Archive & Catapulte - https://www.deezer.com/ja/album/116419792
Xmas Angel | 2019 | xmas angels 11
これら8つのアルバムは「Inta Somethin'」の曲順を変えただけだ。
つまり、オリジナルの1枚のアルバムの曲順を変えた8枚の新譜?が作られて、確認しないと分からないような形で登録されているのである。
タイトルを見たら、なるほど、クリスマスとかイースターとかリラックスとか、そういうニーズで検索して引っかかりそうな名前が付けられている。以前のGigazineの記事にあったような話だ。
ケニー・ドーハムのアルバムには、これってオリジナルじゃないだろ、というようなのが他にもある。
上の画像に載っているアルバムのほとんどがそうなっている。
登録しているレーベルというのか著作権保持者というのか、BLUE NOTEじゃないけど、関連会社なのだろうか。
Live Through This | 2020 | LTT brothers music、ということなんだけど、LTT brothers musicってなに、ってことでグーグル検索。
結果、見つかったアドレスが以下。世界中のamazonだ。
- https://www.amazon.co.jp/dp/B087Z36XCH
Live Through This - ケニー・ドーハム - https://www.amazon.co.jp/dp/B087YPDWNX
Live Through This - ケニー・バレル - https://www.amazon.it/dp/B087ZCX5QD
Live Through This - Hugo Montenegro & His Orchestra - https://www.amazon.es/dp/B087Z7JMTF
Live Through This - Toots Thielemans - https://www.amazon.de/dp/B087YKYQQC
Live Through This - The Dave Brubeck Quartet - https://www.amazon.fr/dp/B087YTC9YL
Live Through This - Dizzy Gillespie
ご丁寧に、アルバム名だけではなくアートワークも同じである。
いろんなアーティストがいる。
ここでLTT brothersのLTTというのはLive Through Thisをリリースするということかと気が付く。なんだかなあ、、、
Qobuzでは、こんな感じになっている。
https://www.qobuz.com/fr-fr/label/ltt-brothers-music/download-streaming-albums/1080879
他のレーベル?も、おそらくは似たような感じなのだろう。こういうお金儲けって何なんだろうか。
流れていくお金の透明性って確保されてるんだろうかとか、心配になる。
それとユーザーから見たら、こういう偽造再生リスト紛いがオリジナルと同列で表示されてるのは、紛らわしいこと、この上ないんだけど。
Discogsなどで何がオリジナルなのか調べながら聴かないといけない。
Dec 19, 2020
ソフトを起動する順番を変えてみる ~pulseaudioによる音声データ転送 使い方まとめ(2021.01.31. 追記)
2021年1月31日、タイトルに「まとめ」と書いている割にまとまってないので、下の方、構成を変えて多少追記した。
以前のエントリーでブレイクスルーは無いだろうと書いたことがあったが、以外なところからノイズの解決策が見つかった。
ソフトを起動する順番を変えることで、ノイズが消えてしまった。
思えば、Pulseaudioによる音声データ転送を今のシステムで始めた頃は、いつノイズが出るのか分からないような状態で、対策も闇雲な感があった。
しかし、daemon.confの「nice-level」を設定して以降から状況が変わってきた。使用開始時の再生音はノイズが増えたが(考えてみたら、これも原因不明なんだよね、、)、Pulseaudio serverを再起動したら、その後はノイズがすっかり消えてずっと安定するようになったのだ。
ただ、最初の起動時点からノイズ無しに再生できるようにする方法が見えなかった。
再起動しなければずっとノイズが続く。
サーバーで「top」を打って確認したら、再起動前後ではCPUの使用%も違う。ノイズが出ているときの方が負荷が大きい。
設定を弄るばかりで行き詰まってしまったので、操作方法とノイズの有無について再確認してみようと思い付いた。
まずサーバー起動し、Firefox、Deezerを起動し音を出したら、ノイズまみれの音になる。
ここでサーバーを再起動したら、ノイズが無くなる。
サーバー再起動の変わりにFirefoxの再起動やDeezerの再起動では、ノイズは無くならない。改めてサーバーを再起動したら、そこでノイズは無くなる。サーバーを再起動しないことにはノイズは無くならないようだ。
手順についてあれこれ考え試みているうちに、最初のサーバー起動と再起動とで何が違うのかというと、FirefoxとDeezerが動いているかどうかだ、ということに気付いた。
ここで最初の音出しに際しての手順については、今まで全く検討していないことに思い至った。
つまり、サーバーを起動した後にクライアントを動かすものだという、固定観念があったのだ。
試しに、先にFirefox、Deezerを起動して後に、サーバーを起動してみたら、ノイズがない音が再生された。
ちょっと呆れてものも言えない。
何時またノイズが出始めるか分からないので、これで最終型と言い難いのだけど、本当にこれで完成して欲しい。そんなこといいながら、実はノイズの原因とか、ほとんど原因不明なままだ。そんなことでいいのかな、という気持ちもないではないのだけど。でも解明するには分からないことが多すぎかな。
はああ、しかし取り敢えず、何とかなったぜ、、、
取ってつけたようだが、取り敢えずまとめ
過去のpulseaudio関連のエントリーは以下のとおり。
Pulseaudioを使ってRaspberry piにAmazon Prime Musicを転送再生する(9月8日追記) http://blown-lei.net/endive/blosxom.cgi/audio_diary/20200906a.htm |
音楽ストリーミングサービスのウェブプレーヤーを使う http://blown-lei.net/endive/blosxom.cgi/audio_diary/20200927a.htm |
Pulseaudioの備忘録 http://blown-lei.net/endive/blosxom.cgi/audio_diary/20200930a.htm |
ストリーミング音源をpulseaudioで転送しアップサンプリング再生する(10月15日、追記) http://blown-lei.net/endive/blosxom.cgi/audio_diary/20201011a.htm |
pulseaudioサーバーを強化する(10月24、25日、11月01、05、10日、追記あり) http://blown-lei.net/endive/blosxom.cgi/audio_diary/20201017a.htm |
pulseaudioサーバーを強化する(その2:12月11日、追記あり) http://blown-lei.net/endive/blosxom.cgi/audio_diary/20201115a.htm |
pulseaudio クライアントのFirefoxを強化する http://blown-lei.net/endive/blosxom.cgi/audio_diary/20201212a.htm |

図のようなイメージ。
普段、日常的な用途に使っているProbook 450G3を、pulseaudioクライアントとして運用。
音楽ストリーミングサービスdeezerのデータはCDと同等の音質だ。
これをLANを経由してpulseaudioサーバーにしたElitebook 2570pに送って、libsamplerateでアップサンプリングしてusb DACに送ることで、高音質再生を目指すという試みだ。
現状の音質だけど、CD音源同等のストリーミングデータを、libsamplerateで384kHzにアップサンプリングし、SMSL M500、Brooklyn Ampで出力している音として、全く不満がない再生音が得られていると思う。
Pulseaudioといえば昔は音が良くないといわれていたようだけど、本当にそうなのかな?と思うだけの音が出ている。
今のところ、ADI-2 DAC、SM-SX100で鳴らしてみたことはない。
でも、そのうち暇が出来たらやってみたいと思っている。
そういうわけで、現時点での記録を残しておく。
まず、クライアントの扱いは前回のエントリーのとおり。
pulseaudio クライアントのFirefoxを強化する
http://blown-lei.net/endive/blosxom.cgi/audio_diary/20201212a.htm
しかしノイズが無くなった現状では、あまり気にしていない。
2021.01.31. 追記。クライアントの強化については、なおのこと気にしなくなった。
firefox以外のウェブブラウザを使ってみたりしているが、操作性以外に大きな差異はないようだ。
クライアントの使い方自体をここに書いてなかったので、下記エントリーから一部引用し書き変えて記載しておく。
http://blown-lei.net/endive/blosxom.cgi/audio_diary/20200906a.htm
クライアント側の設定。設定というか、使い方だ。
先ずターミナルソフトでコマンドを打つ。$ export PULSE_SERVER=192.168.1.xx
これで、このターミナルウィンドウから起動させるプロセスが、赤字のアドレスのpulseaudioサーバーに音声データを伝送できるようになる。
同じターミナルウィンドウからコマンドを打ってfirefoxを起動させる。$ firefox
firefoxが起動したら、Deezerやyoutubeなど、聴きたい音源のサイトを開く。
続いて、pulseaudioサーバーでpulseaudioを起動した後、firefoxで音源を鳴らす操作を行う。
このfirefoxが出力する音声が、lanを通じてpulseaudioサーバーに転送される。うまくいけばサーバーで設定された出力から音が出る。この順序が重要で、順序を間違えたら再生音にノイズが乗る。
サーバーについて追記説明だけど。
複数のエントリーに渡ってああでもないこうでもないとやってるので、わけが分からない。
細かいことは、過去のエントリー参照。経過はごちゃごちゃしていて分かりにくいので、一番分かりやすくて大事なことが書いてあるのは最初のエントリーかもしれない。
http://blown-lei.net/endive/blosxom.cgi/audio_diary/20200906a.htm
うちではデフォルトでは使用できないlibsamplerateを使えるようにするのが面倒だったけど、アップサンプリングに拘りがないのであればもっと簡単に運用できると思う。基本的に、pulseaudioがインストールされているLinux PCであれば、サーバーとして機能する筈だ。
要は「default.pa」ファイルで出力先と入力先を設定。「daemon.conf」ファイルでpulseaudioの優先度やアップサンプリングなど設定。sshを使ってLan経由でサーバーの起動終了、音量とかを操作する、ということだ。
慣れない人にはハードルが高いかも。
因みに、libsamplerateを使えるようにするには、pulseaudioをソースから再インストールする必要があった。顛末は下記エントリーに記載。
http://blown-lei.net/endive/blosxom.cgi/audio_diary/20201011a.htm
サーバーの設定は以下。
default.paの設定は下記の通り。
vi .pulse/default.pa #load-module module-alsa-sink load-module module-alsa-sink device=hw:0,0 .ifexists module-udev-detect.so load-module module-udev-detect # load-module module-udev-detect tsched=0 .else ### Use the static hardware detection module (for systems that lack udev support) load-module module-detect # load-module module-detect tsched=0 .endif #load-module module-native-protocol-tcp load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.1.0/24
今回は「tsched=0」の設定を止めた。
もともと特定のサウンドボードに対応するための設定だった筈で、実際、デフォルトに戻しても今のところ不具合は感じない。
出力先の設定が「load-module module-alsa-sink device=hw:0,0」。
入力先が「load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.1.0/24」ということ。
daemon.confの設定は以下の通り。
vi .pulse/daemon.conf ; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB shm-size-bytes =32000000 ; high-priority = yes ; nice-level = -11 high-priority = yes nice-level = -18 ; realtime-scheduling = yes ; realtime-priority = 5 realtime-scheduling = yes realtime-priority = 88 ; default-script-file = /usr/local/etc/pulse/default.pa default-script-file = /home/tc/.pulse/default.pa ; resample-method = speex-float-1 resample-method = src-sinc-fastest ; flat-volumes = yes flat-volumes = no ; rlimit-nice = 31 ; rlimit-rtprio = 9 rlimit-nice = 38 rlimit-rtprio = 88 ; default-sample-format = s16le ; default-sample-rate = 44100 ; alternate-sample-rate = 48000 default-sample-format = float32le default-sample-rate = 384000 alternate-sample-rate = 384000 ; default-fragments = 4 ; default-fragment-size-msec = 25 default-fragments = 2 default-fragment-size-msec = 20 ; enable-deferred-volume = yes enable-deferred-volume = no
こんな感じ。少しずつ弄ってるけど基本的には大きな変わりは無い。
優先度を「nice-level」で設定以降、384/32が問題なく鳴らせるようになった。これは結構大きい。「float32le」を設定することで更に音質改善があったと思う。
Dec 13, 2020
pulseaudio クライアントのFirefoxを強化する
Pulseaudioを使ってFirefoxをクライアントにして(こんな言い方でいいのかね?)音声データをコンポに転送しているんだけど、Firefoxのパフォーマンス向上のために何をしているか記録しておく。効いてるかどうかは判然としないけど、端末ソフト上のエラー表示は減るようだ。
ただ、エラーがでていても聴感上は分からないんだけど。
逆にノイズがある時にエラーが表示されるわけでもない。
備忘録なので、何かあったら追記する。
about:config : Firefoxの設定変更
下記の通り設定変更。
firefoxを高速化させるとネット上にあるのをいくつか設定した。
browser.cache.disk.enable → false browser.cache.memory.capacity → 233016 network.http.pipelining → true network.http.pipelining.ssl → true network.http.proxy.pipelining → true
browser.cache.memory.capacityの数値はkb。233016が上限ということらしい。
Firefoxのメモリ使用量が増えていくのを何とか出来ないかと思ってabout:configを調べているのだけど、項目が多くて調べ切れない状況。
優先度の調整
これはFirefoxを起動する度に行う必要がある。
FirefoxのPIDを確認し「renice」コマンドで設定する。
[ab@fedora1 ~]$ renice -n -15 149587 renice: 149587 (process ID) の優先順位の設定に失敗しました: 許可がありません [ab@fedora1 ~]$ sudo renice -n -15 149587 149587 (process ID) 従来の優先順位は 0 で, 新しい優先順位は -15 です [ab@fedora1 ~]$ renice -n 0 149587 149587 (process ID) 従来の優先順位は -15 で, 新しい優先順位は 0 です [ab@fedora1 ~]$ sudo renice -n -20 149587 149587 (process ID) 従来の優先順位は 0 で, 新しい優先順位は -20 です [ab@fedora1 ~]$
こんな感じ。
プロセスの「nice値」でプロセスの優先度を表す。
-20~19の間で値が小さいほど優先度が高い。
優先度を上げるには「sudo」で行う必要がある。下げる分には必要ない。
なお「nice」コマンドを使ってFirefoxを起動と同時に優先順位を上げるのは、Firefoxの仕様で出来ないようだ。