Archive for 12月, 2019

ここ数日、「例のトリッキーなやつ」(先日の投稿の、Spotifyアプリのログから音量正規化のための値(RG値)を抽出して正規化する方法)が諦めきれず、悪戦苦闘していた。何度も諦めたのだが、そのたびにアイデアが出て来てしまって再挑戦する羽目になり、今日は随分いい感じになったのたが、やっぱり駄目だった。

記念(または証拠)に、最良の状態での動作光景を載せる。画面左上はRG値取得用Spotifyアプリ、右上はミュート(上側)・ゲイン調整+リミッター(下側)用アンプ、左下はミニプレーヤー、中央から右下は再生用Spotifyアプリである。曲間でのアンプの設定の変化や、プレーヤーの切り替わり(アプリ下部の緑の帯)に着目されたい(もちろん、手で操作している訳ではないし、マウスなどを自動操作するツールを使っている訳でもない)。

Spotifyアプリから音量正規化のための値を抽出して音量正規化している画面

動作の流れは以下である。

  1. Spotifyアプリ(音量正規化: off)が再生を開始する(またはトラックが変わる)のを待つ。
  2. アンプでSpotifyアプリの出力をミュートする。
  3. プレーヤーをRG値取得用Spotifyアプリ(音量正規化: on)に切り替える。
  4. その曲のRG値が取得できるまで(再生して)待つ。
  5. アンプにRG値を元に計算したゲイン(増幅量)を設定する。
  6. プレーヤーを再生用Spotifyアプリに切り替える。
  7. 曲の先頭に戻る。
  8. アンプのミュートを解除する。
  9. 再生を開始する。

基本動作はできた※のだが、試しに少し(15分くらい)動かしていたら、RG値取得用アプリとSpotifyサーバの通信ができなくなってRG値が取れなくなってしまった。再生用アプリの動作は問題ないので、短時間(RG値取得用アプリに切り替わっている時間は約2秒)で切り替えるとうまく動かなくなってしまうのかも知れない。まあ、再生し始めたと思ったらすぐに切り替えるなんておかしな使い方を想定していないのはもっともだから、仕方ない。

※本方式での音量正規化処理自体は、全く問題なかった。性能(音量の揃い具合)はSpotifyアプリよりも良かった(とはいえ、大差ではない)。また、前回(「と思いきや」のあと)失敗した、プレビュー版のRG値とは異なる場合が多かったので、そちらには得体の知れない値が入っているようだ。

あと、不思議なことに、投稿用に動画を撮り直そうとして再度動かしてみたら、プレーヤー切り替えのタイミングがずれて※、曲間で余計な音(RG値取得中または曲の先頭に戻る前の音)が出るようになってしまった(上の動画はボツのテイクを投稿用に少し編集している。でも、ちゃんと動いていたのは確かで、夢や幻や捏造ではないw)。だから、SpotifyのアプリもWeb APIも、こういうタイムクリティカルな用途には無理があるようだ。

※アプリの切り替え時間(= RG値の取得・処理時間= 曲間)は最初は4秒くらいだったのだが、それでは遅過ぎるので(結構苦労して)高速化・最適化したら不安定になったようだ。元の遅い版ならもう少し安定なのだろうが、それでは気分が悪いw それどころか、最初は1秒以内にしたいくらいだった。

そもそも、(前回も書いたが、)これをやりたかった理由の一つはダイナミックレンジをなるべく減らしたくないことだが、再度計算してみたら、Spotifyの音量正規化のQuietモード(基準音量: -23LUFS)を使っても2ビットも落ちないことが分かった※ので、ポップ音楽でそこまでこだわる意味は全くないから無理する必要はない。

※先日の試算では、音量を-23LUFSにするのに23dB下げると考えたが、それは誤りで、SpotifyがRG値の計算に用いているReplayGainの基準音量は-14LUFSなので、(-14-(-23)=)9dB下げる程度であり、それは(9/6=)約1.5ビット相当である。

あと、RG値取得用アプリが駄目になる問題は、例えば、通信できなくなったらしばらく(数分?)待ってアプリを再起動すれば回復できるだろうが、たとえ自動的にするとしても、再起動されるまでは聴けなくなって気分が良くないし、音量正規化のon/off切り替え時にアプリを再起動したくないからこの方法にしようとしたのに、(再生用ではないけど)やっぱり再起動が要るのでは馬鹿らしい。それに、上に書いたように、タイミングが変動して安定して動かないのでは、とても実用にはならない。

そんな訳で、結果的には無駄なことをして疲れたが、いろいろ(細かい)発見があっておもしろかったせいか、余りがっかりはしていない。むしろ、事前の予想どおり駄目だったものの、基本的には目論見どおりに動作して満足したし、方が付いてせいせいしたw

 

最後に、開発中に分かったことなどを少し書く。

  • Spotifyアプリを外部から制御するにはWeb APIとDbusの2種類でできるが、プレーヤーを切り替えて使う場合はWeb APIだけを使った方がいい。Dbusで操作すると、どのプレーヤーが対象か分からなくなったり、意図したプレーヤーが操作されなかったり、プレーヤーの切り替えがうまくいかない場合がある。
    • Web APIはかなり遅い(数百ms/回)のでDbus(数十ms/回)で高速化したかったのだが、残念ながら駄目だった。
  • SpotifyのWeb APIを短時間に頻繁に使うとサーバがエラーを返すようだ(本文に書いたエラーもこれと同様)。HTTP 500なのでアクセス制限(rate limit)ではないようだが・・・
  • 更に、頻繁に使わなくても謎の動作をする場合がある。Dbusを使わなくてもおかしくなることがあるようだ。
  • 曲の開始直後に先頭にシークすると前の曲にジャンプしてしまうようで、少し待たないといけないようだ。
  • Linuxのサウンド系には謎の損失(音量低下)があるようで、どこかで4dBくらい音量が下がる。PulseAudio(実際にはALSA)からJACKに入るところか、JACKからサウンドカード(実際にはALSA)に出るところかと想像している。
    • ポップ音楽用の音量正規化の場合、目標の音量をReplayGainと同じ-14LUFSにしたので、理論上はアンプのゲインをRG値そのものにすれば良いはずなのだが、この損失を戻すためのゲイン(4.5dB)を加算した。
    • なお、クラシック音楽用ではその損失を加味して、4dB下げるだけで目標の音量(-23LUFS)になった。
  • (書いても誰も分からない気がするが、)本方式の制御プログラムでは、2つのイベント入力(SpotifyアプリのログとDbusのイベント)を混ぜて受信することで、両方ともタイムアウトなしの受信にすることができ、イベントに対するレスポンス時間の短縮と負荷の軽減ができた。でも、本文に書いたように、高速化したら逆効果だったようだw

 

PS. それにしても、昨日(12/29)までは年末という気がしなかったのだが、今日(12/30)になったら急に「今年ももう終わりか」モードになって、妙に慌ただしい気分になってしまった。そして、「年末なのにプログラミングなんてしている場合かっ?」て気もしたが、特に他にすることもないので問題ないw

  •   0
  •   0

近頃始まった話ではないのだが、僕は自分でも妙だと思うタイプミスをする。例えば以下だ。

  • で → 「て」、が → 「か」
  • l → "1"

キーが隣とかなどは分かるが、そうではない。どうも、読みや見た目で間違うようだ。僕はそういう風に文字を打っているということなのだろう。読みでの誤りに関しては、頭の中でそういう音を出して(読んで)打っていると考えれば腑に落ちる。しかし、見た目に関しては、別に(80年代のようにw)紙のリストを見て打ち込んでいる訳じゃないので、全く謎だ。

見た目について考えてみた。思い出すと、それはプログラムを入れる時に起こった。打つ時は頭の中にプログラムが浮かんでいる(でも、ずらっとしたリストではなく、打ち込みながら、「トラックのRG情報を計算する」のようなふわっとした処理内容から漠然とした行が浮かぶ)のだろうが、プログラムのキーワードは文章のようには読めないので、見た目で間違うのではないか。

余談だが、"l"と"1"は間違うが、"l"と"I"はフォントによっては区別が付かないけれど、おそらく間違わない気がする。これも理由が良く分からないが、昔の小型タイプライターは"1"と"l"を共用していたせいか? (確か、"1"のキーはなかった気がする。) ← うわ、Courier Newだと、"l"と"1"の区別が付かないよ・・・

逆に、英語の文章は読んで打つらしく、"l"と"r"を打ち間違う(というか、どっちか分からない※)ことがあるが、それは読みではあるけど次元が違う問題だw

※「計算機」や「図書館」は鬼門だ。打つスピードが必ず下がる。しかも、大抵間違っているw

仕事をしていないのでボケが始まったのかとも心配したが、まあ、プログラミングはできるから大丈夫だろう・・・

 

でも、もしもいつか完全にボケてしまって、パスワードマネージャのマスターパスワードを忘れたら、それから一体どうやって暮らして行けるのかと心配になった。手帳に書いておいたって、きっと(その存在すら)分からなくなるはずだ。会社に良く居ると言われる情弱おじさんのように、ポストイットに書いてディスプレイでも貼っておく? (でも、今は、それはそれほど悪くないらしい) いや、それも意味が分からなくなるはずだ。

まあ、その時はパスワードマネージャを使う必要がなくなっている(PCを使うことすら思い付かない?)から問題ないのだろうか?

そもそも、そういうITのない生活に戻るってのは想像の域を遥かに超えている。そうなる以前前に、いつかPCは終息するのだろうが、その時に、今蓄えているデータはどうなるのか、新しいものに移行できるのか、する気力はあるのかなどと、ちょっと心配している。

例えばデータフォーマットの問題だ。いつか廃れてアクセスできなくなってしまう。JPEGやPDF、HTMLだって永遠に有効ではないだろう。データベースなんて結構危ないな。MP3やFLACはどうなんだろうか。そういう世の中は他人事ならなかなかおもしろいが・・・ 最後はプレーンテキストとか紙とか石が最強なのかね・・・

でもまあ、急にそうなる訳ではないだろうから、まあ、おいおい考えればいいかw

  •   0
  •   1

