2022年10月4日火曜日

ぐすたふの音楽天国の2022年10月のオンエア曲目リストです

 ここしばらく、FM HOT 839ぐすたふの音楽天国のことをお伝えしていませんでした。申し訳ありません。

2022年10月放送分の曲目リストです。今月はブラックミュージックを集めてみました。ブラックミュージックと言っても、なかなか捉えどころが無い言い方ですけど、私が子どもの頃から好んで聴いてきた、黒人音楽を意識させる曲達を集めてみましたよ。

相模原市のFM HOT 839のサービスエリアにお住まいの方はFMラジオで、そうでない方は、放送局のホームページに聴き方の説明があります。スマートフォンにFM++というアプリを入れて聴いていただくのが一番簡単だと思います。

60集 ブラックミュージック1(第1、第3土曜日、21:00〜)
曲名アーティスト
A.i.e. A Mwana
(アイエ)
Black Blood
(ブラック・ブラッド)
The Hustle
(ハッスル)
Van McCoy and the Soul City Symphony
(ヴァン・マッコイ&ザ・ソウル・シティ・シンフォニー・オーケストラ)
Can't Give You Anything (But My Love)
(愛がすべて)
The Stylistics
(スタイリスティックス)
Machine Gun
(マシンガン)
The Commodores
(コモドアーズ)
On Broadway
(オン・ブロードウェイ)
George Benson
(ジョージ・ベンソン)
All Night Long (All Night)
(オール・ナイト・ロング)
Lionel Richie
(ライオネル・リッチー)
I Want You Back
(帰ってほしいの)
Jackson5
(ジャクソン5)
Joanna
(ジョアンナ)
Kool & the Gang
(クール&ザ・ギャング)
Don't Stop 'Til You Get Enough
(今夜はドント・ストップ)
Michael Jackson
(マイケル・ジャクソン)
Sun Goddess
(太陽の女神)
Ramsey Lewis (feat. Earth, Wind & Fire)
(ラムゼイ・ルイス(フィーチャリング アース・ウインド・アンド・ファイヤー))
61集 ブラックミュージック2 Earth, Wind & Fire(毎週日曜日23:00〜)
曲名アーティスト
Let's Groove
(レッツ・グルーヴ)
Earth, Wind and Fire
(アース・ウインド・アンド・ファイヤー)
Saturday Nite
(サタデー・ナイト)
Earth, Wind and Fire
(アース・ウインド・アンド・ファイヤー)
September
(セプテンバー)
Earth, Wind and Fire
(アース・ウインド・アンド・ファイヤー)
Shining Star
(シャイニング・スター)
Earth, Wind and Fire
(アース・ウインド・アンド・ファイヤー)
That's the Way of the World
(暗黒への挑戦)
Earth, Wind and Fire
(アース・ウインド・アンド・ファイヤー)
Sing a Song
(シング・ア・ソング)
Earth, Wind and Fire
(アース・ウインド・アンド・ファイヤー)
Got to Get You Into My Life
(ガット・トゥ・ゲット・ユー・イントゥ・マイ・ライフ)
Earth, Wind and Fire
(アース・ウインド・アンド・ファイヤー)
I'll Write a Song for You
(聖なる愛の歌)
Earth, Wind and Fire
(アース・ウインド・アンド・ファイヤー)
Getaway
(ゲッタウエイ)
Earth, Wind and Fire
(アース・ウインド・アンド・ファイヤー)
You Want My Love (feat. Lucky Daye)
(ユー・ワント・マイ・ラヴ(フィーチャリング ラッキー・デイ))
Earth, Wind and Fire
(アース・ウインド・アンド・ファイヤー)
Fantasy
(宇宙のファンタジー)
Earth, Wind and Fire
(アース・ウインド・アンド・ファイヤー)
After the Love Has Gone
(アフター・ザ・ラブ・ハズ・ゴーン)
Earth, Wind and Fire
(アース・ウインド・アンド・ファイヤー)

2022年9月28日水曜日

HP-15CにPR ERRORなる表示が出た

 何度か登場しているHP-15Cというプログラム電卓の話です。


上の写真ですね。日本の電卓にはほとんどない、逆ポーランド記法という入力方法で使う電卓です。RPNなんて言ったりもします。このHP-15Cについては、以前こういう紹介記事を書いてみたりしました。

あまり長くない数式の計算をするのに便利なので、今も結構よく使っています。

先日、使おうと思ってスイッチを入れたら、表示パネルにpr errorなる表示が出ました。調べてみたところ、電源関係のエラーのようです。

