WB-BT300 とか PHP とか VPN とか

Twitter から拾った、コンピュータ関係の話。

iPhone の音を PC の音とミックスして出したくて、使っていなかった Bluetooth レシーバを引っ張り出してきた。Onkyo の WB-BT300 という機械だ。コイツはなにをする機械かというと、iPhone など Bluetooth 対応機からは音響装置に見え、WB-BT300 に対して音声を飛ばしてくれる。WB-BT300 は iPhone からきた音声を、デジタル信号かアナログ音声信号に変換して出力してくれるのだ。

で、会社の開発機には TEAC の US-366 というミキサー兼 USB 音源があるのでそいつと接続すると、PC からの音と iPhone からの音をミキシング(混ぜて)出せるようになるのですな。ちなみに US-366 と WB-BT300 は光デジタルケーブルで接続。

ところが、iPhone からの音しか出ない!! なんだこれ??

原因は WB-BT300 のデジタル フォーマットがサンプリング周波数 192kHz、量子化ビット数が 24bit のせい。このフォーマットは統一しておかなければならないのだが、たかが Bluetooth の音声受信装置でなんでこんな高い設定なんだwww
ちなみに CD はサンプリング周波数が 44.1kHz、量子化ビット数が 16 ビットだ。CD よりも音が悪いクセにデータ量は CD の 6.5 倍もあるwww

仕方がないので PC 側の出力も 192kHz の 24bit に設定した。こうすることによって無事 PC と iPhone の音が同時に出るようになった。