昨日、血圧で医院に行った。先週、随分低い日があったので相談したら、一時的なものは問題ないとのことだった。そこまでは良かったが、平均値とか値の変化を見ないと分からないと言い出し、血圧を記録する手帳を渡して来た。「いや、もう持ってるから」と思って返したら、

次からは忘れないで持って来て下さい。

だと。は? お前は(昨日だけでなく、今までずっと)「手帳を見せてくれ」なんて言わなかったし、血圧の値すら聞かなかったではないか! (昨日だって、「薬を出す」と言われてこっちから相談するまでは、値の話なんて全然出なかった) だから持参するのも(スプレッドシートからの)転記も止めたのだ。その場はやり過ごしたが、帰宅してからムカつきが高まってきた。今はもう、完璧に行く気がなくなっている。

技術はあるのだろうが、患者が多くて忙しいにしろ、あんないい加減な対応では駄目だと思ので、別のところを探すことにした。窓口の方や看護師さんは良くて元気が出たのに残念だが、肝心の医師がクソでは信頼できない。特に、血圧なんてずっと掛かるのに、ああいう輩ではちょっとどころか一万%遠慮したい。

ただ、近くにそこ以外の内科の医院がないのが問題だ。何とか歩いて行ける範囲にはあるが、具合が悪い時が心配だ。でもまあ、「その時はその時」だ。

気分の悪くなる病院は最低だから。

結果論ではあるが、患者への対応の良さに関しては、血圧で最初に掛かった医院が良かったようだ。が、切ってしまったものは仕方ない。でも、謝罪してそこに戻るのもいいのかも知れない(でも、止めた時の投稿を見たら、ずさんなところがあると書いてあったので、駄目かもな)。

それにしても、田舎の欠点はいろいろあるな。。。 とは言え、都会でもひどい医院・病院が多かったのも確かだ。

  •   0
  •   0

Spotifyの音量正規化の改良では散々試行錯誤したが、ようやく自分が納得できるかたちで実現できた。もちろん、結果(性能)も全く問題なかった。音量(Integrated loudness)の値は全く問題なかったし、随分聴いてみたが、(自作とは全然違って、)我慢できないほどうるさい曲(演奏)※も小さ過ぎるものもなく、随分手を焼いていた曲もあっさり大丈夫だった。これなら気楽に聴いていられそうで、ようやく目的が達成できた感じだ。

※正確には、「うるさい」と感じる演奏はある。が、その音量値は全く異常でなかった。ということは、音作り(周波数分布や音質の悪さ? いわゆる「海苔波形」?)によるのか、僕との相性が悪い(音の好みや聴覚のラウドネス特性とのズレ?)のだと思う。実際、不思議なことに、アンプの音量を小さくしていても、いつもうるさく感じる演奏はやっぱりうるさく感じる。つまり、「うるさい」は音量が大きいだけではないということだ。まあ、語義からしても当たり前か。

以下に試行錯誤の経過や内容を書く。

前回の投稿ではSpotifyの音量正規化のNormalとQuietを手で切り替えて使うと書いた。そして、前回も書いたが、音量を揃える(増やす)ために増幅してもそれほど音質が劣化しないことが分かったので、その方法を詳しく検討した。基本的には、単に(ソフトの)アンプで増幅すればいいのだが、使う要素(アンプの種類)や増幅する量を最適にしようとしたのだ。

まず、以下を試した。増幅量は+11dB(-23LUFSを-12LUFSにしようとした)にした。

  • JACKのjack_mixerのボリューム:音は悪くない感じがした。 → その後、長時間聴いたら耳閉感が起こった。
  • PulseAudioのボリューム (Spotifyのsink-input):音が悪い感じがした。わずかに耳閉感が出た。

PulseAudioでの増幅で音質劣化がありそうだったので、何種類かの増幅量で歪率を測定したが、オーバーフロー(0dBを超える)しなければ(+15dBくらいまで)は問題なさそうだった。それで、実際の曲で試したら、ポップ音楽でも意外にダイナミックレンジが広いようで、+9dBでも簡単にオーバーフローした。

それで、リミッターでオーバーフローしないようにすることにした。PulseAudioで増幅してオーバーフローすると、その時点で歪んでしまうので、あとにリミッターを入れても無意味なので、JACKのアンプ+リミッターの構成にすることにした。リミッターにもいくつかの種類があり、以下でオーバーフローさせて試したが、いいものは少なく、結局、Fast Lookahead limiterを使うことにした。これには入力にゲインがあって、それがアンプの役割をするので丁度良かった。

  • Fast Lookahead limiter: 一番いい感じ。過大入力でも、自然な音で0dBを超えないように制限される。
  • Wave Shaper (Sine-Based): 過大入力(例: +17dB)で音が変わる(歪む)。
  • Simple Limiter (Peak Env. Track.): 過大入力(例: +17dB)で「ワウワウ」になる。
  • Calf Sound GearのCalf Stereo Tools: 最初は良かったが、長く聴いたら耳閉感が起こった。
    • 後述のNon Mixerにした時に、バイパス機能とSoftClip(リミッター)があるので試した。

それから、Spotifyの音だけを増幅したいので、SpotifyのJACKへの出力を独立にし、更に、ポップ音楽用とクラシック音楽用で増幅をon/offする必要がある。

その前に、いつも評価用に使っている曲をSpotifyの正規化(Quiet)+増幅(+9dB)で試したところ、殆どのポップ音楽は問題なかったが、"Speak to me"は駄目で、Normalと同様な不自然さがあった。原因を調べたら、前回の投稿の付録に詳しく書いたが、オーバーフローがリミッターでカットされる時間が長いためだと分かった。それで、増幅量を+6dBに減らし、リミッターの回復時間を長く(2秒)にすることで不自然さを緩和した。回復時間を"Speak to me"の鼓動の周期より長くすれば、ずっと音量が下がったままになるので、不自然さが緩和されるのだろう。完璧ではないが、"Speak to me"のような曲は例外的だから許容できると考えた。ただ、他の曲が不自然になるかも知れないので、その時に調整したい(今のところは問題ない)。

結局、以下の3つのモードを作ることにした。

ポップ向けでの増幅量について: 通常のReplayGainで正規化する(あるいは、0dBまで目一杯出す)他のプレーヤー(具体的にはgmusicbrowser, GMB)と音量を揃えるにはなるべく上げる方がいいが、前述したオーバーフローによる劣化も嫌なので、試行錯誤(勘?w)で決めた。+7dBだと、SpotifyのQuietモードでの基準音量 -23LUFSを-16LUFSまで上げることが期待できる(当初は+10dBして-13LUFSくらいにしたかったが、やり過ぎのようだ)。

3つのモードはミニプレーヤーのボタン(右端の"Sp", "S", "-")で切り替える。音量正規化の有無はSpotifyを再起動すればいいが(とはいえ、重いから避けたかったが、それ以外に方法がないので仕方ない)、JACKのアンプで外部から制御できるものがなかった(後述するように、実はそうではないが、当時はそう思っていた)ので、増幅の有無の切り替えが困難だった。それで、接続(配線)を変えることにした。簡単に書くと、以下のように切り替える。

  • 増幅あり: Spotify → アンプ → ミキサー → 補正用イコライザ → 出力
  • 増幅なし: Spotify → ミキサー → 補正用イコライザ → 出力

なお、なるべくSpotifyを再起動しないで済むように、右クリックで音量正規化モードの切り替えを逆順にできるようにしたのだが、順番を覚えていないためにやっぱり再起動になる羽目になるので、マウスオーバーでガイドを出すようにした。

なお、プログラム(xdotool)でリミッター(アンプも兼ねる)のEnableボタン(中央付近)を押すことでも、増幅の有無の切り替えが可能なので試してみたのだが、勝手にマウスが動くと(その後自動で元に戻しても)結構ストレスに感じるし、その時の操作状態によっては誤動作・操作することもあるので止めた。

その後、モード切替のたびに接続(配線)を変えるのは全然スマートでないし、遅いし、JACKサーバへの負荷が重そう(頻繁に繰り返すとおかしくなりそうな気がした)なので、避けられないか考えた。それで、以下の2種類を順に試した。

  1. OSC(Open Sound Control)という仕組みで外部プログラムから制御可能な、Non Mixer(エフェクタも入れられるミキサー)を使い、リミッターの増幅量を変える。
    • Non Mixerはエフェクタのon/off(Bypass)を外部プログラムから制御できないので、増幅なしの場合にはリミッターの増幅量を0dBにすることで、offの状態にした。
    • この方法には実用上は何も問題がなく、充分良かったのだが、微妙に気に入らないために別の方法を探して、次の項のjack-rackになった。例えば、以下が気に入らなかった。まあ、車で言えばトヨタのように、「ソリが合わない」ってやつだろうかw まあ、jack-rackが駄目なら戻ればいい。
      • 外部からBypassが制御できない。ゲインでもできるけど、何か直接的でない。
      • 大げさ: ウインドウが無駄に大きいけど小さくできない(確か、一番幅を狭くした状態がこれ)。
      • 名前が悪い(結構真面目に良くない)。「おフランス」なのだろうか?
  2. MIDIでjack-rack(エフェクタを入れるソフト)を外部プログラムから制御し、リミッターのon/offを切り替える。
    • 試行錯誤の結果(以前試した記録が役に立った)、MIDIを使う方法が分かり、どうにかjack-rackも制御できるようになったので、リミッターのon/offが外部から制御できるようになった(のEnableボタンを押すのと同じ効果)。
      • ただし、ちょっとしたバグがあり、jack-rackの起動後にMIDI設定のダイアログが出てしまうが、仕方ない(これを自動で閉じるようにしたら動作がおかしくなってしまったので、手で閉じることにしている)。
      • ↑面倒だし目障りなので、xdotoolで"OK"ボタンを押すようにして自動で閉じるようにした。ただ、ウインドウサイズが変わると予期せぬ事態が起こりそうだ。 (18:19)