マニュアルには簡単に"Continuous Memory interrupted and reset because of power failure"と書いてあります。電源の不良で不揮発メモリーを止めてリセットした、って言うような意味ですね。不揮発性メモリーをリセットしたっていうことなんで、中に入れてあったプログラムは消えてなくなりました。

電池交換をしてとりあえず復活。過去に作ったプログラムを入れ直して、しばらく様子見です。単に電池消耗による電源のエラーだったら気にしないんですが、違う要因だとちょっとイヤですね。

それにしても復刻版とは言え2011年製なので、10年以上経過しています。こういうことにならなきゃいいけど。

バッテリーの消耗を知らせる機能が本来はあるんですが、それが働くまえにエラーが出たことが気になります。でも、シャープのポケコンもバッテリーの消耗の通知の前におかしくなることが新品の頃からあったので、あんまりアテにならない機能なのかも知れません。

ちなみに、「こういうことに」の記事で修理したシャープのポケコンは正常に動いていますよ。



2022年9月23日金曜日

データ復元ができるソフトってものを見つけたので、ちょっと触ってみる

1.はじめに

 前回の投稿で使って見たパーティション管理ソフトのホームページを見たら、同じベンダーでデータ復元ソフトなんてものも販売しているそうで、さらにフリー版もあるようです。ちょっと試してみようかな、と思い、試してみることにしました。

実は昨年、鳴門〜徳島〜和歌山〜高野山〜生駒と旅行したときに、持っていったGoPro Hero9が、旅行初日から調子が悪くて、ついにSDカードのデータが壊れて、それまで撮影していたデータがすべて見えなくなってしまう、なんていう事態に遭遇しました。

実はGoProでSDカードが壊れるっていう話は割に良くあることらしくて、似たような事案がたくさん出てきました。それで、その時にはフリーで使えるデータ復元ソフトを探し出して、何とか撮影データをサルベージできたのでした。

その時の経験から、しっかりしたデータ復元ソフトを1つ持っておきたいと常々思っていたところに、今回そのようなソフトを見つけたので、このソフトをお試ししてみたいと思います。MiniTool Power Data Recoveryという名前のソフトだそうです。

ただし、「データ復元」というものは、何かストレージの破損、間違ってデータを消してしまった、等という状況からデータを復元することを言います。間違ってデータを消してしまうことは再現できるのですが、ストレージの破損は再現することができないことをご承知おきくださいね。

まず、上記リンク先のページに、フリー版のダウンロードリンクがあります。そこからソフトのインストーラーをダウンロードして、インストールします。インストールの仕方なんかは、特に変わったところはないので、省略します。

なお、今回使用した環境は、以下の通りです。

  • Microsoft Surface Pro 4
    • CPU Core m3
    • メモリー 4Gバイト
    • ストレージ 128GバイトSSD
    • OS Windows10 Pro
  • USBメモリー
    • USB3.0、32Gバイト
  • ハードディスク
    • TOSHIBA MQ01ACF050 
    • Amazon Basicのハードディスクケース(USB3.0)

2.FAT32フォーマットのUSBメモリーで試してみる。

2.1.準備

8GバイトのUSBメモリーを準備して、クイックフォーマットした後、以下のようにファイルをコピーします。


USBメモリーの最上位フォルダの下に、8個のサブフォルダがあり、それぞれに写真のJPEGファイルが入っています。その中の1つのフォルダを選び、中を見ると下の画像のように9個のファイルが入っています。


この中のファイルを幾つか選んで、削除してみます。今回の例では、上の画像で選択されているファイル6個を削除してみます。


削除すると、フォルダの中は、上の画像のようになります。当然ですね。ハードディスクの場合は、ファイルを削除すると削除されたファイルはゴミ箱という見えないフォルダに移動するだけ、ということになりますが、USBメモリーの場合は即座に削除されます。したがって、ゴミ箱を空にするという操作は行いません。

というわけで、これで準備完了です。

2.2.ソフトの起動

MiniTool Power Data Recoveryを起動します。「このアプリがデバイスに変更を加えることを許可しますか?」と聞かれるので、「はい」を押してください。そうしないと、ディスクドライブやUSBメモリーに変更を加えることが出来ません。

起動すると、下の画像のようなウィンドウが出ます。


2.3.スキャン開始

起動すると、ソフトから見える、PCに接続されたストレージが全部表示されるので、この中から、USBメモリーのデータが入っているドライブを選択します。選択するとスキャンと書かれたボタンが出現するので、これをクリックします。


