古事連記帖

趣味のこと、技術的なこと、適当につらつら書きます。

あけましておめでとうございます

今週のお題「2020年の抱負」

書いているのはもう 1 月 1 日の 22 時とか遅い時間ですが。

あけましておめでとうございます。2020 年もぜひよろしくお願いします。
f:id:ChiiAyano:20200101221840p:plain

ふと、bayfm を聞いてて聞こえてきた「2020 年」の英語での言い方で、Two thousand-Twenty*1 なのか、Twenty-Twenty*2 なのか気になってたんですが、どっちでもいいらしいです。

去年の目標とか未達のまま今年を迎えるとかザラなので、今年もとりあえずのんびり過ごします。あともうちょっとで出せそうな Android アプリを今年の早い段階で出せたらいいなってお気持ち。
曲作りもちまちまやっていきたいですね。頑張ります。

今年は初日の出を拝みに行きませんでした。ここでは書きませんでしたが、コミックマーケット 97 の 4 日目に参加してきたため、体力的な問題で取りやめとなりました(´・ω・`)
31 日じゃなかったら多分行ってたのかも。来年はどうなることやら。
初詣は今月中に行こうかなと思っています。お守りの更新とかしないと。

*1:門脇知子さんはこっちだった

*2:僕はこっちがカッコイイと思った

Xamarin.Android で System.IO.Stream を MediaPlayer に流し込む

Android.Media.MediaPlayer クラスの SetDataSource メソッドは、そのままだと System.IO.Stream を受け取ることができず*1、例えば WebAPI で拾ってきたバイト配列を MemoryStream に入れたり、FileIO で拾ってきた Stream といった .NET Framework 系のストリームとの相性があまりよくありません。

とはいえ、 SetDataSource メソッドのオーバーロードには MediaDataSource クラスのインスタンスをパラメーターとして受け取るものが用意されています。これは開発者が独自の方法でデータを読み込ませたいときに使うものですが、これを使って Stream も読めるようにします。

gist.github.com

*1:他の口があるかもしれない?

Windows 10 Insider Preview Build 18995 をインストールしようとしたらうまくいかなかった話と解決法

日本時間の 10 月 4 日未明に、Windows 10 Insider Preview Build 18995 が Fast RIng 向けにリリースされました。

blogs.windows.com

さっそく入れようと Windows Update で確認ボタンをポチポチしても、なかなか更新チェックが終わらず、最終チェック日が押した時間ではなくその前のチェック時間になって返ってきました。
Update 用のサービスを再起動してみたり、トラブルシューティングを試してみたりといろいろやってみましたがうまくいかなくて、このまま次のビルドまで待とうかなと思っていたところ、Answers にこんな記事がありました

answers.microsoft.com

I pressed the Pause Updates button, then pressed it again to re-enable updates, and Windows Update started working again.

要するに「更新を 7 日間一時停止」を選んでからもう一度再開させてみたら良い感じに動いた とのことだったので試してみたところ、一時停止後すぐ再開ではダメで*1、一時停止にしておいてしばらく放置 (おでかけしてたので10時間くらい放置してたかも) して再開したら、無事降ってきました。

f:id:ChiiAyano:20191005222056p:plain

*1:いろいろ試行錯誤した直後だったのでうまくいかなかったのかも

第25回参議院議員通常選挙 の開票を見に行ってきた

f:id:ChiiAyano:20190721232313j:plain
我孫子市の開票所
今回初めて開票所に行って開票の様子を見てきました。

なぜ見に行こうと思ったのか

なんとなーくです。開票のプロセスがどうなっているのかはちょっと気になっていたし、我孫子市に引っ越して初めての (令和初の) 国選だったので、完全にノリです。

開票所を見に行けることは、NHK のサイトでも紹介されています。
www.nhk.or.jp

開票所の場所を知るには

我孫子市の場合、ウェブサイトに開票所がどこですとは目立って書いていません。特設ページの最後のほうに「市民体育館は休館します」と書いてあるところにしれっと書いてありました。
www.city.abiko.chiba.jp
f:id:ChiiAyano:20190722003546p:plain

ほかの自治体ではどう書いてあるのかなとちらっと見ていましたが、東京都は選挙管理委員会のサイトの「新着情報」に載っていました。
www.senkyo.metro.tokyo.jp
http://www.senkyo.metro.tokyo.jp/uploads/03_r1sangiin-kaihyouzyo-list.pdf

柏市は開票所の情報が載っています。
www.city.kashiwa.lg.jp

他は見れていませんが、千葉市は情報が見つかりませんでした。

開票の様子

Twitter にポチポチしてたのでそれで。
開票所は開かれており、誰でも入れるようになっていました。



郵便局の郵便番号での仕分け機と同じようなのが数字以外にも対応したバージョンを初めて見ました
先日ニュース番組で紹介されていたマシーンが使われている風景が目の前にある…!そんな気持ちでした。
www.musashinet.co.jp


見て思ったこと

仕分け機に入れて選別する、人の手で判別できなかったもの、比例であれば個人名で書かれているものを分別していく、それぞれの枚数を計算する、まとめる、記録する…といったたくさんの工程を経て開票が行われていることを知ることができました。
選挙区の集計が1時間程度で終わったのをかんがみるに、仕分け機がない時代はもっと掛かっていたり、内部的なミスも多かったんだろうなあ…と思ったりしました。
どうやって開票作業がおこなわれているのかを知りたい人はぜひ行ってみるといいと思います。そのために、自治体はもっと積極的に開票所の情報をウェブサイトなどに公開するべきだと思います。

誕生日をむかえました

おかげさまで、きょう 4 月 16 日は誕生日でした。公には 17 歳と 144 ヶ月とお伝えしています。

この 1 年のできごと

Windows 10 Mobile にまだまだ悪あがきをしていた

Windows 10 Mobile はいよいよ今年でサポートも終了することになりますが、どうにか粘れないかといろいろ頑張ってきました。

https://support.microsoft.com/ja-jp/help/4485197/windows-10-mobile-end-of-support-faq

Mikaboshi のアプリ開発もちょいちょい進めたり、docomo 回線で Windows 10 Mobile を使ってみたりしました。
ayano.hateblo.jp

その間にも、Slack アプリは最終バージョンを出したり、Twitter クライアント、特にサードパーティー製の排除姿勢により、使いづらい公式クライアントを使わざるを得ない状況に陥ったり、だんだんと Windows 10 Mobile にこだわる必要がないというか、こだわり続けると不利な状況に陥る場面が増えてきました。

結局のところ、いまは Windows 10 Mobileバイスを持ち歩いていません。Mikaboshi を動かすためのデバイスが先日ついにバッテリーの膨張によりこれ以上使うのは危険と判断したところです。
Mikaboshi 自体は PC 版でも動くので、6~7型くらいのタブレットが出たらいいのにな…と思ったり。

Microsoft Build 2018 に参加した

会社で Microsoft Build 2018 に参加させてもらえて、初の海外遠征でした。
もう少し口頭言語的な部分を勉強しておけばよかったと思うところですが、次行くことがあったときのために、ある程度こなせるようにしておきたいなと思うところ…。





引っ越しをした

一人暮らしを始めました
ayano.hateblo.jp

ロボット掃除機がほしいなどと書いてましたが、結局ビックカメラで一瞬やっていたルンバ 890 の安売りのタイミングで買いました。めっちゃ便利だし、何より床にモノを置かない生活になったので、広く部屋が使えるのが利点ですね。
ayano.hateblo.jp


メイン PC のアップグレードをした

Core i5-4690 マシンを Ryzen 7 2700 へと換装を遂げました。
ayano.hateblo.jp

これからやりたいこと

Mikaboshi for Android を制作中

Windows 10 Mobile が今年で終了する以上、固執しているわけにもいかないので、Android 版を作っています。
Xamarin で作ってるとはいえ、 Xamarin.Forms ではなく Xamarin.Android で作ってたり、比較しちゃいけないのは理解しつつも UWP とはお作法が全然違うのでどうするのが正解かわからない状態で大変ですが、Windows 10 Mobile のサポート終了までにはリリースしたいところ。

曲制作をがんばる

いつもやろうと思ってできてないことなのでがんばります。ただがんばるだけでないこともしないといけないなと思いつつ。


これからもがんばります。ぜひよろしくお願いいたします。

例によってほしいものリストはこちらです

GmailChecker 2 - 月光 - がオープンソースになりました

正式版公開から9年とちょっとが経ち、自分の利用環境の変化やGmailの仕様変更等でアプリのメンテナンスができない期間が非常に長くなってしまったため、オープンソースに切り替えました。

github.com

オープンソース版公開にあたり、いくつかの機能を削除しました。動作に影響のある変更はありません。

  • 自動アップデーターを削除しました
  • オープンソースだと権利的に怪しそうなやつを削除しました

権利的に怪しい系は残ってる可能性がありますがこのままにします…。

この変更を反映した新しいバージョンのバイナリデータは今のところ公開の予定はありません。私からのリリースは、公式サイトでの発表バージョンが最終バージョンの予定です。
soft.udonge.net


そんなわけでこれでおしまい!今までありがとうございました。

メインマシンを Ryzen にした

ひょんなことから、メインマシンの構成を Ryzen に切り替えました。今までの構成を残しておきたかったので、最低限必要な CPU、マザーボード、メインメモリを入れ替えました。

入れ替え前のマシン構成は以下の通り。

入れ替え後はこうなりました (価格は購入時 2019年1月12日のもので税抜き)

  • CPU: Ryzen 7 2700 (32,980円)
  • マザボ: GIGABYTE B450 AORUS M (9,800円)
  • RAM: Crucial CFD BALLISTIX SPORT W4U2400BMS-16G (31,300円)
  • グラボ: 変更なし

f:id:ChiiAyano:20190112210816j:plain
買ったもの

すべてツクモexで購入。これまで作ってきた自作 PC は全部ここで買いそろえてるなあ…
換装時ちょっと横着したりして、これどうやって外したっけ?とか、これどれ挿せばいいんだっけ?とか悩みつつでしたがなんとか組み上げました。


換装にあたり OS の再インストールは掛けていません。
無事に起動したかな?と思ったら、ようこそ画面で GSOD *1 が出てしまい、それを何度も繰り返すので、Insider Preview のせいなのか、クリーンインストールせず横着しようとしたせいなのか?と思ってみたところ、エラーの情報をよく見ると

SYSTEM SERVICE EXCEPTION
AsIO.sys

と書かれていたのでググってみると、この記事にあたりました。
tea2ka.hatenablog.com

ASUSマザーボードから他社のマザーボードに換装したときに起きる問題のようで、まさに同じ条件でした。
何度も GSOD を繰り返すと、Windows は異常を検知して起動オプションを自動表示してくれるのですが、ボタンしか表示されていない、文字が出ないひどい状態だったため、手元に用意していた起動用 USB メモリースティックを使って起動オプションを立ち上げました。

上記記事の通りセーフモードとして起動したいのに、起動オプションに「セーフモードへ移行する」ようなコマンドが一切用意されていません。そんなときは、ひとまずコマンドプロンプトを起動し、Windows PE コマンドプロンプト上からブートスイッチを切り替えれば OK です。

cd /d C:
bcdedit /set {default} safeboot minimal

このあと exit して戻り続行するか、電源を一度落としてもう一度起動しなおします。
するとセーフモードに入るので、記事の通りサービスから ASUS Com Service などの ASUS 関連サービスを「手動」に切り替えてスタートアップ時に動かないようにします。
Program Files / Program Files (x86) にある ASUS 関連フォルダーのリネームもしておきます。

それが終わったら、セーフモードに入らないよう msconfig を開き、[ブート] タブを開いて [ブート オプション] の [セーフ ブート] のチェックを外して [OK] をクリックして再起動します。
そうするとようこそ画面でも GSOD が出なくなります。

CPU およびマザーボードが変わっているので、Windows は別 PC としてライセンス認証をやりなおさなければなりません。
Microsoft アカウントにライセンス情報をリンクしてあれば再認証は楽…だと思っていたのですが、上記記事の通り、まずローカルアカウントを作るか何かしてそのアカウントにログインした状態にし、あらためて再認証時に Microsoft アカウントにログインするといったことをしないと、Microsoft アカウントの読み込みに失敗します。
さらに、僕の環境が特殊 *2 なのか、Insider Preview だからなのか、一覧に表示されている PC の情報を選んでもライセンス認証が通らず、結果的に手元にあったプロダクトキーを入力 *3 することで何とかライセンス認証を通すことができました。


そんなこんなで無事換装ができたマシンでタスクマネージャーを開いたときのこれ。楽しいですよね

f:id:ChiiAyano:20190114010703p:plain
8コア16スレッドの圧力


換装した一番の決め手は、DTM 時の DAW でのミックスダウンの遅さだったんですが、Ryzen にしたところあまり変わらないどころか体感遅くなったような気がします。
これまで4コア4スレッドでそれぞれをほぼ 100% ぶん回して頑張ってたのが、全体で10~30%くらいでちまちま頑張ってる感じ。

f:id:ChiiAyano:20190114022343p:plain
本当ならここで全力を出してほしい
今まで体感45秒~1分くらいかかってた *4 のが、今の環境で実際に計測してみると1分半~1分45秒ほどでした。うーん。数の暴力で爆速化を期待してたんですが、ちょっと期待外れ感。
SONAR (または現行でいう Cakewalk by Bandlab) の Ryzen に対する処理が甘いのかどうかはこれから調査してみようかと思います。別 DAW に乗り換えも検討…かなあ。


とはいえ、新しい世代の CPU に換装することができたので、これでまた3年4年は生きていけるマシンになったと信じています。

*1:Green Screen Of Death. メインマシンが Insider Preview なので、グリーンバックの BSOD (Blue Screen Of Death) が出ます

*2:確か初期の Insider Preview から引き継いだ状態の Windows

*3:正規なやつです

*4:前の状況を計測していないので感覚