MIDIについての特記事項を以下に列挙する。

  • JACKサーバ: MIDIドライバ(midi-driver)に"seq"を指定する。
    • 上記設定をすればa2j_control(a2jmidid)は不要と思われる。
  • MIDIの配線: 当然ながら、JACKで、外(ALSA?)からのMIDI情報の出口(僕の環境では"Midi-Through:midi/playback_1")と制御対象の要素(jack-rack)を接続しておく(図左側の赤線)。
  • MIDI制御情報の送信: sendmidiコマンドを利用した。他にもあるが、僕には一番使いやすかった。
    • 実行例: sendmidi dev "Midi Through Port-0" ch 1 cc 0 0: (僕の環境・設定において)jack-rackの"Enable"をoffにする。
      • 注: 上記MIDIデバイス名はJACKでのもの(一つ上の項に書いた)とは異なる(ALSAのもの?)。sendmidi listコマンドで名前を確認すること。
  • jack-rackの設定: 制御したい要素(例: ボタン)上で右クリックすると設定ダイアログが出るので、そこにチャネル番号(sendmidiのchに指定する番号)とコントローラー番号(sendmidiのccに指定する番号。正式な名称は不明)を設定する。
    • この方法がなかなか分からなくて諦めていたのだが、jack-rackのgithubのページでようやく分かった。
    • Enableについては、設定値に127以上を指定しないとEnable状態にならない(Disable状態にする時は0でいい)ので、0と256を指定することにした。
    • あとで使うかも知れないので、Input gainとWet/dryも設定できるようにした。
  • どうしてか、(音と違って)JACKでの正式なMIDIのポート名は"system:midi_playback_1"のような分かりにくいものになり、起動のたびに番号が変わる感じで(要確認: 思い違いかも知れない ← クライアント(jack-rack)側の名前の番号は、起動順序で変わるのかも知れない)、自動で配線を保存・復元する機能がうまく動かなかった。それで、現在使っているMIDIの線は1本と少ないので、自動保存・復元の対象にせずにJACKの起動スクリプトで個別に配線することにした。
    • JACKの設定などで直るのかも知れない。
    • ↑JACKの設定ではなく自動で割り振られるようなので、JACKサーバ起動時にMIDIポート名の変換テーブルを作り、接続の自動保存時に、そのテーブルを元に、クライアントの起動順序で変わらないポート名(alias)に変換して保存するようにした(変換後の名前でも接続できるので、復元は問題ない)。 (12/23 22:42)
  • MIDIではデバイスの設定状態を取得することができない(標準的な方法がない)ので、アンプの状態は常に「上書き」する(現在の状態と比較するようなことは行わない)ことにし、設定後に状態をファイルに保存しておき、ミニプレーヤー(minisp)の起動時に保存された状態を再設定することにした。
    •  (ソフトの)MIDIは高速だしデータ量も少ないから、これで大きな問題はなさそうだ(世の中の電子楽器は基本はそうなのだろう)。
    • また、再生停止中にJACKサーバが再起動することもあるので、再生開始時にそれを検出したら(サーバの起動後に起動時刻をファイルに記録しておく)保存された状態を再設定することにした。上で「問題ない」と書きつつも、毎回無意味に設定するのは気分が悪いので、ここでは無駄な設定を省くようにしたw

それから、Spotifyの音量正規化(改良版)の性能を自作の方式と比較した結果を書く。双方で共通する38曲(演奏)について比較した。

判定条件

  • 音量の許容範囲: 基準(中心)から±2LUFS以内 (幅: 4 LUFS)
    • 音量(Integrated loudness)が上記許容範囲内なら問題なし(○)とする。
    • 問題なしの外側2 LUFSを可(△)とし、可の外側を不可(×)とする。
    • 下記の「偏差」は、音量が許容範囲の外側(○以外)に出た量である。

Spotify (Quietモード)+増幅 (ポップ音楽用: "Sp")

  • 設定
    • 基準音量: -16 LUFS
    • 音量の許容範囲: -18 .. -14 LUFS
  • 結果
    • 範囲内(○): 35曲 (92%)
    • 可(△): 3曲 (7.9%)
    • 不可(×): 0曲 (0%)
    • 合計: 38曲
  • 統計量
    • 音量の平均: -15.8 LUFS
    • 音量の標準偏差: 1.39
    • 偏差の平均: 0.1 LUFS
    • 偏差の標準偏差: 0.39

自作の方式 (ポップ音楽用: "Pk")

  • 設定
    • 基準音量: -20 LUFS
    • 音量の許容範囲: -22 .. -18 LUFS
  • 結果
    • 範囲内(○): 25曲 (61%)
    • 可(△): 9曲 (22%)
    • 不可(×): 7曲 (17%)
    • 合計: 41曲
  • 統計量
    • 音量の平均: -19.5 LUFS
    • 音量の標準偏差: 2.80
    • 偏差の平均: 0.74 LUFS
    • 偏差の標準偏差: 1.54

はっきり言って完敗である。Spotifyには不可(×)の曲がまったくなかったのには感心する。しかも、範囲内(○)に収まっている率が1.5倍と高く、音量のばらつき(音量の標準偏差)は半分以下、偏差の平均は1/7以下である。(数値的には)充分に音量が揃っていると言える。

ただ、負け惜しみではあるが、Spotifyは必要なデータを使って「普通に音量正規化(ReplayGain)をしている」のだから、良くて当たり前だとは思う。が、自作で情報(RG値)が不足した状態でいくら頑張っても勝ち目はないし、意味がないことは確かだ。

最後に、今回分かったことなどを列挙する。

  • クラシック音楽は予想以上にダイナミックレンジが広い。例: チェロの演奏(「無伴奏チェロ」 "Suite No. 5 in C Minor BWV 1011: V. Gavottes I & II")でもピークが平均値+約18dBまである。
  • 思い込みかも知れないが、日本のポップ音楽は比較的音量が揃っている。正規化後の音量が申し合わせたかのように基準値付近だった。国民性?
  • どうしてか、Calf Studio Gear(JACK Audioのエフェクタのスイート)はやっぱり駄目だった。リミッターですら耳閉感が起こる。根本的に作りが悪いのだろうか? でも、誰も文句を言っていないようだから、僕との相性なのか・・・
  • 少しだけでもMIDIの使い方が分かったのは収穫だ。演奏はしないが、JACKの要素の制御に使えるのが便利だ。
  • 同様に、今回は使わないことになったが、OSCも制御に便利そうだ。ただ、手間を掛けてそういう新しいのを作らずに、Dbusを使えば良かったのにとも思う・・・

これにて音量正規化問題は一旦終了!

一段落して、心置きなく気楽に音楽が聴ける。

 

と思いきや、、、毎度のことながら、そうは問屋が卸さなかったwww

昨夜、複雑なために一旦諦めたトリッキーなSpotifyの音量正規化用の値(以下、RG値)取得の方法を、なるべく簡単に実現するにはどうしたらいいかなどと考えながらSpotifyのログを眺めていたら、思わぬ展開になった。すごく簡単に取れるかも知れないことが分かったのだ。

RG値はSpotifyアプリのログに出ることは分かっていたが、音量正規化をonにしないと出ないし、その仕様がいつなくなるかも知れないのだが、SpotifyのWeb APIのGet a Trackなどで取れるプレビュー(試聴)用のMP3ファイルに入っていたのだ。全くコロンブスの卵というか、灯台下暗しだ。

その前に、RG値も入っていると思われる、ヘッダ部("head file")取得用URLがログから分かり、その中身はBase64エンコードされたOggだったので、「もしや!?」と思ったのだが、曲のデータ同様中身が暗号化されていてお手上げだった。

ただ、プレビュー用のファイルを普通にsoxiやexiftoolやプレーヤーで情報を表示してもなぜかRG値(例: REPLAYGAIN_TRACK_GAIN)が出ないので諦め掛けたのだが、ffprobeでは"Side data"として出た。だから、通常のMP3での格納方法ではないのかも知れない。あるいは、僕がMP3に詳しくないだけか?

↑調べたら、MP3のRG値は「LAMEタグ」というものに入るようだ(MP3の標準タグ(ID3v2?)に入らないのかは分からない)。eyeD3というコマンドに--lametagというオプションを指定すると見られる(そうしないと見られない!)。あ、lameはフリーのMP3エンコーダだから、LAMEタグという名前からして、それが独自に付けているようだ。ということは、入ってないものも、将来なくなる可能性もありそうだ。MP3は随分使われているのに、RG値すら標準で入れられないのだとしたら、なかなか面妖だなあ。。。 (18:51)

それで、その値が正しいかを確認するため、数曲で全体(全曲)とプレビュー版のRG値(track gain)を比べた。なお、全体のRG値はSpotifyアプリのログから抽出した。

  • 夏の扉
    • 全体: -8.71 dB
    • プレビュー版: -9.30 dB
    • 差: -0.59 dB
  • どうにもとまらない
    • 全体: -8.64 dB
    • プレビュー版: -9.10 dB
    • 差: -0.46dB
  • Speak to me
    • 全体: +13.49 dB
    • プレビュー版: +14.10 dB
    • 差: +0.61dB
  • Born to be wild
    • 全体:-3.64 dB
    • プレビュー版: -3.40 dB
    • 差: +0.24 dB

一見、全体とプレビュー版で随分値が違っていたのでがっかりし掛けたが、差を求めたら1dB未満(0.5dB前後?)なので、使えるかも知れないと考えた。

最初はRG値の差は圧縮率の違い(全体: 160kbps, プレビュー: 96kbps)によるものだと思ったが、その後、プレビュー版は先頭の30秒だけで、RG値もその部分のものであるために異なっているのではないかという懸念が生じた。それで、先頭の音量は小さく、後半に大きくなる曲("Stairway to heaven")で確認したら、プレビュー版のRG値も全体ものらしいことが分かった。: プレビュー版のRG値は全体の値とほぼ同じで、更に、手持ちのもの(マスタリングが異なるかも知れない)の先頭を切り出してRG値を求めたら、(先頭は音量が小さいため、)プレビュー版や全体より随分大きな値になった。以下にそれらの値を示す。

  • Spotify
    • 全体: -5.26 dB
    • プレビュー版: -5.0 dB
  • 手持ちの曲の先頭(30秒)の切り出し: +5.2dB (GMBで求めた)

実際、手持ちの演奏のラウドネス(Integrated loudnessをebur128コマンドで求めた)は13.3LUFS違っていた。

  • 全体: -11.1 LUFS
  • 曲の先頭(30秒): -24.4 LUFS

念のため波形を比較すると、確かに先頭と全体の平均音量は10dBくらい違っていそうだから、きっと大丈夫だ。