クリックすると、スキャンが始まります。スキャンに要する時間は、使うマシンやストレージのスピードによって決まると思うので、一概には言えませんが、私の環境(Surface Pro 4 core-m3 、32Gバイト、USB3.0のUSBメモリー)では、1時間ぐらいかかったと思います。
なにせ、スキャンするストレージの使っているところも使っていないところも、すべて読み込んで、実はデータの切れっ端がはいっているかも、ということをスキャンしていくわけでしょうから、時間はかかると思います。

2.4.スキャン完了

スキャンが終わると、下のような状況になります。


スキャンしたら、合計3.3Gバイト、5339ファイルがあった、と言っています。準備段階でこのUSBメモリーに書き込んだデータは、669Mバイト程度でした。ということは、OSから見えない、もしかしたらまだ使えるかも知れないデータの切れっ端のファイルが、2.7Gバイト程度見つかったということですね。

この、左側にある「紛失されたファイル」の中「既存のパーティション」の中を見てみると、以下のようになっています。


削除したファイルはaan.jpg、aao.jpg、aap.jpg、aaq.jpg、aar.jpg、aas.jpgでしたが、このウインドウの中のファイル名の先頭が_(アンダースコア)になっているものの_をaに変えると、まさに削除したファイルのファイル名です。復元されたファイルはJPEGですので、オリジナルと復元されたものと、画像表示される結果もファイルサイズも一致していますので、正しく復元されたようです。(ファイルサイズや表示された画像は省略します。)

なお、USBメモリーを一度クイックフォーマットではなく、ちゃんとフォーマットしてスキャンしてみた結果が以下です。


何やら、システムファイルのようなものが二つあるだけ。System Volume Informationと書いてあるので、ファイルシステムの色んな特性を示す情報と思います。データの切れっ端のようなものは検出されませんでした。

2.5.結果

以上から、消してしまったデータを復元することが出来ました。操作は特に難しいところはありませんが、復元されたデータがどこに復元されたかを探すのが少し大変かも知れません。「紛失されたファイル」の中の、「既存のパーティション」を探したらありましたが、他の環境でどうなるかは、わかりません。

3.500GバイトのUSBハードディスク(NTFS)で試してみる


NTFSでちゃんとデータの復元が出来るのか、ということで試してみました。

3.1.NTFSでのフォーマット

手元にあるUSBハードディスクはexFATフォーマットになっていたので、一旦NTFSでフォーマットし直して、同様の操作をすることにします。

exFATのドライブをフォーマットしようとすると、クイックフォーマットを指示するチェックボックスがグレーアウトしてしまい、クイックフォーマットを指示できなくなります。ファイルシステムが違うから当然なんだと思います。したがって、フォーマットはクイックフォーマットではありません。

3.2.ドライブのスキャン

ファイルをコピーして、一部ファイルを削除してスキャンした結果が以下です。


フォーマットしてからファイルをコピーしたのに、何やら多くのファイルが検出されています。この辺の事情は良くわかりません。今回は削除してしまったデータが復元できるかどうか、という事が主眼ですので、置いておきたいと思います。

この中で、「削除されたファイル」を見てみると、削除したファイルが置いてあったフォルダがあり、その中を見ると、削除したファイルが見つかりました。


なお、「削除されたファイル」の中の、「ゴミ箱」フォルダにも、同じファイルが見つかります。


これらのファイルを先ほどのUSBメモリーの時のように選択して保存すれば、削除してしまったデータの復元が完了となります。

3.3.結果

NTFSフォーマットのハードディスクにおいても、削除されたデータは無事に復旧できました。

4.まとめ

USBメモリー、USB接続の外付けハードディスクのいずれにおいても、削除してしまったデータを簡単に復旧することができました。とても使いやすい復旧ソフトだと思いました。


2022年8月14日日曜日

いまどきのフリーなパーティション管理ソフトを試してみる