某絵描きから、イベントの福引きみたいなクジをデジタル化できないかという依頼があり、ごりごりと PHP と HTML と Javascript で作った。今流行の HTML5 というヤツだ(ぁ
中身はすぐに出来た。そりゃまぁ、そうか。クジ振るだけだから、出た乱数が何等賞なのかに変換して表示するだけである。

問題は管理画面である。単純にクジ、と言っても誰でも彼でもアクセスしてクジが引けるというワケにはいかない。以下の様な機能が入っている。

  • ユーザ登録して、ユーザ登録した人がクジを作れる
  • クジはいくつでも作れる
  • それぞれのクジには 1 ~ 10 等賞まで設定でき、さらに残念賞、参加賞が設定できる。そしてそれぞれの賞及びはずれがいくつあるのか設定するようになっている。
  • QR コードの表示
  • クジを引く画面を Javascript でアニメーションさせる。
  • 何等賞が出て、残り何の賞がどれくらい残っているかリアルタイムで監視する、モニター

使い方はユーザ(主催者)がクジを作ったら、そのクジを iPad などの端末で表示し、お客さんがそれをタップしてクジを引くというものだ。
さらに QR コードを吐いて、それをお客さんが撮影してクジを引くという機能もつけた。この場合、ちゃんと一回しかクジは引けないようになってるのだが、残念ながら Javascript では機種固有の識別番号を取得できないので、cookie になってしまった。そのため、cookie を消去すれば何度でもクジは引けてしまう。

ツイートでの愚痴は、HTML というかサーバのプログラムは一回一回が初めてのアクセスになるというか、仕組み上、同じ人が何度アクセスしようが、サーバ側は初めての人が初めてアクセスしたことにしかならない。
今アクセスしに来た人が前の○○という場所にアクセスしに来て、今のアクセスはそれの続きであるということは実は認識できないのだ。それを実現するために、cookie やらセッションやらっていう仕組みがあるのだが、とにかく一回一回のアクセスがすべて関連を持たせられないので、渡す数値だのなんだのも全部もらい直さないといけないので、プログラミングがすげーめんどくさいっていう話。

これが普通のプログラムだったら、さっききたアクセスは変数に残ってるし、その変数を参照して関数を呼び出せば済むんだけど、PHP だとアクセスが来るたびにプログラムは先頭から実行されてしまうのだ。

あと処理は PHP なんだけど、それを表示するのは HTML なのね。組み方としては PHP が処理の結果に応じて HTML を吐き出してるワケなんだけど、そうなるとプログラム ソースの中に PHP と HTML が混在してけっこう美しくない結果に……。今回は仕様書も何もないままテキトーに作り始めてしまったので分離されてないのだけど、予定してたより大きなプログラム(PHP 部分で 2000 行程度、Javascript が 500 行程度)になってしまったので、今後は気をつけたい(汗


(MP4 / 750×1334 / 25fps / 1’05” / 126MB / iPhone)

amatsukami.jp サーバの様々なサービスは、色々がんばって外に出してるんだけど、それでもやっぱり一部の機能は VPN を張らないと使えない。そのたびに端末(iPhone など)から VPN を張ってるんだけど、けっこうめんどくさい。
モバイル WiFi ルータに VPN を張る機能があれば、端末でいちいち張らなくても済むのになぁ……。

高架下のひさごと iPhone 用マイク iQ7

浅草橋駅の高架下にある蕎麦屋さんが、前々から気になっていた。
名前は『ひさご』。
中はカウンターしかなく、6 ~ 7 席ぐらいしかないんじゃなかろうか?
勇気を出して入ってみる。

すると、中で店を切り盛りしていたのはおばちゃんだった。

オーソドックスに天ぷらそばを注文する。ちなみにご飯類は一切無い。
ストイックな立ち食いソバ屋だ。

味は東京のおそば屋さん。関西の人からすると色々文句は言われそうだが、ストレートな出汁醤油に東京そば。見た目の通りの味としょっぱさ。そして出てくるのが早い。また来よう。

ちなみに常連客が多いらしく、入ってくるお客さんみんな気軽に店主に話しかけていた。
愛されているんだなぁ。

さらに追加情報として最近仲良くなったスーパーがあるんだけど、ひさごさんはそこで食材などを入手しているらしく、顔見知りとのことだった。そしてひさごは入り口に飴を配っているというかご自由にお取りくださいって感じでおいてあるんだけど、それを無料だからということでごっそり盗んでいくお客さんとかいるんだそうな。という井戸端会議的な話を聞いた。
世知辛いのう。

話変わって、iPhone でもそこそこちゃんとした録音が出来るマイクを買った。
実は 4/26 にちょっとした撮影をすることになり、ちゃんと録音する必要もあったのでこれを機会に買ってみたのだ。
生録の機械は実はずっと知人のものを頼ってきた。常に持ってないので、いろいろ録り逃したりしていたのだけど、専用の録音機はでかいし常に持ち歩くのもなぁと思って何となく買わずにズルズルときてしまっていた。
iPhone につなげられるプロ用のマイクの存在も知っていたんだけど、こちらを買わなかった理由は Lightning だ。USB の Tpye-C が普及しつつある昨今、Mac も Type-C しかインターフェースがないマシンも投入したりしているので、iPhone もいずれ Type-C になるんじゃないかと思っているのだ。なので Lightning のマイクを買ったら使えなくなるんじゃないかと。

まぁでも、変換コネクタとか出るかもしれないし、とりあえず明日収録だしとか勝手に自分に言い訳して買った(笑い

ZOOM の iQ7 というマイク。Lightning インターフェースに挿して使う。
マイクの感度を角度で調節でき、指向性マイクから環境音の収録まで可能になる。
ただし 48kHz / 16bit までしか録音できないけど(汗)。
まぁでも音は iPhone 本体で撮るよりも格段によい。音質はちょっと堅めでカチッとした音。人の声はすこしシャープすぎるかもしれない。

なんか録音したデータをここに上げようとしたんだけど、出してもよいデータが一つもなかったので、レビューだけで(汗)。

iPhone と WiFi

今困っていることが一つある。それは WiFi の切り替えだ。そしてこれは Windows 機では発生しなかった問題でもある。

ボクは主回線は Docomo と直接契約している(MVNO ではない)。
パケットパックに入っており、容量は 5GB/Month。これを三人が使っている。
三人だとさすがに月の終わり頃にオーバーしてしまうことが多かったので、Docomo とは別に mineoA プラン契約した。こちらは 6GB/Month である。これはモバイル WiFi ルータで使っているため、もっぱらボクだけが使っている。その代わりに Docomo はほとんど使っていない。

こうすることによって月末に容量オーバーしてしまうということはなくなった。

しかしこの運用は少し面倒な面があった。というのも家と会社にはそれぞれ無線 LAN があり、mineo を使うのは外出時のみだ。家や会社を出るときにはモバイル WiFi ルータの電源を ON にし、家や会社に着いたときには OFF にするということをしなければならないのだ。これをやらないとボクの iPhone はずっと mineo 回線とつなぎっぱなしになり、いつの間にかモバイル WiFi ルータの電池が切れているという状況に陥ってしまうのだ。それに家や会社の無線 LAN が生きているにもかかわらず mineo の通信量を消費してしまうと言う問題もある。

でもけっこー忘れるのよ、モバイル WiFi ルータの電源を切るの。

なので iPhone には接続する無線 LAN の優先順位が設定できて、より優先度の高い無線 LAN を見つけたらそっちに接続する、みたいな設定が出来ると思ったんだけど……。

どうやらそんな機能はないらしい……。う~ん、困った。ちなみに Windows には 8.1 まではこの設定があったのだが、10 では見当たらなくなってしまった。iOS と同じように ABC 順になってしまったのだろうか??
ところで Windows(ノート PC やタブレットなど)でこの問題に直面しないのはなぜかというと、そもそも Windows 機は iPhone と違って使う時にしか電源を入れないからである。外で電源を入れれば mineo に接続するし、家で電源を入れれば家の無線 LAN に接続する。しかし iPhone は常に電源が入っており、一度有効な無線 LAN に接続するとそれが無効になるまでずっとそれを使い続けてしまう。

もう一つ悩ましいのは、ボクが使っているモバイル WiFi ルータは HWD15 というのだがこれが非常に電池が長持ちするので、イチイチ ON/OFF したくないことだ。もし iPhone が自動的に無線 LAN を切り替えてくれるなら、HWD15 は自動的にスリープになってくれる。HWD15 が活躍するのは通勤時間と打ち合わせに出たときくらいなので、一週間とは充電しなくても平気で持つため、カバンに入れっぱなしでいいのだ。

なんかいい方法ないかねぇ?

まら路上に雪が結構残ってるんだけど、懲りずにノーマルタイヤで出ているドライバーが多いのか、ここ数日、会社に行くのにスゲー時間かかってる。くそー。

iOS を 11 にする

iOS のアップデートが来ていたので、アップデートした……というわけではなくて、事の発端は相変わらず WiFi 経由でアプリのアップデートができなかったからだ(下のツイート)。これ、10/05 からずっと発生し続けている。

なんじゃらほいと言うわけで、他に何かダウンロード的なコトを試せないかと思ったら、ちょうど iOS11 が来ていたというわけである。というわけで、iOS11 にはできるんだろうかと OS アップデートを仕掛けてみた(下のツイート)。

するとあっさりとできてしまった。なんだろう??
というか原因は App Store のサーバにありそうだ。そして OS のアップデートは App Store とは異なるサーバなのだろう。ただ認証回りは使い回していそうだ。そちらは問題なく動いていると言うことか?? とかテキトーなことを思いつつ、まぁしばらく様子見か。

ところで iOS11 にしたらなんか画面が変わった。色がおかしい……。
全体的にガンマ値が上がって白く飛んだような感じの画像になってしまった。色の深みが減ってしまったようなそんな感じ。そっちの方が目にいいのかなぁ?? ちなみにこれはディスプレイの問題であって、スクリーンショットを撮っても区別は付かなかった。旧 iOS の iPhone 7 があれば比較できたかも……。

iOS から画像の保存形式が変わった。より圧縮率が高いものになったわけだが、コレはコレで歓迎すべきことだったのだが Photoshop では読めなかった。まじかー。まぁでもそのうち、対応するだろうなと思って、それまでは従来通りの Jpeg 形式で保存するように設定を変更した。
ちなみに HEIC から JPEG にコンバートするツールはけっこうあるのでそれを使えばいいかとも思ったのだが、劣化なしで Photoshop で読むには HEIC から可逆圧縮形式(PNG など)にしなければならない。それならばまぁとりあえず Jpeg のままでいいか、と(iPhone そのものが保存する時に Jpeg より HEIC の方が画質がキレイだったりしたらいやだな)。

他に目立った変更と言えば、コントロールセンターと App Store の Update だろう。
コントロールセンターはいろいろできることが増えた。下の SS は左が iOS10、右が iOS11 の SS だ。携帯通信も ON/OFF できるようになった(緑のアンテナのアイコン)。これがくせ者で、とっさに WiFi を OFF にしようとして緑の方をタップしてしまい、通信が一切できなくなるということも(笑

App Store の Update では、アップデートするアプリの容量が出なくなってしまった……orz
これは困った。というのもボクは 10MB とかそこいらのアプリなら携帯回線でダウンロードしたりするからだ。しかし容量がわからないので、そのアプリが携帯回線で落としていいのかどうかが解らなくなってしまった。

上の SS は左が iOS10、右が iOS11 のものである。iOS10 は手頃な機械が無かったので、iPad のものではあるが(汗)。なんで容量表示、やめちゃったんだろう……?

あと iOS11 で嬉しい機能は画面の動画が撮れるようになった。スマートフォンで開発している人間にはとてもありがたい。一連の操作や画面の変化、動画でしかわからないバグなどを全部動画で残しておけるからだ。今までは Mac に接続するか、画面を他のカメラで撮影するしかなかった。

最後に、10/12 だというのに気温 30 ℃だった……。

裁判とか AppStore とか PHP とか妹倫理裁判とか

裁判は報復の場ではないと教わってきた。量刑は犯した罪そのもので判断すべきであると。
よく新聞などでも被害者についてお涙頂戴と言わんばかりのことがのその事件の記事の最後についていることがある。「○○を目指していて、まさに今日その発表の日でした」とか「シングルマザーでうんたらかんたら」とか。
その情報が果たして必要なのかと首をかしげることもある。

だが日本の裁判では、殺された人がヤクザだっただけで刑が軽くなったりする。
世間を騒がせたとかいう理由で刑が重くなったりする(逆に世間からの迫害を充分受けたとして軽くなることもある)。

うう~ん……いいのかな、それで。司法ってそういうもん??

なんか知らんが、朝から iOS のアプリが更新できないという不具合に見合わされた。これが WiFi 環境だとなる。家でも会社でも。勇気を出して Docomo 回線でやるとちゃんとダウンロード出来た。なんだこれ??
でもダウンロード出来る時もあったり……なんか今日は一日中、そんな感じだった。

一葉いいよ、一葉。ってなんでこんな動画を撮ったのか、ボク自身さっぱり記憶が無い。たぶん 1/2 summer+ の何かを確認して欲しいって言われて、ちょうどこのシーンがあったので懐かしくて録ったんだとは思うんだけど。
で、録って気づいたんだけど、背景が間違っている……orz
ここは一葉と主人公が寝泊まりしている部屋なんだけど、ド深夜の話なので布団が敷いてないといけないのだ。のに畳になっている。う~ん、何故見逃した、ヲレ。

下の写真は水新菜館という浅草橋にある中華料理屋さん。美味しいのに滅多に行かないお店だ。そう、ここは味はかなりいい。浅草橋の中華屋さんの中では上から数えた方がいいだろう(というかボク的には二番目である)。女性にも人気で、昭和な申し訳ないけどあまりキレイとは言えない店なのに、女性客が次から次へと入ってくる。

じゃぁ何故行かないのか?
それは高いからwww
店主は自分の料理の腕にかなり自信があるんだと思う。どれもメニューは 1000 円以上だ。ランチでは 1000 円以下のものもあるが量が少ない。うう~む……だが、うまい!

Docomo のデータ回線を解約する

二年縛りが解けたので Docomo のデータ回線を解約することにした。
ボクは三つの回線を契約している。

  1. 主回線(iPhone 7)
  2. データ専用回線(MR04LN
  3. 開発用回線(iPhone 7)

ところがコレには欠点があった。それはシェアパックだ。いや、これ自体は別に悪いものではないのだが、上の 3 回線の通信量はボクに紐付けられている。どの回線使用しようが、ボクがドコモと契約した通信量の制約を受けてしまう(かつては、各回線ごとに通信量の最大値が決まっていた)。
そのため、データ専用回線は非常用の回線(たとえばドコモの許容量をオーバーしてしまった時に使うなど)という意味がなくなっていたのだ。

しかも月 2,572 円もする。これなら MVNO を契約した方がマシである。
ということは結構前から考えていたんだけど、二年縛りのため解約できないでいたのだ。ちなみに違約金は 9500 円らしいので 4 ヶ月以上前だったら解約してもよかったんだよなぁと何となく思う(汗

ついでに契約を見直してもらった。カケホーダイを 1000 円安いライトへ。他にもなんかボクが知らない間にいろいろ入っていたよく解らないサービスを全部解約。機種変するときにつけたものの翌月に解除するのを忘れていたものだと思われる。
あと他にも i-mode 時代に使っていたと思われる、今は使ってないサービスがあったのでそれらも。なんだかんだで、データ専用回線の分と合わせて 5000 円以上削減された様子。
だんまりでお金引かれてる人、いっぱいいるんだろうなぁと思いつつ……。

9/23 に買ってきた液晶が 1920×1200 ドットの Android 端末の電源が入らなくなった。なんだこれー?? 電池残量さえ出ない。普通、電源ボタンをを長押しせずに普通に押すと電池残量が表示されるじゃない?? それすら出ない。

ありゃー、こわれたかぁ……さすが 3000 円。せっかくのデュアル ディスプレイが……と思ったら、ただ充電が切れてただけだった。

えー、充電切れてても、電池残量くらいは出るよね??
というか、この kobo Arc 7HD という機械はこの電源回りの告知がすごく不便なんだよね。というのも電源ボタンを普通に押しただけで電源が入ってしまうので、電池残量だけ見たいとかいうことが(たぶん)できない。
やはり安かろう悪かろうと言うことか。まぁ、こちらはディスプレイとしてしか使ってないので、そんなに文句はないのだが……。

ふと画面を見ると、叶さんの手が欠けているのを見つけてしまった。
なんだこりゃー?? 背景に立ち絵を重ねる処理になにか御簾でもしたんだろうかと思って PHP のソースを見直すも、おかしいな所は特にないように見える。あれこれと頭をひねったものの、やはり原因がわからなかったので何となくデータ(画像)の方を見に行ったら、この神坐湖駅前の背景データが 512×512 よりでかかった。
HTML によって表示は 512×512 に縮小して表示されているものの、内部の処理は実際の画像データの大きさに従って反映されるので、512×512 より広い部分はデータはコピーされないため、このようなことになってしまったようだ。

今は 512×512 で決め打ちしているが、背景データの大きさに合わせるようにしたほうがいいのかなぁと思いつつ……。

気温とか 4K とかカレーのシミとかミルクとか

またまた Twitter から拾った、いろいろくだらない&どうでもいいネタ。

暑い! ってただそれだけである。残暑は長し。

まぁメモ程度に。1080p と較べるとファイルサイズはほぼ倍。電池は 10 ポイント多く使用した。さすがに 4K クラスとなると HEVC で録画したいんだけど、Premiere で読み込めないので未だに互換フォーマット。というか、PhotoshopHEIF に対応してくれないと移行でできない……orz
すぐ対応すると思ったのになかなか対応しないなぁ……。

そう!こういうのないの? ボクは白が好きなので、割と白を着るんだけど……時々食事の時失敗しちゃうんだよねぇ。そしたらもうそれは選択肢なくちゃいけなくなる。上のようなウェットティッシュがあれば、ちょいちょいってその部分に薬品(?)を浸透させて、そのあとウェットティッシュ側に吸い取るみたいな……そういうのないのかなぁ。

先日 TAMA Networks の旧コンテンツを別サーバに移した。そしたら、訪問者カウンタがおかしくなった。理由は簡単で、リバースプロキシ(Application Request Routing)経由でアクセスするため、旧コンテンツから見たらリバースプロキシしかアクセスしてこないためだ(笑)。
旧コンテンツに何千人、何万人来ようが、全部リバースプロキシが間に入るので、旧コンテンツからしたら一人がすげー勢いでアクセスしてくるな、って事にしかならないのだw

と言うわけで、リバースプロキシ側で HTTP ヘッダに HTTP_X_FORWARDED_FOR という名前で、アクセスしてきた人の IP アドレスを入れて、それを旧コンテンツに渡し、また旧コンテンツでは REMOTE_ADDR でカウントするのではなく、先ほどの HTTP_X_FORWARDED_FOR でカウントするように書き換えた。これで解決。

シティハンターだったっけなぁ? キャッツアイだったかなぁ。女子高生とかを「ミルク臭い」と呼んでいたのを思い出した。確かに 10 代の女の子って代謝が早いせいなのか、ミルクのような臭いがしてた。でも最近、JC も JK も大人びちゃって化粧やら香水やらするから、あの臭いはしなくなったよなぁなんてことをふと思う(ぁ
脱いだら解るけど。

そしてエロゲを作ってるからかもしれないけど、アレだよね、すっかりミルク臭いなんて表現は使わなくなったって言うか、もう女子高校生や女子中学生くらいが恋愛のターゲットになっても驚かれなくなったよなぁ……。エロゲだと容姿的にそれくらいが普通だもんなぁ。