"Stairway to heaven"の振幅: 上: 全体, 下: 先頭30秒 (縦軸はdB)

実際、Spotifyの立場で考えると、プレビューを提供するためだけに全部の曲のRG値を計算し直すのは馬鹿らしいし、プレビュー版の再生時に正規化するとしたら(実際にはしないと思う)、全体のRG値でする方が本来の雰囲気に近く、「試聴」の意図に合うから、全体のRG値を入れている(実際には全体の値を捨てずに残しているだけ?)のは腑に落ちる。想像だが、この値はレーベルから提供された試聴用ファイルに入っているものなのではないだろうか? (音源提供者向けの案内を調べれば分かるかも知れない)

プレビュー版内のRG値を使う場合には、以下のような手順で「普通の」(自分の好きな基準音量に合わせられ、Spotifyアプリのリミッターを回避する)音量正規化ができそうだ。

  1. Spotifyアプリが再生開始するのを待つ。
  2. API: Get a Trackを使い、プレビュー版を取得する。
    • Get a trackのpreview_url要素より。
  3. プレビュー版のファイル(MP3)からtrack gainを抽出する。
    • ffprobeを使う (exiftoolやsoxiでは出ない)
  4. 音量正規化処理を行う。
    • 抽出したtrack gainに従って、音量補正値をアンプに設定する。
      • 基本的にはtrack gain(dB)そのものをを設定すればいいが、オーバーフローを回避するために、適切にオフセットする(下げる)必要がある。

あとは作るだけ。だが、ちょっと疲れた。それに、寒いしお腹空いたしw

 

と書いたところで、思わぬ落とし穴に気付いた。: すべての曲に、あるいは、今後もずっと、プレビュー版にRG値が入っているか疑問だ。入ってない曲があったり、いつかなくなる可能性がありそうだ。上に書いたように、この値は使われることがないだろうし、意図的に捨てていないからあるだけで、Spotifyのサービスの仕様ではないからだ。

そうなっても、(今までのように、)いくらでも回避策は考え付くだろうが、結局、堂々巡りになりそうな感じだ。それだったら、(音質などが完璧ではないものの、)気楽に聴ける今の状態で満足するのが一番得策な気はするが・・・ うーむ。 まあ、興味本位で「お遊び」でやるなら ありかな(いや、全部遊びだがw)。

↑イマココ

(12/25 12:41) 「プレビュー版のRG値で正規化」をちょっと試してみた。結論は、やっぱり駄目だった。以下に理由を書く。

  • 予想どおり、RG値が入ってない曲がある。確率は5%程度ではあるが、少なくない。
  • 更に、RG値がおかしい曲もあった。こちらは10%程度と多い。
    • 数曲について、Spotifyアプリのログに出る全体(正式版)のRG値とプレビュー版のRG値を比較したところ、正規化後の音量が駄目だったものは大きく異なっていた。
    • 逆に、プレビュー版のRG値で正規化でも問題ない場合は近かった。
    • 当然ながら、全体のRG値で正規化した音量を計算したら基準範囲内だったので、問題なさそうだった。

どちらも致命的だ。評価用プレイリスト(ポップ・クラシック合計約90曲)で試したところ、ポップ音楽はまあまあだったが、クラシック音楽は惨憺たる結果だった。うまく行くものもあるから、その曲のプレビューのRG値が良くないのだが、どうしてそうなのかは分からない。プレビュー部分だけのRG値が入っているとか、元の版が違う(プレビュー用は初期のマスタリングなど?)とか、テキトーに計算したとかだろうか。いくら原因が分かっても、プレビュー自体すらなくてもいいような状態でSpotifyは全く保証していないので、対処してもらえる訳がない。

プレビューですらこんなことでは、以前書いた、ログからRG値を抽出する「トリッキーな方法」なんて余計駄目だろう。

いずれにしても、結果としてはイマイチだった。これがうまく行ったらすごくいいと思うが、やっぱり問屋が卸してくれなかった・・・ まあ、作るのはそれほど大変でなく、いつものようにおもしろかったからいいや。

そういう訳で、今は元の状態に戻して、「気楽に聴ける」状態になった(この音量正規化が破綻しないのには本当に感心するw)。これを試した一番の理由の、正規化をon/offする時のSpotifyの再起動を回避する件については、別の方法を考えたい。

一応、設定画面を開かずに、外部から音量正規化をon/offする方法はないかSpotifyに聞いたが、「ない」とのことだった。まあ、それは仕方ない。きっと、かなりニッチな要望なのだろう・・・ (12/25 15:38)

(とりあえずは、)本当に一件落着■

 

(題の漢字は、各自自由にご想像下さいw)

  •   0
  •   0

どっかの国の政府とか軍隊みたいに、勝算がないのに精神論(利権も?)で金・労力を投入して無理な行軍を延々と続けて、最後に、さまざまな言い訳をしながら形式上は「成功」などと発表してドヤ顔して(それどころか、首謀者が逃亡・知らん顔して、)煙に巻くのは愚の骨頂だ。駄目なものはなるべく早く気付いて切る(少なくとも、再検討や方向転換する)のが重要だ。

試行錯誤しているSpotifyの音量正規化処理の改良だが、ポップ音楽モードがそこそこ うまく行って、クラシック音楽モードも調整して目処が立ったものの、今朝寝ながら思い付いた(気付いた)。Spotifyアプリの(標準の)音量正規化機能がどのくらいのものなのか、それと今回の自作の方式にどのくらいの差があるのか確認しようと。特に、曲の特徴量のデータが誤っているのではないかというくらい大音量になるいくつかの曲(例: "Take My Breath Away", "Catacombae")は、Spotifyアプリの音量正規化ではどうなるのか興味があった。

やってみたら、多くの収穫があった。

  • Spotifyアプリの音量正規化の性能はいい。自作の方式よりずっと音量が揃う。ポップ音楽での音量幅(ラウドネスの不揃い度)は、自作の方式では、(試した数曲の音量の範囲が広かったとはいえ、)おかしい音量になる曲を除いても、目分量でSpotifyの2倍(LUFS値の幅)くらいだった。おかしい音量になる曲を含めれば数倍になる。
  • Spotifyアプリの音量正規化のうち、Quietモードでは、Normalモードと違い、すごく静かな曲(例: "Speak to me")を不自然にしてしまうコンプレッサー(のような処理)が働かないようだった。
  • Spotifyアプリの音量正規化用の値は、ログやコンソール出力から取得できる。ただし、音量正規化をonにしていないと出ない。

Spotifyアプリの結果を聴いたら悔しいくらいだった(上記の困った曲が何の問題もない音量で出ていた)。悔しいけれど、結局、自作の方式でいくら頑張っても苦労ばかりで余りメリットはなさそうだ(そもそも、目的はそこにない)。それよりは、Spotifyアプリの音量正規化をうまく使えばいい。

一番手軽なのは、音量正規化をする場合は常にQuietモードを使うことだ。これなら、ポップ音楽でもクラシック音楽でも切り替え不要で、静かな曲でも音が不自然になることはなさそうだ。ただ、目標音量が-23LUFS程度と小さいので、もったいない気がする。特に、ポップ音楽では、もっと音量を上げてSN比を向上させたりダイナミックレンジを減らさないようにできる(だからNormalモードを使いたいのだが、例のコンプレッサーが邪魔だ・・・)。が、そもそも、音量正規化して聴くというのは、BGMのように気軽に聴いている時であり、その時にSNだのダイナミックレンジだのと言っても無意味だ。逆に、真剣に聴く時には音量正規化を使わないから、これで問題ないとも言える。

少し前に試行錯誤中に知ったのだが、Spotifyアプリの音量正規化はトラックモードとアルバムモードを自動で切り替える(アルバム再生時は後者になる)とのことなので、自作しようと思った切っ掛けの一つの、アルバムモードがないことも解決できた(この機能は後から追加されたのか、最初からあったが公表されていなかったのか)。そういう点でも、特にモバイルなどで切り替えずに使いたいなら、Quietモードにしておけば不便はない(まあ、モバイルでは周囲が騒がしいので、すごく静かな曲が不自然でも問題なさそうだから、Normalでもいいとも言える)。

ただ、Quietモードのもう一つの問題は、音量が小さいので他のプレーヤー(僕の場合は、gmusicplayer, GMB)と合わないことだ。これは結構厄介だ。Spotify(音量正規化)からGMBに切り替えた途端に大音量(約+11dB, 3.5倍)になるので、常に注意が要るし(大抵忘れて驚くw)、アンプの音量調整が煩雑だ。アンプの音量を変える代わりに他のプレーヤーの音量を下げる手もあるが、やっぱり「もったいない」から避けたい。逆に、Spotifyアプリの音量を後で大きくして合わせる手もあるが、一旦小さくしているのを増幅すると音質が劣化するから嫌だ。

書いた後で気付いたが、小さくしたのを増幅すると音質が劣化するというのは本当だろうか? (アナログでなく)ディジタルなので、増幅でオーバーフローしない限り、小さくした時より劣化することはない気がして来た。あとで検討したい。 ← データフォーマットにも関係ありそうだ。 → 検討結果を付録に記載した。 (12/19)

調べると、-23LUFSというのはEUの放送の基準レベル、あるいは、クラシック音楽向けだそうで(USや日本の放送は-24LUFS)、それに合わせるのは悪くないとは思うものの、自分の閉じた環境なのに一律に低く合わせるのはやっぱりおかしい気がする(実際、SpotifyやYouTubeの基準は-14, -13LUFSと、-23LUFSよりかなり大きい)。

以下に、候補とそれぞれの欠点をまとめる。

  • 自作の音量正規化
    • 音量を揃える能力がSpotifyより低い。
    • 全然揃わない曲がある。
    • 原因: Spotifyから音量正規化のための値(ReplayGain)が取れないので、音響的特徴量から推測しているため。
  • Spotifyの音量正規化: Quietモードのみ
    • ポップ音楽でダイナミックレンジがもったいない。
    • 音量が小さいので、音質が劣化する?
    • 他のプレーヤーと音量が揃わないので不便。 → 増幅すると音質が劣化する(要確認 → 検討結果を付録に記載した。 (12/19))。
    • 原因: Quietモードは音量が小さいため。
  • Spotifyの音量正規化: Normal, Quietモードを切り替える。
    • Normalで不自然になる曲(静かなもの)がある。
    • 原因: Spotifyアプリの処理(コンプレッサー?)が入ることがあるため。