1.はじめに

 うちには、Windows10が走るちょっと古めのパソコンがあります。Microsoft Surface Pro 4っていうもので、2 in 1っていうタイプのもの。タブレットにもラップトップPCとしても使えるという代物です。

 普段メインで使っているパソコンはMac Book Proなのですが、Parallels Desktopを入れてあって、必要なときにはその仮想環境でWindows11を動かしているので、その古めのパソコンはあまり使用頻度が高くないのですが、薄くて軽いので、重宝しています。

 これにLinuxを入れて、デュアルブートで使えるようにしたいと、今更ながら思いつきました。昔、流行り始めた頃に自分も含めてパソコンいじりの好きな人がよくやっていたものです。

 新しいOSをインストールして、それまでのOSと共存させるためには、本来なら一度ストレージをキレイに初期化して、それぞれのOS用にパーティションを切るのが昔ながらのやり方ですが、それまで入っていたOSが動ける状態でパーティションサイズを変更して新しいOS用のパーティションを設けることが結構前からできるようになっています。

 それまで入っていたOSが動ける状態でパーティションの編集をしようと思って、それが出来るフリーのソフトを探してみたところ、MiniTool Partition Wizardというパーティション管理ソフトに行き着いたので、これを使って色々とやってみました。

 なお、今回は以下のスペックのパソコンを使用しています。

  • Microsoft Surface Pro 4
    • CPU Core m3
    • メモリー 4Gバイト
    • ストレージ 128GバイトSSD
    • OS Windows10 Pro

2.パーティション管理ソフトとは?

 ハードディスクやSSD(Solid State Drive)(以下、ドライブと記載します)は、全体を複数の領域に分けて使うことが出来ます。システムファイルが入る領域、データ専用の領域、他のOSを入れるための領域など、様々な使い分けができます。この領域のことをパーティション(Partition)と言います。

 通常新品のドライブは、コンピューターにつなぐと、1つの大きな記憶領域としてコンピューターから見えますが、これを複数のパーティションに分割するのに必要なのが、パーティション管理ソフトです。

 OSにもパーティション管理の機能はあって、たとえばWindowsだと、コントロールパネル > 管理ツール > コンピューターの管理 > ディスクの管理を起動すると、接続されているドライブと、それぞれのドライブがどのようなパーティション構成となっているか表示されます。このディスクの管理からパーティションの編集もできますが、最低限の機能しかなく、使いやすいとは言えません。そこで、外部のパーティション管理ソフトのお世話になることになります。


3.MiniTool Partition Wizardの入手とインストール

MiniTool Partition Wizardには、有償版と機能限定のフリー版があるようです。とりあえずフリー版を入手、インストールしました。入手先は下記です。

https://www.partitionwizard.jp/free-partition-manager.html

 このページからフリー版を選んでダウンロードして、普通にインストールできました。インストール時に、「セットアップに使用する言語の選択」というダイアログが出ますが、筆者は日本人なので、日本語を選択しました。また、途中でフリー版のインストールにするか、プロ版の無料体験にするかを聞かれますが「無料版のインストールを続行します」を選択します。


 あとはインストール場所、インストールする機能の選択などの選択ダイアログが出ますが、省略値で良いと思います。


4.MiniTool Partition Wizardの起動

 インストール後、デスクトップに自動的に作られたショートカットやスタートメニューから起動します。ドライブをいじる都合上、管理者権限で起動しなければならないソフトなので、起動時にその旨言ってきますが(Windows10だとこのアプリがデバイスに変更を加えることを許可しますか?と聞いてきます)、許可してあげてください。

 そうすると、パソコンに接続されたドライブの種類、パーティション構成を解析して、上の絵の様にソフトが起動します。パーティションの名前、容量、使用済み量、未使用領域の大きさ、ファイルシステム、パーティションタイプ、状態がパーティションごとに表示されています。


5.パーティションの編集

 今回このMiniTool Partition Wizardを入手した目的は、Linuxをデュアルブートで入れるためにパーティションサイズを編集することです。つまり、OSが入っているパーティションの中のファイルを失うことなく、

  • パーティションを2つに分割
  • 分割したパーティションの片方を削除
  • パーティションサイズの変更(今回のケースでは本来不要ですが、やってみました)
  • 空き領域にLinuxを入れる

という作業を行う事になります。

 注意点ですが、Windowsのバージョン、エディションによっては、BitLockerというストレージ暗号化の機能が搭載されているものがあります。これは、パソコンを紛失したり盗難にあったときに、第三者にデータを盗み見されない様にするための暗号化機能ですが、これが有効になっているパーティションは、MiniTool Partition Wizardで編集することが出来ません。パーティションの編集をする場合は、あらかじめ対象のパーティションのBitLockerを無効にしておく必要があります。


5.1.パーティションを2つに分割

作業開始前のドライブの状態は下の画像のようになっています。


 この中の一番大きなパーティションが、ユーザーからCドライブとして見えているパーティションですが、今回はこれを2分割して空き領域を作ります。

 分割するパーティションをクリックして選択して、ウィンドウ左側のメニューから、「パーティション分割」をクリックします。


 すると、上の画像のようなウインドウが出るので、どこで分割するかを指定します。円の中に< >が入ったボタンを左右に動かして指定することもできますし、直接サイズを指定することも可能です。決めたらOKボタンを押します。

 今回の例ではパーティションの先頭から76.46Gバイトのところでパーティションを分割して、41.56Gバイトの新しいパーティションを作成することを指示しています。なお、分割したパーティションは両方とも同じファイルシステム(今回の例ではNTFS)になりますので、念のため。上のグラフィカルな表示と下の数字が微妙に合ってないですね(苦笑)

 OKを押すと、表示上は分割の指示が反映された表示となります。しかし、注意しなければいけないのは、この状態ではまだ変更の反映がされていないということです。この状態でウインドウ左下にある「適用」ボタンを押して、初めて指示が反映されます。


「適用」ボタンを押すと、下記の確認ダイアログが出るので、「はい」を押すと、処理がスタートします。


 今回の処理に関しては、起動中のOSのシステムドライブを変更する作業となるので、下記のような注意が出ました。つまり、一旦システムを終了してから、システムの起動初期の原始的な処理しか走っていない状況にしないと、処理ができないということでしょうね。unix系で言うところの、シングルユーザーモードの状態ですね。

「今すぐ再起動」を押すと、再起動がかかって、処理が始まります。下の画像のような感じで処理が進みます。(画像が汚くてすみません)

 しばらくすると、処理終了となって、OSが再起動します。これが、処理が終わった後にMiniTool Partition Wizardを起動した状態です。


 Windowsのディスクの管理を起動して確認すると、パーティション分割の結果が反映されていることがわかります。

これで、パーティションの分割作業は終了です。


5.2.パーティションの削除

2つに分割したパーティションのち、片方は不要です。これを削除してみます。

 削除対象のパーティションをクリックして選択してから、パーティションメニューの削除をクリックして、ウインドウ左下の「適用」を押すと、即座にパーティションが削除されて、未割り当て状態となります。


パーティションの削除が完了しました。

5.3.パーティションサイズの変更

 パーティション分割が終わった後、Windowsパーティションをもう少し広げて、Linuxを入れるパーティションをもう少し狭くしても良いかな、と思ったので、パーティションサイズの変更をしてみました。パーティションの拡張というコマンドを使っています。
拡張するパーティションを選択して、パーティションメニューの「拡張」をクリックします。

 下の画像のようなウインドウが出るので、指定したパーティションをどれだけ拡張するかをスライダーを操作して指定します。空き領域が複数ある場合は、プルダウンメニューからどの空き領域を使うのかを指示できるのかもしれませんが、筆者の環境では試すことが出来ませんでした。

 今回は約10Gバイト拡張することにしました。OKを押すと、下の画像のように指定したパーティションが約10Gバイト拡張していることがわかります。「適用」を忘れずに惜します。


 ディスクの管理で見てみても、パーティションサイズ変更が反映されていることが確認できます。


5.4.Linuxのインストール

 今までの作業でできた、約30Gバイトの空き領域に、Linuxをインストールしました。最近人気のあるという、Zorinというディストリビューションです。

 本来は、今回のこのMiniTool Partition Wizardを使って、ext4のパーティションを作成すれば良かったのですが、Zorinのインストーラーがどのように振る舞うか予想が付かなかったので、空き領域をインストーラーに与えて、インストーラーの方で好きに設定してもらうようにしました。下の画像は、インストールしたZorinでターミナルウインドウを開いてみたもののスクリーンショットです。



6.その他


 パーティションの編集に関して、一通りのことを実行してきましたが、今回やりたかったLinuxのインストールには不要な、パーティションの結合っていうものをやっていませんでした。機能があるようなので、せっかくだからということで、試してみました。これに関しては、外付けハードディスクを使った実験です。

 あらかじめ分割しておいたパーティション2つを結合してみます。まず、結合するパーティションを選択して、パーティションの結合のコマンドをクリックします。


次に、結合する相手のパーティションを聞いてくるので、指定します。


完了ボタンを押して、「適用」ボタンを押すと、パーティション結合処理が開始されます。


 しばらくすると、結合処理完了となります。2つだったパーティションが1つになりました。これで結合作業完了です。

 なお、中身の入ったパーティションを結合したらどうなるのかという疑問が湧いて、わざと結合するパーティションの両方に少しデータを入れた状態で、結合処理をしてみました。区別がつくように、MiniTool Partition Wizardの表示で左側に配置されていたパーティションにはスクリーンショット1、右側に配置されていたパーティションにはスクリーンショット2というフォルダを置いて、中に今回の投稿に使ったスクリーンショットのファイルを置いた状態で結合処理をしてみたのです。