上述のとおり、自作の音量正規化が駄目なのはSpotifyからReplayGainが取れないためなのだが、どうにかして取る方法はないかと試行錯誤していたら、思わぬことで取れた! 既に書いては居るが、アプリのログやコンソール出力に表示されるのだ。以下に"Speak to me"での例を示す。太字がトラックのReplayGainである。

02:05:55.089 I [libvorbis_ogg_decompressor.cpp:401] track gain: (13.25Db), track peak: (0.409425dB), album gain: (-5.09dB), album peak: (1.02865dB), normalization: trackgain

ちなみに、それらはGMBでの同じ曲(同じマスターと思われる)でのReplayGainの値と概ね合っていた。

なお、peakの単位が"dB"と書いてあるが、誤りであろう(正しくは単位なし)。同じく"Db"もtypoだろう。ここら辺は そうなる状況が分かる。つい指が動いたとか、余計にコピペしたとか。「(見ると気になるけど、)デバッグ用だからまあいいか」、みたいなw

それで、自作の音量正規化にSpotifyのReplayGain(以下、"RG")値を使う(苦肉の)策を考えた。理論的には、RG値取得用と再生用の2つのSpotifyアプリを使えばできそうだ。以下に手順概要を示す。

  1. 再生用Spotifyアプリを音量正規化offにする。
  2. RG値取得用Spotifyアプリをログまたはコンソール出力ありで起動する。
  3. RG取得用Spotifyアプリの音量正規化をon(NormalまたはQuiet)、音量=0(-∞ dB)にする。
  4. RG取得用Spotifyアプリで再生開始する。
  5. ログまたはコンソール出力からRG値を取る。(すぐに出るはず)
  6. RG取得用Spotifyアプリを一時停止する。
  7. 得られたRG値で再生用Spotifyアプリの音量を調整する。(現在の自作と同じ方法)
  8. Spotify APIを使い、有効なプレーヤ(デバイス)を再生用Spotifyアプリに切り替える。
  9. 再生用Spotifyアプリで最初から再生開始する。

ちょっと手で試して、やればできそうな気はしたが、(すっかり忘れて居た)昔のGoogle play musicの時(→ )と同様に、余りにもトリッキーで嫌になるくらいだ。また、アプリが2個なのでメモリも2倍食いそうなのも嫌だ。そもそも、ログにRG値が表示されるのは仕様でもなんでもないので、出なくなったら元の木阿弥だ。。。

だから、やっぱり筋が悪い。

そして、作るのは面倒だw

それで、とりあえずは、Spotifyの音量正規化機能を使うことにし、ポップ音楽とクラシック音楽でNormal(ポップ)とQuiet(クラシック)を切り替えて使ってみて、Normalでどのくらい不自然な曲があるかで判断することにした。Normalで駄目な曲は(DBに記録しておいて)自動でQuietに切り替える手が考えられるし、多かったらQuietだけ使うとか、上のトリッキーな手を使うことも考えられる。

それにしても、「とりあえず」のNormalとQuietを手で切り替えて使うにも自作ミニプレーヤー(minisp)に多少の変更が要るので、「ちょっと疲れたから、まあ明日にするか・・・」と一休みしているw ← イマココ

相変わらず寄り道が多く、先は長いw

 

(12/19 16:40) 付録: (デジタルで)増幅すると音質が劣化についての検討

結論は、「理論的には劣化しないが、現実には劣化する」である。以下に理由を書く。

まず、本文に書いた状況での音質劣化は、音量を下げた時点で生ずるものが主である。音量を下げることによってデータの有効ビット数が減るため、振幅分解能が減る(例: ものすごく小さい音が消える)ためだ。音を格納するデータフォーマットが浮動小数点型であれば、おそらく分解能が減ることはないが、整数型の場合には減る。その程度は以下のように試算できる。

音量を-23dB下げた場合、1ビットは約6dBなので、23/6= 約3.8ビット減る。

これによるダイナミックレンジの減少量は、データフォーマットを16ビットとすれば、3.8*6= 22.8dBである(音量を下げた分(23dB)そのもの)。

(2020/1/2 12:28記) 注: その後、Spotifyが音量正規化値の計算に使っているReplayGainの基準音量は-14LUFS相当であることが分かった。そのため、実際に下がる音量は9dB程度で、減るビット数は1.5ビット程度と少なく、特にポップ音楽では、音質の劣化もダイナミックレンジの減少もほとんど問題にならない。

実害について考えれば、対象はポップ音楽であり、そのダイナミックレンジを高々18dB(約3ビット分)程度と推測すれば、音量を下げた残りのビット数は16-3.8= 12.2ビットで、音源の3ビットより充分大きいので、記録された振幅がよほど小さくない限り、問題ないと考えられる。

次に、増幅の影響を考える。増幅は乗算なので全く音質が劣化する要素はないが、現実には、処理系や出力のデータフォーマットは整数型で取り得る範囲が有限なため、大きく増幅すると上限を超えて(オーバーフローして)音質が劣化する。つまり、波形の超過分がカットされるので、音が変質する(例: 歪む)。

この検討中に気付いたのだが、私が"Speak to me"で感じた不自然な感じは、オーバーフローによるものだった。具体的には、音量正規化時に過大に増幅するとオーバーフローが生じ、その超過分をカットすると生じる(これはリミッターの動作であり、本文中の「コンプレッサー」は実際にはリミッターであった)。

不自然さが起こる原因を詳しく推測すると、この曲は低音(鼓動)が強いため、それがオーバーフローしてカットされるのだろう。カットされるのが単発的(不定期)や短時間(瞬間的)に起こるのなら気づきにくいからまだいいのだが、この曲の場合は、定期的に起こる鼓動で、テンポが遅いために比較的長時間音が大きい状態なので、カットされる期間が長く、その間の他の音の聞こえ方が変わって不自然になるのだろう。

この現象はSpotifyアプリの音量正規化だけでなく、私の環境でも起こったので気付いた。具体的には、次のような処理をした時に、Spotifyアプリの音量正規化(Normal)と同様の不自然さが生じた。

Spotifyアプリの音量正規化(Quiet) → アンプ(増幅率: 6-9dB程度) → リミッター

また、Spotifyアプリの音量正規化(Quiet)だけでは不自然さは生じなかったので、問題はリミッターに起因する可能性が高い。

なお、「リミッターが原因だったら使わなければいい」ということはない。リミッターがなくても、超過分はどこかで(例: DACで出力する時)カットされ、それはリミッターよりもひどい音質劣化を生じる可能性が高い。

(12/19 22:23) 補足: 上でデータフォーマットを16ビットと想定したのは、Spotifyアプリの出力がそう("s16le")だからで、通常のOSのサウンドシステムはもっとビット数の多いフォーマットをサポートする。例えば、私の使っているJACK Audioは32ビット浮動小数点である。だから、音質の観点ではSpotifyに音量正規化をさせるのは得策でない。上述の、音量を下げることによるダイナミックレンジの低下などが起こる。が、もし仮にJACKの中やその手前のPulseAudioで行うなら、劣化する可能性はほとんどない。

その後の増幅はJACKで行っているので、通常の増幅率ではオーバーフローしないから、音質劣化も発生しないはずだ。しかし、元々のデータが最大値に近いほうに詰められているためにオーバーフローするし、そうでなくてもDAC(サウンドカード)に出す時にオーバーフローする。それを防ぐには、リミッターを入れるか、音量を下げて(= 適当な値で除算して)全体的なレベルを小さくして(= 小さい方にずらす)DACに出すことが考えられる。

結局、後者はSpotifyの音量正規化(Quietモード)の小さい音のまま出力することと同等である。もちろんそれでも良かったのだが、他のプレーヤーと音量を合わせたいから増幅しようとした。

 

PS. SpotifyアプリからのRG値取得には、音楽圧縮フォーマット展開用ライブラリ(vorbisを使っているようだ)をすげ替えればできるかと思ったのだが、自前で作っているかスタティックリンクしているらしく、外部のものは使っていなかった。考えが甘かったが、まあ、そうれはそうだろう・・・ あとは、逆コンパイルしてバイナリエディットとかいう手もあるかも知れないが、「うーん」だ。それに、プログラムの改ざん検証をしているかも知れないから、できないかも知れない。

なんてことを考え出すから、寄り道が増える訳で・・・

  •   0
  •   0

使っているうちに不満(例: うるさい曲がある)が出て来たために、Spotifyの自作ミニプレーヤー(minisp)の音量正規化処理で、音量の補正量をやはり自作再生履歴DB(Mlhi)に記録しおいてそれがあれば使えるようにしようと思ったのだが、そもそも、元々の方式がいい加減では補正ばかりになって良くないことに気付いた。それで、まずは音量正規化処理を改良することになり、今は、その改良した方式の評価のために、Spotifyで再生している曲の音量を自動で測定する機能を作っている※。音量はできるだけ聴感に近い方がいいので、ラウドネス(Integrated loudness: "I", 参考)にした。随分目的から離れてしまった気がするが、きっと気のせいだろうw 自分でやり出したこととはいえ、なかなか面倒だが、いろいろな物を組み合わせて機能を実現するのはおもしろい。

※なぜ自動化しようと思ったのかというと、ラウドネスメーターはあらかじめ曲の先頭で計測開始しておかなければ、正確なIntegrated loudnessの値が出ないので、だらだらと評価がてら聴いていて「大き/小さ過ぎるかな?」(調整がおかしい?)と思ってからでは遅く、再計測しなくてはならないからである。再計測にしたって、曲全体を再度聴くのは苦痛なので、先頭だけなど一部になって、正確でなくなってしまう。曲間で自動リセットしてくれるような測定アプリがあればいいが、そういうものはなかった。また、GUIに表示された測定値を見て手で記録するのは面倒だし間違い易いから、自動でファイルに記録できれば好都合だ。

更に、複数の補正条件・設定の比較についても、それぞれの条件で評価用のプレイリストを再生しておけば(僕が聴いて居なくても、スピーカーで音を出さなくても)通して測定できるので、(この機能が完成した暁には)容易になるはずだ。