結果は下記画像です。


 結合されたパーティションの内容、というフォルダが自動的に出来て、その中にスクリーンショット2というフォルダが配置された状態になっていました。これはMiniTool Partition Wizardがこのよう動作をするように作られているのでしょうかね。

7.まとめ


 MiniTool Partition Wizardを使ってパーティションの分割、削除、大きさの変更、そして結合をしてみました。このMiniTool Partition Wizardを使うことに関しては、トラブルもなく、安全に作業ができたと思います。非常に使いやすいソフトであると感じました。

 実はこの後、入れたばかりのZorinを消して、再びパーティションの構成を作業前の状態に戻す、ということをやりました。これをやるためには、Zorinがインストールされているパーティションを削除する前に、デュアルブートの機能を無効化する必要があります。その辺のこともMiniTool Partition Wizardの有償版であれば「MBR再構築」としてサポートしてくれる機能があるようですが、今回はフリー版なので、他の方法を使ってやろうとして、結構トラブルが出ました。

 その辺の話はブログの投稿1回分に相当するボリュームになりそうなので、機会があれば書こうと思います。


8.最後に

 このMiniTool Partition Wizardのオンラインマニュアルは、ユーザーではなくても「MiniTool Partition Wizard マニュアル」で検索すると出て来ます。


 若干日本語に難があるところはあるものの、非常に盛り沢山な内容です。これを見ると、実にたくさんの機能を持っていることがわかります。特にデータ復元とディスク抹消は、普通のユーザーにも有益な機能だと思います。データ復元に関しては、自分の事になりますが、過去にGoProのSDカードをGoProに壊されたことがあり、撮影済みのデータを復元するのに非常に苦労したことがあるので、あったら嬉しい機能ですし、ディスク抹消はパソコンやドライブを廃棄するときのプライバシー保護に大きく役立つ機能です。

 このような機能を持ったソフトということは、単なるパーティション管理ソフトというよりも、総合的なディスク管理ソフトと言っても良いのではないかと思いました。


2022年2月8日火曜日

シャープのポケットコンピューターPC-1490UIIを修理したよ

1.最初に

 うちには、僕が社会人になってそれ程経ってないころ、帰省の途中で母校に立ち寄って、大学生協で購入したポケットコンピューター、PC-1490UIIが、あります。

調べてみたら1991年発売のものだそうなので、発売されてから31年経ってますね。

使用頻度があまり高くなかったので、何度か捨てようと思ったこともありましたが、結局捨てられず、現在に至ります。

PC-1490UIIがどんなものかというのは、こちらこちらご覧頂ければと思います。一般売りしていたPC-E500シリーズの大学生協版で、科学技術計算用のプログラムライブラリーを省略して、学生が作ったプログラムを内蔵している、ということのようです。

僕にとっては、学生の頃初めて買ったポケットコンピューターがPC-1211っていうものだったので、2台目のポケットコンピューターということになります。

このPC-1490UIIですが、たまーに電源を入れて、生きているかどうか確認していたんですが、あるときから動作がとても不安定になり、電源を入れてちょっと放置すると勝手に暴走しちゃう、なんていう現象が出るようになりました。

リセットするとまた使えるので、更にしばらく放置していましたが、あるとき電源を入れたら、電気部品が故障したときに出る臭いが漂ってきたんです。

これは、中の電解コンデンサの圧力弁が開いてガスが出てきたのかな、ということでそこからまたしばらく放置、いよいよ捨てようかとも思ったのですが、BASICが手軽に使える機械だし、動かせるのならもう少し使おう、という気持ちになり、まずは電解コンデンサの交換だけでもしよう、ということにしたのでした。

2.内部の確認

分解してみたところ、電解コンデンサは、3.3μF/25Vが2個と100μF/10Vが2個の合計4個が入っていました。

丸いフェライトのようなもの(インダクタですかね?)のそばに2本立っているのは3.3μF/25Vのもの。


黒くて四角いコネクタを挟んで2本立っているのが100μF/10Vのもの。

いずれもニチコン製です。85℃品だったと思います。なお、写真では電解コンデンサは立ってますが、実際には寝た状態で取り付けられています。これら4個を、新しいものに交換して様子を見てみることにしました。

3.部品調達

最初、3.3μFも100μFも通販サイトのモノタロウで調達したのですが、ちょっとミスをして100μFは再調達。3.3μFも100μFもとりあえずは揃いました。が、しかし・・・

4.部品交換

電解コンデンサが揃ったところでまず3.3μFを交換。半田吸い取り器と半田吸い取り線を使って可能な限りハンダを吸い取った後、古いコンデンサを取り外し、新しいものと交換です。

こんな感じに仕上がりました。続いて、100μFを交換しようと思って、古いものをよくよく見ると、妙に細い。ノギスで計ったら直径4mmです。

5.トラブル発生

今回調達したものは、計ってみたら直径6.3mm。これは恐らく入りませんね。ということで、100μFの容量で直径4mmの電解コンデンサを探してみたけど、見つからないんです。カスタム品なんでしょうかね。散々探したら、北海道のとあるパーツショップで直径4mmを売り物にした電解コンデンサ10本セットってのを売ってまして、これを買ってみました。通販サイトにメーカー名が書かれていなかったのがちょっと気がかりでしたけど・・・
そしたら、HDFっていう聞いたことのないメーカーのコンデンサで、これまた色々調べたらんですが、そういうメーカーは見つからず、こういう記事に行き当たりました。やっぱり素性がわからない。

電解コンデンサって、寿命があって、古くなると破裂したり液漏れしたりして、最悪基板を痛める部品なんです。このメーカーのものが品質が悪いなんてことを言うつもりは全くないんですが、素性のわからないものを、この手の精密機器に使うのもちょっと気が退けます。
ということで、ニチコンでも出している直径5mmのものを再調達して、ダメ元で付けてみました。

6.大団円(かな?)

ダメ元で調達した、直径5mmの電解コンデンサを早速取り付けてみました。
3,3μFをやったときには全然気にしてなかったんですが、オリジナルの部品に習ってリードを写真のように加工します。このポケコンの基板は、裏側がほとんど全面キーボードの接点になっているので、スルーホールがありません。なのでコンデンサを寝かせつつ、実装面に面付けできるように、リードを、寝かせた状態の下向きに一旦曲げて、電解コンデンサが基板と接するぐらいのところで、基板に平行になる向きに曲げる、という加工をします。
写真のように2個とも交換して、蓋を閉めてみたら、なんと無理なく閉まりました。成功です。

職場に持っていって、超簡単なBASICプログラム(とは言っても、普段HP-15CでExcelのワークシートの検算をするのに使ってるプログラム)を入れてみて、一応ちゃんと動いていたので、これからしばらくの間、意識的に使ってみて、おかしなことにならないかどうか、様子を見たいと思います。


2022年1月16日日曜日

FFMPEGに関する備忘録

 ちょっとワケがあって、FFmpegで映像に静止画像を重ね合わせる処理をさせる必要に迫られました

 本来なら、対話型の動画編集ソフトを使って編集、エンコードするのが普通で、最近はDavinci Resolve(公式サイトはこちら)なんていう良いソフトもあるので、出来上がりを見ながら作り込んでいくなら、対話式の動画編集ソフトの方がやりやすいと思います。

しかし、決まり切った処理を何回もやらなければならない、という状況を想定すると、対話型のソフトはちょっと使いたくないです。何かいい手は無いかと考えたとき、選択肢に上がるのがFFmpegだろうと思います。

 FFmpegというのは、昔からある有名なオーディオ/映像ストリームに色んな処理を加えることのできる、コマンドラインで動くフリーソフトです。フリーの映像/画像処理ソフトの中には、このソフトを処理エンジンとして使っているものもあるように思います。こちらが公式サイトです

この、コマンドラインで動く、というのが重要で、巨大な映像ファイル/プロジェクトを、その都度動画編集ソフトで開く、ということをしなくても良いのです。unixでテキストファイルをsedで編集するのと考え方が似ていると思います。

ただ、コマンドラインの書き方がとても難しくて、なかなか覚えられないのが難点です。あちこち調べ回って、トライ・アンド・エラーでなんとか動かすことに成功したので、忘れないように書き留めておきます。

まず、素材。

これは透過PNGで作った画像で、1280X720ピクセルの大きさがあります。

flag.png
次の画像はこれです。やはり透過PNGで作った画像です。400X389ピクセルの大きさがあります。
これを、下地となる動画に貼り付けるのです。

logo.png

下地となる動画は、3840X2160ピクセルのH.264、約3分33秒の動画となっています。GoPro Hero9で撮影したものをVNで編集して作成しています。一昔前だとパソコンで再生するのは無理、というほど大きな動画ですね。



これが、その下地となる動画です。main.mp4と名付けておきます。

今回は、このmain.mp4を1280X720のHDサイズに縮小したのち、上に出した静止画2つを重ね合わせますが、最初の静止画は縮小後の動画と同サイズなので、大きさ、場所ともそのまま、ただし不透明度を30パーセントに設定して、重ね合わせます。