更に、普通に再生しながら、補正条件とその結果の音量を測定してDBに記録しておき、次回はそれに基づいて最適な音量に調整するってことも可能な気がしていて楽しい。

更に、今思い付いたが、AIみたいな機能で、長時間いろいろな曲を自動再生して勝手に学習させて、設定を自動調整するなんてのもいかにもおもしろそうだが、先は長いし、そもそもSpotifyを聴くだけなのにそこまでする必要があるのかと・・・w

こうやって風呂敷夢を広げるから、大変になるのだ。

詳しくは別に書くつもりだが、音量正規化の基本的な処理は、従来と同じようにSpotify APIで取得できる曲(トラック)の特徴量(loudnessとenergy)を組み合わせて、曲の本来の音量を推測(復元)し、それを元に正規化している。今回は、その推測の方法を改良しようとしている。今までは思い付きで対数あるいは指数関数を使っていたが、今は下のグラフのような、energyによって特性(係数)が変化する式を試している。グラフはいかにももっともらしくて うまく行きそうに思えるが、そんなことはないw それに、これは何かの理論に基づいている訳ではなく、やっぱり思い付きや試行錯誤からの経験によるものである。試すとまあまあうまく行く(しないよりはずっといい)のだが、やっぱり限界はあるし、値に問題はなくても聴覚に合わないことがある(合わないものが充分に少なくなったら、補正量をDBに入れようと思っている。が、いつになることやら・・・)。

あと、以前のように、公開DBに音量正規化用の値(再生ゲイン)などがないか探したたら、2つ見付かった。一つは前回も見付かったDynamic range databaseで、もう一個はAcousticBrainzだ。前者は、前回は(記憶している限りでは)APIがないのとレパートリーが狭そうなので止めた。後者は、言い方は悪いが「玉石混交」(「ゴ○屋敷」などもっとひどい言い方はあるが、それは言い過ぎだろう)で、全く手軽に使えないので却下した。確かにデータは多いのだが、全然整理されておらず、ただ数字があるだけで、同じIDなのにそれぞれ随分違っていてどれが正しいのか分からず、禄に検索もできなかったら、どうやって使うのかと思う。

作業の途中で分かったことも多かった。SpotifyのAPIから得られるloudnessは多くの場合はIntegrated loudnessまたはReplayGainと同様(同等)のものなのだろうが、そうでないことも多い。中で変・特殊な処理(音量(loudness)が小さいけどenrgyが大きい曲では更にloudnessを小さくしているフシがある)をしている可能性と、データが誤っている場合もありそうだ。そもそもSpotifyアプリで使っている再生ゲインを出してくれれば、こんな苦労をしなくて済むのだが(アプリの一時ファイルを見たりしたが、それらしい値は見つからなかった)・・・

そもそも、Spotifyアプリの音量正規化処理が「普通」だったら、こんな苦労は全くしなくていい(実際、したい訳じゃなくて、ただ音楽を聴きたいw)のだが、前回書いたように、やっぱり謎の処理をしていることが分かった(何人かの方が書かれていた: )。どうやら、アプリにコンプレッサーとかリミッターのような処理が入っていて、特にすごく音量が小さい曲(僕が気付いた曲: Pink Floyd: "The dark side of the moon"の"Speak to me")でおかしくなるようだ。再生ゲインの値がおかしい可能性はあるにしても、せめてその余計な機能がなければまだ良かったのに、どうもお節介な感じだ・・・

ラウドネスの測定プログラムは、GUIのものならいくつかあるのだが、測定・記録を自動化するのは困難なので、スクリプト(jack_captureで音を録り、ffmpegのebur128フィルタでラウドネスを計算する)を作ってミニプレーヤーに組み込んだ。基本的には、ただ再生しているだけでデータが貯まるから楽ちんなのだが、例によっていろいろ凝るから本末転倒になって、処理が複雑になればバグは増えるからデバッグが大変で、また勝手に疲れている。 ← イマココ

 

PS. 以前、「Spotifyには満足している」と書いたが、誤りではない。が、それはあくまでも曲目と音質についてであって、機能は別であるw

PS2. これを書いていて、技術バカにありがちな、「フラット(あるいはリニア)信仰(あるいは症候群、至上主義)」という言葉を思い付いた。やっぱり、こだわり過ぎは駄目なんだろうと思う。が、気軽に聴いている時に、曲のたびに「うるさい!!」とか「小さい・・・」とイライラしてボリュームを調整するのは嫌だってのは大いにある。

PS3. Evernoteやスマフォ・PCのおかげで紙やペンとは無縁の日々なのだが、さすがにグラフの形を考えるのはEvernoteでは無理で(タブレットなら手描きできそうだが、それも煩雑な気がする)、紙が必要だった。が、すぐに使えたのは小さい電話用のメモ帳しかなかったw

(12/14 13:11 少し修正)

  •   0
  •   0

もう、あの頃の歌詞の世界観は全く通用しないなぁ・・・ いや当時がいい・戻れとかじゃなくて、いつの間にか(というほど短くは感じないが)随分時間が過ぎたなあと。

Sugarは結構いいんだけど、もう復活することはないのが残念だ。

SugarとWinkと岡村孝子は近い時代の気がするものの、実は違うと思っていたのだが、調べたらやっぱり近かったので、愕然とする間もなく腐敗し始めてしまった。じゃあ、遠いのは誰だったんだろう? Winkなのかな。

(書いた後で気付いたが、)そもそも、今あの歌詞を出したら大炎上するだろう。サビの「くたばっちまえ(以下略)」のところだって、「(私達の宗教を)馬鹿にするな!!」と、とんでもないことになりそうだ・・・ てことは、あれはもう放送できない歌なのかねえ?

あと、そんな「ヒロシ」って誰なんだ? いや、別に誰でもいいがw

今更ながら、ジューシィ・フルーツの演奏はかなりかっこいい。(コミックバンドとしてしか写して・扱っていなかった、)当時のTVとは印象が全然違う。もったいなかったなあ(いや、もう遅過ぎるが・・・)。

それから、「今は駄目」と言えば、「隣のインド人」なんてのを出したら、即座に炎上するんだろうか? 当時はおもしろく聴いていたが・・・

(12/13 13:28 少し加筆)

  •   2
  •   0

お名前.comの解約に数か月要している。最後に残っていた仕事用ドメインの期限切れから2か月くらい待っても一向に解約できないので問い合わせしたのだが、一週間経ってようやく回答が来て、来年の1月中旬に解約できることが分かった。 随分先だと思ったが、良く考えれば一か月も先ではないか。。。

解約できなかった原因は先日の台風だった。僕の住んでいる市が先日の台風の被災地に指定されていたらしく、そのために、失効ドメインの復活期間のようなものが延長されていた。そんなの全然知らなかった。それはwebやあそこからの(スパム)メールを見れば分かったのだろうが、メールなんてゴミばかりなので受信してない。大体、こっちから「退会したい」って言っているのに、「台風の被災者でしょうから期限を延ばしたので、その間は解除できません!!!! (キリッ)」てのが全然理解できない。被災者だったら退会の連絡なんてしないだろうに・・・ 誰か理解できる???

日本人は、おそらく、こういうのが日本ならではの「おもてなし」だと誇りに思って居るのかも知れないが、僕にはまったくありがたくない。鬱陶しいだけだ。多くの外国人だってそうだと思う。ありがたがるのは一部の変人だけだ! そんな無駄なことしなくていいから、もっとまともになれよ!!

この点に関しての想像を書くと、実は海外の方が融通は効くと思う。多くの国に行ったことはないが、困った時に頼んだり相談すれば、いろいろ対応しくれることが多いと思う。困ってなくたって、細かいオーダーをしても嫌がられないと思う。日本は全然そうでなくて、頼んでもいないのに(向こうが思う)「親切」を押し付けられ、逆に、向こうの規則に外れることは全力で拒否されるのが嫌だ。

そもそも、お名前.comのサポートすら、そういうことが即座に分からなかった(問い合わせしてから一週間掛かった)時点で終わっている。会員DBにすら書いてないのだろうか。もちろん、僕が何度解約しようとしても失敗して出て来た、「解約できないです」ダイアログにはそんなことは書いてなかったし、「マイページ」をいくら見たってそんなことは書いてなかった。クソ過ぎる。いや、クソ以下だ。

「お名前.com 解約 できない」や「お名前.com  クソ」などで検索すれば、文句は大量に出て来るが、(そういう文句があっても知らん顔しているほどだから、)あそこには本当に関わらない方がいい。サポートの「人」はまだいいのだが(でも、処理が遅過ぎる)、会社のシステムやwebや自動送信メールがクソ過ぎる。お偉いさんや技術者はクソばかりで、まともなシステムを作ろうとしない・作れないようだ。

そういうのに嫌気をさしてGoogleのドメインサービスに移った(その時にも書いたが、あそこは本当に、普通に/でいいw)のだが、そのあとでお名前.comを解約しようとしたら、それすらマトモにできないというオチだった。いやあ、本当に絶句だ。先日ムカついたNRTの会社よりひどい※。

※そのFocusrite Scarlett Soloの故障の件は、その後、予想外にも動作確認されたが、「(海外の)メーカーからパーツを取り寄せ中」だかで、数週間待たされている。いやあ、普通は在庫の新品と交換だろう。それに、そもそも「は? お前のところでパーツなんて交換できる訳ないだろ!」って言いたかったが、まったくの無駄なので止めた。ここで突っかかると、難癖付けられて修理してもらえなくなるような気がする(苦情を投稿している人は、そういう目に遭ったのではないか?)。

無駄とは思いつつも、昨日来た、「台風のため」の回答に文句を書いて出したが、それへの返事が来る前に、ワンパターンのアンケートメール(サポートの質を知りたいらしい。(それ以前に、会社の質を答えたいが!) 担当者が「完了」ボタンを押したのだろう)が来て、思わずイライラが沸点に達した。もちろん回答なんてしない。あんなの飾り以下で、"/dev/null"あるいはブラックホールに書き込むのと同じで、本当になぁぁぁぁぁぁんにも意味はないんだから!

 

注: 以上はすべて個人的な感想です。各自の条件・状況によって変わる可能性は0ではないかも知れないです。僕は0だと思いますが。知らんけどw