2枚目の静止画は、動画の右上の隅に配置するように重ね合わせます。これをDavinci Resolveで処理したものが、以下です。


ちなみにこの処理を、Mac Book Pro 16インチモデルのDavinci Resolveは1分17秒で完了しました。これはIntel UHD Graphics 630とAMD Radeon Pro 5500Mという、GPUを2つ積んだマシンなのですが、アクティビティモニターを見ると、両方とも動いています。

さて、上記処理(に近いもの)をFFmpegで行うためのコマンドラインの書き方ですが、

ffmpeg -i main.mp4 -loop 1 -i logo.png -i flag.png \
    -filter_complex \
    "[0:v]scale=1280:-1[v1]; \
    [1:v]scale=200:-1[a]; \
    [2:v]lut=a='val*0.4'[b]; \
    [v1][b]overlay=0:0[v0]; \
    [v0][a]overlay=(W-w)-10:10:shortest=1" \
    -c:a copy -c:v h264_videotoolbox -b:v 20000k output.mp4

バックスラッシュはエスケープ文字で、その次にある改行文字をエスケープするためのもの。なので、最初から最後まで本来は1行です。

 以下、コマンドラインの説明です。

-i

入力ファイルの指定です。後ろに続くものを入力ファイルとして扱いますこのファイルの順番は、あとでちゃんと意味を持つので、気にとめて置いてください。ここでは、main.mp4、logo.png、flag.pngを入力ファイルとして指定しています。

-loop

後に続く入力ファイルをループするものとして指定するためのオプションです。続く数字で意味が変わってきます。-loop 1で、静止画を繰り返すという意味になるようです。

-filter_complex

複数のフィルターを組み合わせて使うときに、このfilter_complexというキーワードを使います。このキーワードの後ろに""で囲んだ複数のフィルターを記載します。

[0:v]scale=1280:-1[v1];

-i オプションで指定した一番最初の入力ファイルのビデオ部に対して、横幅1280ピクセルで同一アスペクト比のスケーリングをして、そのストリームデータにv1という名前を付けます。[0:v]の:vがビデオ部を指定するキーワードになっています。scale=横の長さ:縦の長さという書式ですが、片方だけを指定して、同じアスペクト比にしたい場合は、-1を指定します。

[1:v]scale=200:-1[a]; 

-iオプションで指定した2番目の入力ファイルのビデオ部に対して、横幅200ピクセルで同一アスペクト比のスケーリングを行い、そのストリームデータにaという名前を付けます。

 [2:v]lut=a='val*0.4'[b];

3番目の入力データのビデオ部に対して、画素値を0.4倍にする処理をします。これによって、不透明度を40パーセントに落としています。

[v1][b]overlay=0:0[v0];
ストリーミングデータのv1にbを重ね合わせて、重ね合わせたストリーミングデータにv0という名前を付けます。overlay=0:0は重ね合わせ画像の左上の座標をx座標、y座標とも0に指定します。

[v0][a]overlay=(W-w)-10:10:shortest=1" 

ストリーミングデータのv0にaを重ね合わせます。重ね合わせ期間を、最も短いストリーミングデータ(この場合はmain.mp4の長さ)にします。

-c:a copy

-cはコーデックの指定をするオプションで、-c:aと記述すると、オーディオのコーデックを指定する記述となります。-c:a copyは、オーディオのデータは、元のデータをそのままコピーして使う、という意味になります。

-c:v h264_videotoolbox

ビデオ部のコーデックに、h264_videotoolboxを使うことを指示します。h264_videotoolboxは、MacOS用に用意された映像処理用のライブラリで、その中にあるH.264用コーデックを使うために指定するものです。ハードウエアエンコードを含めた、最適なコーデックを選択してくれます。ちなみに、H.265を扱いたい場合は、hevc_videotoolboxを使います。

-b:v 20000k

-bは最大ビットレートを指定するオプションです。-b:v 20000kは、ビデオ部の最大ビットレートを2Mbpsにする、という指示です。

output.mp4

出力ファイルをoutput.mp4にします。なお、-f matroska - | ffplay -i -と記述すると、出力をファイルではなく、標準出力経由でffplayに渡し、ffplayでプレビューする、ということができます。

-fは、出力を強制的にフォーマット変換するためのオプションで、上記記述では、マトリョーシカフォーマットに変換して、標準出力(-)に出力する、という意味です。 

上記コマンドラインを指定して、FFmpegで処理した動画が以下です。