PS. 今日のエポックメーキングかつ哲学的な、まさに"Nothing is real"な世の中の真理を突いた閣議決定にならい、すべての言葉の意味は状況によって変化するために、定義することは不可能、かつ、定義する気もないので、そこんとこヨロシクw

  •   1
  •   0

昨夜、まとめサイトで見て吹いた。これは大いにやって欲しいw

猫バンバン

猫には何をされても許せるのが怖い。あ、でも、糞尿は嫌だ・・・ 学生の頃、バイクが尿で臭くなってムカついて、目の敵にしていたのを思い出した。あと、車での爪研ぎも勘弁して欲しい。

真面目な話、昔はこんな習慣がなかったから、僕は今まで一度もしたことがなく(これからもする気はなく)、猫が被害に遭ったのを見たことも聞いたこともないが、都会では多いのだろうか?※ そもそも、普通の野良猫は乗ってドアを閉める音で驚いて逃げると思う。都会の猫は鈍いのか?w

※今思ったが、これって、良くある都市伝説(というのか、一見もっともだが、実際には無意味な・架空の行動やマナーの類)なのかも知れない。プルタブやペットボトルのキャップを集めて云々や「江戸しぐさ」みたいな。

と書きつつ、そういえば、海外のニュースで、エンジンルーム内で何匹かの子猫がニャーニャーしていた写真を見て目を細めた覚えがあるし、エンジンルーム内に木の実を貯めこんだリスの話があったし、上のページにも体験談が書いてあるから、やっぱりあるのだろう。

それから、上のページには「自動猫バンバンを作れば」とあったが、ドアを解錠する時の電子音がその役目を果たしていないものか。足りないなら、音と同時に振動させれば良さそうだ。バッテリーは食いそうだが。それか、解錠時にエンジンルーム内で猫の嫌がる音(掃除機の音??)を出すとか。あとは、エンジンルームに猫が嫌う臭いのコーティングをするとか(熱ですぐに駄目になりそうだが)。こういうのなら自動車用品屋で売って・売りそうだ。

でもまあ、そうやって人が猫に配慮すると、どんどん猫が退・怠化してしまう気もする。やっぱり、猫と人は一触即発・弱肉強食・切磋琢磨の関係でありたいものだw

  •   0
  •   0

ショパンのピアノ協奏曲 第1番 第2楽章の後半(3/4辺り)にグッと来た。彼のピアノ協奏曲にはいろいろ不満な点はあるが、やっぱり、才能ある作曲家の作品だ。(と、いつもどおり偉そうなことを書くw)

ちなみに、ピアノはピレシュ(1979)。水晶のような音が良かった。SpotifyのDaily mixにて。

 

ついでに。その後、今掛かっている、モーツァルトのピアノ協奏曲 第24番 第2楽章の前半(1/4辺り)にもグッと来た。ピアニスト(Benjamin Hochman(2019))のおかげか、のどかな雰囲気で、今日はそれもいい。後半(3/4辺り)の、岩に染み入るような音も最高だ。

  •   0
  •   0

古谷経衡は元々嫌いではなかったのだが、この記事を読んで、良く居る「いかにも口やポーズや笑顔ばっかりの、意識だけ高い無知な若造」とは違って、とても好感が持てた。例えば、彼は、記事を書くに当たって、批判対象の出した本を読んでいるし、その他の下調べもしっかりしているようだ。今はなかなかそういう人は少ない。大抵は、(自著などでない限り、)受け売りベースではないか。(そういう僕も受け売りだがw)

 

でも、彼の写真(外見)は損してると思うなあ・・・ わざと? 露悪家? でも、そういうとこも嫌いじゃないねw

 

PS. 古谷が引用して意味不明と言った、「原理的に、自律分散型システムは」のくだりは、確かに意味不明なのだが、技術者にすれば、一見「確かに」と思わせる。そういうところに、まんまと東大のジジイ連中をだまくらかした腕があるのかも知れない。

  •   0
  •   1

ニュースを読んで思った。

ある、旬をとうに過ぎたニューミュージック系とかデビュー当時は女子大生らしかった歌手(当時は僕も好きだった)が、久し振りに「紅白」(の、紅でも白でもないゲスト的な枠)に出る理由を推測した記事だ。記事自体が推測だから、それを前提とした意見には意味がないかも知れないが、何となく普遍性がありそうなので書く。

その人は、近頃出したとかいう数十周年記念のベスト盤の売れ行きが悪いから、焦ってテコ入れのために紅白に出るという推測だ。

クソ過ぎる! 近頃何もしてない(いや、もちろん何かしては居るだろうが、「世間には認知されていない」の意)のにベスト盤が売れる訳がないのをなぜ気付かない? そもそも、何度も出しているんだから出さなくても良かったではないか(僕だって何度目かのをレンタルしたことがあるが、大量に曲はあっても一部しか聴く気にならなかった)。出せただけでもいいじゃないか。それ以上に、出しても売れないなら、それが「自分の客観的な評価」と思えないのか? その理由を考えて、愕然とした。

金か?

クソが!! 当時はものすごく売れたんだから、もう十分じゃないか。なぜ まだ取ろうとする?

そういう連中は、芸術をやるつもりは毛頭なくて、単なる金儲けでやっていることが分かった。あとは承認欲求か。無駄だし無意味だから、止めろ。

芸術は、まずは自己満足だ。それを公開した時に、分かってくれる人が一人でも居れば十分じゃないか。と、僕は思うが、それが正しいかは分からない。

まあ、それでも誰も買わなければ、本人も身にしみて分かるかな?

 

PS. そういう意味では、僕の仮想お姉さん、岡村はやっぱり純粋だと思う。クソなベスト盤なんて出さないだろうし、オリジナル作でもベスト盤でも、売れなくたって決して焦らず、ちゃんと理解して地道に続けるはずだ。 (いや、本当のところは分からない。そのうち、生活費のため、あるいはNHKに請われて、のこのこと紅白に出たりたりしかねないので、油断できないw)

PS2. 本文に書いた人の作品は、関連作を除いてSpotifyに一つも入ってなかった(以前からそうだった)。そんなスタンスじゃ売れなくても仕方ないと思うが、どうして大丈夫と思ったのかねえ。。。

  •   1
  •   0

何かで"others"という単語を見たら(もう、何だったか忘れたw)、「アザース」という読みが浮かび、そんな流行語があったと思った。

調べたら、偶然にも、近頃復活したとかいうコメディグループの番組が発祥らしい。

 

だけではおもしろくないので、ついでに: さっきSpotifyからこんなメールが来た:

2019年にSpotifyで聴いた曲数

平均すると約13曲/日で(重複を除いているのか不明だし)、多いのかどうかは分からないが、Spotifyには大変お世話になっていることは確かだ。

それで、そのメールに記されていた2019年のまとめページを見たら、トップのアーティストは意外にもカーズだった。ページに"Say thanks"というボタン(ツイートするようだ)があったが、写真(にもあり)に写っているのは(オールが死んでしまっているため)3人で寂しいうえにオケイセックも死んでしまって、まさに「ありがとう」と言いたい。

ちなみに2位はユジャ・ワンだった。これも意外だが、彼女はいろいろといい^^ ただ、5位までに大好きなルガンスキーが入ってないのは不思議だ。何かおかしいのかも知れないが、まあいい(彼はもっぱらSpotifyでなく手持ちの音源で聴いていたからかも知れない)。

なお、1位(loved most)の曲は去年と同じく、ヒューイ・ルイス&ザ・ニュースの"The power of love"(1985)で、これは本当に大好きだ。

他には、59か国の曲を聴き、特定ジャンルに固定せず("refused to let one sound define you.")、436もの新しいアーティストに触れたそうで、まさにSpotifyならではだ。

ページの最後に「良かったら(SNSなどに)どうぞ」みたいな画像があったので、ここに貼る。

2019年のSpotifyのまとめ

Spotifyにも「ありがとう」と言いたい。

(と、オチを付けてみたw)

 

PS. 投稿を見直して思い付いた。自作の音楽再生履歴管理システムMlhiを使って、手持ちの音源も合わせた順位も出すとおもしろそうだが、SQL(検索コマンド)を考えるのがちょっと面倒だw 日々、聴いた履歴は記録されているのだが、その活用まではなかなか手が回らない。

ちなみに、MlhiのDBに入っているのは延べ約4500曲(今年の中頃から)なので、ほとんどはSpotifyで聴いているはずだ(感覚とも合っている)。

PS2. Spotifyが出て来たのでついでに書くと、今年は1枚もCDなどを買わなかった。それでいいか悪いかは別として、(曲目も音質も)何も不自由していないどころか充分に満足しているから、きっといいことなのだろう。

  •   1
  •   0

以前にも書いたが、ライブドアニュースの「女子」のカテゴリは興味を持って見ている。しかし、「よくこれは炎上しないな」と思うことが多い。今日も、「なんだよそれ…オトコに「意外と不評」な4つのアイテムとは」というのでは、「量産型ファッションは微妙……」とか書いてあって、「おいおい」って思った。あと、こういうのに振り回される女子が可哀想だ。

僕はファッションには全く縁がないけど、(記事中の)「量産型」もリバイバル・レトロも個性的なのも露出度が高いのも全部いいじゃないかw ていうか中身だと思う。

こういう記事は、女性が女性向けに、体験談をもとに、(指示とか強制でなく)アドバイスとして書いている建前だから炎上しないのだろうか(似たようなことを前にも書いて、どなたかに読者層によると教えられた気がする)。まあ、それはともかく、同じようなことを男が書くと、表現や書く場所によっては恐ろしいことになるのはちょっと止めて欲しいw

  •   0
  •   0

そろそろドライブに行きたくなったが、寒かったり疲れていたり眠かったり、タイミングを見計らって(渋滞や人混みは嫌だから平日にしたかったのと、晴れて暖かい日が良かった)延期していたのだが、今日は珍しく暖かく、(早く起きてしまって寝不足ではあったが)気力もあったので、地図を見て近場で見つけた森林公園に軽く行くことにした。車と散歩がメインだが、季節(延期ばかりしていたせいで、実はもう終わり頃?)なので紅葉も観られればと思った。

9:30頃出て、10時頃着いた。ナビが変な道を出して(というか、僕が例によって一つ手前で曲がったりしたw)ちょっと苦労はしたものの、近くて楽だった。意外に駐車場は埋まっていたが、人はそれ程多くなかった。ハイキング(ちゃんと装備しているが、登山ほどではない感じ)帰りの人が多かった。近くの古賀志山に登ったのだろうか? ただ、学校の遠足で登るほどでそんなに大きな山ではない記憶があるから、他にも登るところがあるのかも知れない。

行く前は「ちょっと歩いたらデニーズに行こう」と思っていたのだが、湖面と青空紅葉などが綺麗だし、空気が気持ち良かったので、結果的にはダム湖を一周していた。大きなダムではないので、徒歩でも全然問題なかった。奥に進むと、葉っぱのいい匂いがした。ところが、突然、地鳴りのように「ゴー」っと音がしたので結構驚いた。地震だった。あとで調べたら、震度3だったようだ。

ダムに戻ったら、ダムの斜面に見覚えがあるのに気付いた。帰ってから調べたら、2004年の正月に行っていた(15年前なのだが、そんなに経ってない気がするものの、実際には今までにいろいろなことがあったので、何とも不思議な気がする・・・)。帰省して暇つぶしに行ったのだろうか? その時はダムの奥(今日車を停めたところの向こう岸: 写真の中央奥辺り)にあるレストハウスのようなところまで行って、そこから少しだけ歩いたようだ。その時は野鳥が多かったが、今日はほとんど見なかった。もう少し後なのだろうか?

その時の写真をちょっと載せる(そんな昔の写真でも「赤川ダム」で検索したらスパっと出たから、デジタルはいいし、管理ソフトをdigiKamに戻して良かったw)。

一時間くらいで戻った。気持ち良かった。ここは近いし、細道はないし、歩くにも丁度いいから、なかなか気に入った。

それから、いつものデニーズに向かった。意外に近く、公園・ダムから10kmくらいだった。前回だったかの小泉さん(仮)に似た人は居たが、本物は居らず、別の方が社員らしい制服を着て居た。

今気付いた。その店員さんは顔がスケートの鈴木明子に似ているのだ。それにしても、小泉今日子と鈴木明子に共通点はなさそうなのに(鈴木の顔はちょっと怖いけどw、どちらも好きだ)、なぜ似ていると思うのだろうか。謎だ。でも、これからは鈴木明子さん(仮)と呼ぼうw (20:37)

トムヤムクンフォーがおいしかった。やっぱりむせたが、その危うさがいいw ここのはハーブが少ない(僕には丁度いい)から安心して食べられる。約1300円だった。

眠さと疲れでいろいろボケた。水に入れる氷のサービスはなくなったのかと思って諦めたら、隣に機械があったw (それはそうだ。ドリンクバーでだって使うではないか。) 眠気はメニエール病の一部の薬のせいかと思っていたが、それを飲まなくなっても眠いから、疲れなのかも知れない。

それから、南の方に少し遠回りして帰った。家の近くですごく眠くなったり、予想外にトイレが切羽詰まって注意力散漫になったが、大半はとても気楽にドライブが楽しめて、もちろん車は(近頃は余り乗っていなかったものの、)超調子良く、スコスコっとギアが入って滑るように走り、でもスピードは上げず、「(気合なんて入れなくても、)こういうのでいいんだよ。」という気分だった。まあ、堕落とか老化の極みであるwww

13:30頃帰宅した。楽しかったけど、寝不足のせいか、ぐったり疲れてすごく眠かった・・・

ドライブ中に掛かった"This boy"(1963)のイントロが良かった。さっき家でも掛けたが、やっぱり、イントロのアコースティックギターの音のキレがすごく良く、しかも、弦を上から下に弾き下ろす(これはアルペジオと言うのだったか?)「グリーン」とか「ジャリーン」て音がたまらない感じ(音色にはキレがあるのだが、音(演奏)はちょっとダルい感じがいい)で、グッと来た(2009リマスターにて)。収録アルバムは"A hard day's night"(1964)だと思って居たが、実はシングルで、近年のアルバムでは"Past masters"に入っていた。

約4時間、54km。
IXY Digital 3000IS(2004年はIXY Digital 30)で撮影。

(21:04 若干加筆)

  •   1
  •   0

例の「データは破棄したから残ってないよ」の件で、ちょっと逆張りしてみる。

北から「隅々何一つ欠かない完璧な馬鹿」と絶賛のトップが分かってないのは当然として、それを叩くマスコミもそれに情報を流す「ITジャーナリスト」も分かってない。以下、日刊ゲンダイDigitalの記事「名簿破棄の大嘘 安倍首相「シンクライアント」でまた墓穴」記事の2ページ目より引用:

「それでも元データが消えるなんて、あり得ません」と言うのは、ITジャーナリストの井上トシユキ氏だ。こう続ける。

「シンクライアント方式は完全なデータ消去が困難なシステム。単なる中継サーバーならともかく、集中管理している大本のサーバーが現在も稼働していれば、元データは確実に残っています。削除しても特殊なソフトウエアを使えば復元可能です。

(以下略)

「へー、そうなんだー。すごいね」(棒読み)と言いたいw

一般論ではそうかも知れないが、仮に政府のサーバ(この記者が「サーバー」でないのはおかしいとか言っているのは こそばゆいし、逆に、某トップが「サーバ」と言ったのは、なぁんにも分からないながらも、一応、レクを覚えていたってことだろうw)が、USの国防総省にあるような(想像)すごいシステムを採用していて、削除したファイルが本当に復活できないようになっているかも知れないし(これは可能だ。良くある、完全消去アプリと同様)、普通のサーバだって、常時稼働しているのなら、削除してから長時間経ったら、ストレージの使用領域が一周して、ファイルが上書きされてしまって復活できない場合もある。後者だったら、どんなソフトでも復活は無理だろう(まあ、それでも些細な物理的な痕跡を元に復活させることもあるようだが、「確実に残っている」と言えるかねえ・・・)。

論理的に考えれば、いかなるストレージも有限の容量なので、元の記録に上書きすれば記録はなくなってしまう。もしそうでなくて、いかなる記録の履歴も後から自由に取り出せるとすれば、「(経済的に)無限の容量を実現できた」ってことで、ノーベル賞くらいはもらえるのではないかw 無限でなくても、書き込んだらすぐに削除すれば、少なくとも2倍には使えるはずなので、僕は是非その方法を教えて欲しいくらいだwww

それにしても、この記者も「ITジャーナリスト」も、実物(サーバや構成)を見てもいないのに、良くこんなことを自信満々に言えるものだ。野党も、こういう筋で突いて本当に復活できなかったら、折角の穴が塞がれてしまいかねないではないか。一休さんのように、「削除したデータを復活させられるのなら、端末をお貸ししますので、是非お願いします。丁度困ってたんですよー」とか言われて駄目だったらどうするんだろうか?w

まあ、実際問題としては、データはどこか(例: バックアップ(の履歴)、担当者のPC(「シンクライアント」と言っても、きっと誰かのノートPCにあるよw)、紙)に残っているのは確実だ。でも、この件の一番の問題は、国政の情報を余りにも短期間に削除する(恣意的にそうすることが可能な)規則にしたことだと思う。

まあ、情弱(ITどころか、政治だか行政だかの基本すら分かってない)の極みというか、逆に斜め上を行っているというのか、「すごい」と言って絶句するしかない・・・

 

PS. データの復元(一般論)、それから、記録を残すことの重要性については、こちらの記事が正しい。ちゃんと分かっている人も居た。 (12/4 16:20)

  •   0
  •   0

記事を読んで欲しいなら、自分のアイコンくらいちゃんと選んで欲しい。

嘘臭くにやけた顔、暗くて良く見えない写真、コメディアン丸出し、顔そのものに嫌悪感w これじゃ読む気は起きないな。

最初(見出しだけで却下)と最後(実はマトモ)は仕方ないけど、他はなぁんにも考えてないのかね・・・

 

PS. と書きつつ、「猫はいいのか?」と自問してしまったが、まあ、上に挙げた人たちよりは良さそうだw

  •   0
  •   0

銀行振り込みって、基本的には平日の昼間しか実行されず、限られた「進んだ」ところ同志でだけ24時間できるイメージだったが、それはもう間違いのようだ。夜に(地元のしょぼいw)地銀に即時振り込みできてしまったのだ。

僕がメインに使っているネット銀行は、口座引き落としの対応する相手が少なく、しかも、地元の自治体や業者は地元の地銀や郵便局にしか対応していないことが多いため、どうしても地銀に口座(と残高)が要る。先日、気が早くも※来年の引き落とし分を振り込もうと思って処理したのだが、後で良く考えたら多過ぎたことが分かった。住民税が掛からなくったり国民年金が免除になったりしたから、前もって再計算しようと思っていたのに、それを忘れて、以前計算していた額を振り込んでしまったのだ。

※PCに古い予定の通知が出たのが切っ掛けだった。新しい予定には、ちゃんと、「金額を再計算」と書いてあったのに、その古い予定に書かれていた額を再計算後と思い込んでしまった・・・

ただ、夜だったから余裕で取り消せると思って再計算を始め、その途中で地銀の口座を見て目を疑った。さっき手続きしたお金がもう入っていたのだ。まさに「は?」だwww

そういえば、少し前※に24時間即時振り込みできるようになったとかのニュースがあったが、意外にも僕の地銀も対象だったようだ(その時は「(その銀行)は遅れているから関係ないよなあ」とか思っていたw)。

※ 少し前どころか、去年から始まっていたようだw → 参考

まあ、振り込め詐欺wに引っ掛かったとか騙されて変なものを注文した訳ではないから何も損はないが、数年間は無駄にその地銀にお金を置いておくことになるので、ちょっと気分が悪かった。

言ってみれば、いつの間にか世の中の進歩に遅れた浦島太郎だったってことで、まったく忸怩たる思いだw

 

PS. だけど、その地銀もメールで「便利になります!」とか連絡してくれたっていいと思うのは、(いつも「うるせえ!!」とか思う僕には)自分勝手な言い草なのか? 実は来たけど読まずに捨てた? そういえば、近頃何も連絡がないが、何かおかしなことになってなければいいが・・・

  •   0
  •   0