5年ぶりに(メイン機の)グラボ交換

仕事&エンコ用のメインWindows機のグラボをGeForce GTX260から実に5年ぶりリプレース。CPUやマザーは途中でSandy Bridgeに移行したのに、グラボはそのまま使い続けていました。前エントリで日常エンコにもTMPGEnc Video Mastering Works 5を活用する機会が増えそうなので、これを機に改めて1)CUDAを活用して凝ったフィルタも使ってみようかなぁとか。あと、最近同機が不調で画面が固まったりする(マウスとか時計もフリーズしてるので切り分け不能だけど、ディスクアクセスなんかはそのまま動いてるっぽかったり)のも2)治るといいなという期待、そして5年の進歩で3)消費電力や発熱もさぞ低減されているだろうという期待で。

CUDAなのでGeForce一択。700系が最新ですが、コスパ狙って1世代前の600系で、なおかつ消費電力が64Wと低い650無印でいいや、ってのは割と一瞬で決まりました。その上のGTX650 Tiだといっきに110Wとかいっちゃって動機3)が弱くなるなと。実のところGTX260もCUDAに期待して投資(当時3万位したような)したものの、結局つかいどころがないままだったので、動機1)はまぁ期待半分だったんですよね。

で、GTX650をAmazonでググったところ、DVIが2ポートついてて小型でしかも補助電源いらずってのがあったので、またまた玄人志向のお世話になることにしました。

1385837_10202184370917599_1674972461_n

■とりあえず不調が1つ治った

もう随分前、Windows7の頃からなんですが、コールドブート後にログオン画面になってすぐにログオンすると画面が真っ黒のままになる現象が出ていました。デスクトップアイコンも出ず。マウスカーソルだけは反応するんだけど、結局Ctrl+Alt+Delして一旦ログオフしてから再度ログオンするとOKみたいな。あるいはログオン画面でしばらく我慢してサービス関係がひとしきり起動し終えた頃にログオンする、みたいなおまじない的な使い方をしてました。それが、グラボ交換でサクっと直り、実質のコールドブート時間が大幅に短縮。これだけでもう買って良かったと感激しきりw。

■エクスペリエンスインデックスは微妙

まず構成ですが、CPUがi7/2600K定格。マザーはPCIex Gen3に対応してるんですが、CPUが初期Sandy BridgeなのでGen2までしか使えず、Gen3対応のGTX650の実力が出し切れていない可能性があることをお断りしておきます。

Windows8エクスペリエンスインデックスは7.1->7.2の微妙な差に。実は最初に測った時GTX260は6台だったんですが、ドライバを最新版に更新したらあっさり7.1に向上。そのあとで交換したらあまり変わりないことに。5年前のモデルとはいえ当時そこそこお高かっただけはあるんですかね。

GTX260

・交換前GeForce GTX260

GTX650

・交換後 GeForce GTX650

ちなみにこちらのCUDAの「Compute Capability」という指標をみると、GTX260は1.3、GTX650無印は3.0となっています。よくわからない指標ですが、APIのバージョン的なものではなく、9800GTを1.0とした比率だとしたら倍以上高速なはず。そして現時点で最高が3.5なのでなかなかのはず!

■TVMW5での効果

前提としてエンコード自体にCUDAを使う気はありません。エンコはあくまでx264。フィルター処理が軽くなればいいなと思っています(さすがにCUDAのエンコード画質はまだ保存には耐えないレベルだろうと)。でもまぁものは試しにとCUDAでエンコードさせてみると、同じフィルタ条件下(24fps化動き優先+逆プルダウン(縦縞除去)+リサイズ)で1分ソースが58秒が41秒と短縮されますね。

フィルタでは、通常の「ノイズ除去」程度では全く使ってくれずCPU100%。より演算負荷の高い「高精度ノイズ除去」でようやく20%ほどがCUDAの分担になるようです。処理時間は2分36秒と実時間の2.5倍ほどになるので、あんま普段には使わないかなぁ。ただCPUだけでやったら3分13秒なので効果は出てますね。30秒程度の差ですが、24分のコンテンツなら12分も変わってきます。

更に「スマートシャープ」上乗せどんっ。CUDA使用率は45%に。エンコ時間は2分52秒(CUDA OFFだと3分41秒)。ただまぁスマートシャープかけるなら、aviutl側でWarpSharpプラグイン使った方が仕上がりが好みなので、これもあんまり使う機会ないかな(^^;)。

 

てことで、重ためのフィルタをかけると効果は確実に出るけど、普段使いのレシピだとあまり出番がないかなという印象。CPUをIvy Bridge世代にものにすると、PCIex Gen3が開放されて速くなるかも?という期待がありますが、その分CPUも速くなるからCUDA使用率はどうなんだろとも。いずれにせよ今月はiPadも出るししばらくは手が出ないかな。

TVMW5でロゴ消し

今までMediaCoderをベースにしていたアニメエンコレシピを久しぶりに刷新しました。MediaCoderは様々なフリーツールを裏で呼び出して使うフロントエンドGUIツールで、今まではAviSynthでデインタレと局ロゴ消しをして、x264でmp4にエンコードするというレシピにしていました。MediaCoderは各種パラメーターがGUIで指定できて便利は便利なんですが、いまいち不安定な箇所もあります。最新版が良いとも限らないので迂闊にアップデートもできず、既に治ってるバグもあるかも知れないですが、ウチでは少なくとも、

・カンパしたのに定期的にIDを聞かれるダイアログがでてエンコが中断される

・カンパしたのにブラウザで広告ページが表示されたりしてウザい

・環境設定にFireFoxを使うのだけど、ついにFF最新版ではエラーが出るようになった(MediaCoderも最新版にすればいいんだろうけど、上記理由で勇気が要る)

など。そして、AviSynth(aviutl)によるデインタレ処理のスクリプトが難しく、色々ググってはマネしてみたんですが、単一のスクリプトで汎用性のあるものに仕上げられないでいました。

一方、デインタレでいえばTMPGEnc Video Mastering Works 5(以下TVMW5)で24fps化した方がずっと簡単で安定することはわかってたんですが、こっちは透過合成フィルタがなくロゴ消しができないので、仕方なく上述のMediaCoder環境を使っていた、という感じです(ここ2,3年位)。

それでもiPhoneやiPad、車載モニタで見る分には正直あまり気になってはいなかったんですが、最近は友達と遠隔同期視聴をしたりするので、PCモニタやプロジェクターで再生してやっぱガタガタだなぁ、と思う機会も増えてきたり。もともとチルト(縦スクロール)するカット(確かストパン2のED)がガタガタするのが気になってAvySynthを導入したんですが、気付いてみると最近はパン(横スクロール)がガタガタなのに凹む日々。

連休を使ってレシピの再検討を行いました。以上、毎度長い前振り。

■TVMW5でも局ロゴ消せる!?

なんでもっと早くググらなかったんでしょう。結論からいうとできました。正確にはaviutlで「透過性ロゴ」フィルタをかけただけの編集プロジェクトファイル(.aup)を作り、それをTVMW5にVFAPI経由で読み込ませます。aupファイル用のVFAPIプラグインはaviutlに添付されているので、TVMW5のフォルダに放り込んでやれば認識するので、環境設定画面で有効化してやればOKです。

以下、当面の手順メモです。個々のソフトの細かい操作方法などは割愛します。

・TMPGEnc MPEG Smart Renderer 4でCMカットする

tsを直接aviutlに食わせてたaupをTVMR5に食わせてからカット作業してもいいんですが、最近のTMSR4はCM検出機能とかついて便利なのと、aviutlに生tsを食わせるとGOP検出とかで読み込みに数十秒待たされるので、CMカットは従来通りTMSR4を使うことにしました。HDD容量的には中間のMPEGファイル作らなくて済ませられるのも魅力なんですが作業性優先で。ここで生成されるファイルは、CMカット済みMPEG2ファイル、以下(A)と、(チャプター付きmp4を作りたい場合は).keyframeファイル(B)です((B)は環境設定で自動的に出力されるようにできます)。ちなみに我が家ではここまでは録画機で行います。

・aviutlでロゴを指定して.aupファイルを生成

aviutlに(A)を読み込ませ、チャンネルにあったロゴをセットします。aviutlは最後に使ったロゴを自動的に適用してくれるので、同じチャンネルの番組を連続で読み込ませると作業性が上がりますね。aupファイル(C)は単なるプロジェクトファイルなのでサイズは小さいし一瞬で保存されます。

aviutlのコマンドラインツールとかで上手いことマクロ化すれば、(例えばチャンネル名をファイル名末尾に足しておいて)このaupファイル出力までを自動化できるのかも知れませんが、まだよくわかってないです。aviutlって局ロゴ透過ファイルを作るのくらいしか使ったことないので…

・TVMW5に(C)を読ませる

VFAPIフィルタが正しく設定されていれば、普通にプロジェクトにドラッグとかで一括投入できます。ただしaviutl側でAC3音声を認識できてないせいか、TVMW5側でも音声トラック無しとして読み込まれます。そこで音声トラックとして手動で(A)を再指定します。(A)は映像と音声が両方入ったファイルですが問題なく音声トラックだけが利用されます。またkeyframeファイル(B)はここでは使いません。TVMW5にはキーフレームをiOSのチャプターとして出力するというチェックボックスがありますが、ウチでは機能してないっぽいので(コンテナ拡張子を.m4vとかにしたらいいのかも?)。また、keyframeファイルを読み込ませると、プラグインがクラッシュするっぽいです。エラーダイアログを無視して進めればいいだけなのでサムネイル生成に失敗してるのかな?まぁ鬱陶しいのには変わりありません。

・TVMW5でエンコする

TVMW5もH.264なmp4はx264を使うので、MediaCoderの時と同じです。もともとパラメーターを似せた出力テンプレートを作ってあったのでこれを指定。またフィルタも24fps化(動き優先)や軽くノイズ除去を適用したテンプレート作っておいて一括適用。この辺り、なるべく数をまとめてエンコした方が効率は良いです。

 

単に再生できりゃいいという方ならここまで。以下はチャプターやメタタグ、アートワークなどを一括処理する為の追加レシピです。

・keyframeファイル(B)からiOS用チャプターファイルを生成

自作のdgKeyframe2Chapterというツールを使い、.chapters.txt形式のファイル(D)を作ります。

・各種付随ファイルを統合して、高機能mp4ファイルを生成

iOSやMPCHCでチャプターを認識し、iTunes上で「TV番組」として認識して番組名やエピソード番号、サブタイトルなどが正しく表示され、更にはアートワークまで表示されるmp4ファイルにします。

AtomicParsleyというコマンドラインツールを使えば良いのですが、バッチ処理のためのGUIフロントエンドツールdgMP4Taggerを公開しています。

  • .mp4ファイル
  • .chapter.txtファイル(チャプター情報)
  • .jpgファイル(アートワーク用)

の3つを合成して新しいmp4ファイルを作ります。詳しくはリンク先や同梱のマニュアルをご覧下さい。

 

とまぁ、電子書籍レシピ同様、相当な物好きじゃなけれ
ばマネできない手順ですが、とりあえず自分の記録のために書き留めておきます。新旧レシピの比較としては、

  • パンニングなどのカットが滑らかに動くようになった
  • 動画解像度(?)も上がった気がする
  • サイズが20%程度縮まった!
  • エンコ時間が若干伸びた?(たぶんノイズ除去フィルタの分)

という変化が。今までインタレ解除がヘッタクソだったせいで、何フレームか毎に写真のような混合フレームができちゃっていました。再生ソフトでポーズかけまくってるとこういうフレームに遭遇します。当然圧縮には不利でしょうし、なによりこうした物理的にブレたフレームが混じることで見た目も悪くなります。新レシピだとスペースキー連打しまくってあちこちでポーズしてもこうしたフレームが見当たりません。

mixedframe

実際にはインタレ解除ってもっと奥が深くて、こだわってる人は番組毎、下手するとエピソード毎に最適なデインタレレシピを適用しているようですが、σ(^^)はさすがにそこまでの手間はかけたくありません。なので、TVMR5のそこそこのインテリジェントさにおまかせできるのがこのレシピの最大のメリットですね。また、ソフトとして安定度が上なのも大きいです。複数本のバッチ処理をかけて安心して寝ることができます。もっと早くググってレシピを見直すべきだったと反省しきり。

さて、これで何年戦えるんでしょうね。最近はBDレコーダーやnasneなどでもH.264のハードエンコができるようになったし、iOS端末から直接、しかも外出先からも視聴できるような環境が整ってきています。そろそろソフトエンコの時代でもないだろ、という気も。ただやはりそうしたハードエンコは画質的にはまだ微妙でブロックノイズ等が気になることが多いし、やはりOPスキップなどがフリックでできる拙作「おやゆびでお」+自作ライブラリサーバーの方が快適なんだよなぁ(ステマ)。

iPhone5s用ケース交換

iPhoneケースを替えてみました。

前のはこちら。とにかく薄くてiPhone5本来のサイズに近い状態で使うべく選んだんですが、やはりつるつるで扱いづらかったのと、たまたま見かけてデザインが好みだったのが買い換え動機。

写真で見ると一般的なバンパー系よりは小さそうな気がしたんですが、つけてみると普通にバンパーでしたorz。完全に一回り大きくなります。片手で保持して、親指でタップする距離が遠くなった。愛用のベルトケースにもギリギリ収まったものの、若干取り出しづらくなったり。うーむ、悩ましい。iPhoneはアラーム鳴りっぱなしの振動とかで何度もテーブルの高さから床に落下させてますが、今までそれで割れたりしたことはないので、あまりバンパー系の保護までは必要と考えてないんですよね。小傷防止したいのと、グリップ性の向上、そして見た目。

まぁ、デザインはそこそこ気に入っています。

 

SDIM0044スペースグレーのiPhone5sに装着した感じ。

Lightningポートやヘッドフォンポートをみてもらうと厚さがイメージできるんじゃないかと思います。商品写真ではここが巧妙にブラックアウトさせてるのが小ずるい。まぁ、純正Lightningケーブルや、手持ちのBOSE Quiet Comfort3のケーブルは刺さるのでまずは良し。

白い部分も公式写真ほどツヤはなく、普通にプラスチックの質感です。公式のあれはCGでしょうね。

SDIM0046

音量ボタンはちゃんとケース側に独立パーツがついているので問題なし。

一番の難点はマナーモードスイッチですね。かなり奥まってしまい、片手で切換はほぼ不可能なレベルです。


SDIM0050

背面。何度もバンパー系と書いてますが背面はちゃんとあります。ラバー塗装でサラサラしてます。


 

とまぁ、バンパー系ケースのサイズ増加やポート類へのアクセスが若干しづらくなるのが気にならない人なら、質感は値段なりでアリなんじゃないですかね。カラバリも結構あります。

逆に、製品写真みて「バンパー系の割にはスリムでいいかも!?」って思った人はお気を付け下さい。どうみてもバンパーです。本当に(ry

カアチャンiPhone向けクイックダイヤルページ作成

リテラシ低めのウチのオカン向けに、iPhoneのホーム画面には一発で電話発信できるショートカットを置いていました。「電話」アプリの「よく使う項目」でいいじゃんと思われるかも知れませんが、同時に「電話代も節約したい」というニーズがあって、050PlusやSkypeといった通話アプリも併用してて、誰にはどのアプリからかければいいとかを本人には意識させずに簡単に発信できるようにしたい、という命題があった訳です。

ところが、iOS7になってその手のホーム画面にショートカットを置く系のアプリが軒並み使えなくなってしまいました。いずれ回避策が見付かって対応版がリリースされるのかも知れませんが、ともかく現状ではAppStoreで探してみた範囲ではどれもiOS7になって動かなくなったようです。

しばらくiOS6のままにしてもいいんですが、FaceTimeオーディオが使えるとか、NewsstandやPassbookのような使わないアプリアイコンをフォルダに隠せるようになるとかメリットもあるので、ホーム画面ショートカットに頼らない方法を模索してみました。

■カスタムURLスキーム自体は使えるので、HTMLでリンク集的なものを作る

試しにSafariのアドレス欄に「facetime://0901234xxxx」と入れてみたところじゃんとFaceTime発信ができます。カスタムURLスキーム自体が廃止になったわけではないようです。これを直接ホーム画面にブックマークとして保存できれば話が早いわけですが、どうもそれは不可能っぽい。

仕方ないので、HTMLでリンク集ページを作って、ウチのサーバー上に置くことにしました。当然ながらiPhoneが圏外にいる時は参照もできませんが、そもそもの用事が通話発信なのでまぁいいだろうと。

自分でHTMLが多少は書けて、配置するサーバースペースをもっていて、なおかつ操作が苦手な親御さんなどがいたら参考になさって下さい。

ひな形配布キット quickdial.zip

■ホーム画面用のアイコンを作る

1385819_10202104811888673_1476785260_nまずホーム画面用のアイコン。適当に受話器の無料ベクター素材を拾ってきてささっとでっちあげましたw。

標準の電話アプリに似ていて、なおかつお得そうなイメージでブルーの意匠にしてみました。

iPhoneのホーム画面用としては、Retina対応機用の120×120のものと、非Retina機(3G/3GS)用の60×60のものが必要です。配布キットに含めておきますので、よければ御利用下さい。

 

■電話帳ページ(HTMLファイル)を作る

1385661_10202104812048677_158636288_n

ページ(index.html)のデザインはこんな感じ(ピンクのリボンは名前を隠すためのもので実際にはありません)。シニア向けなので字を大きめにしています。タブでグループを切換えられるようにとか凝ったことも考えましたが、やはりシニアなので操作が複雑でない方がいいかなということで、単純な1枚ページにまとめてみました。ただし、無料通話、割安通話そしてメール(実際には「メッセージ」アプリを使用するiMessage/MMS)という区分けを作って、h3タグで見出しをはさんでいます。各項目はol、liタグを使った箇条書きで、スタイルシートstyle.cssを使ってiPhoneぽいというかボタンっぽい見た目を実現しています。そしてaタグにカスタムURLスキーマを書いてリンクを実装しています。

以下、代表的な発信方法毎の記述方法を紹介します。aタグのhref属性に指定すれば利用できます。

・電話発信 tel:09012345678
・G-Call発信 tel:xxxx09012345678

通話料が半額程度になるG-Callの場合、契約時に通知される4桁の番号を電話番号の前につけるだけなので、基本的に電話発信のURLスキーマを使い番号だけ書き換えればOKです。専用アプリを経由する必要はありません。

・FaceTime(映像有り)発信 facetime://09012345678

電話番号の代わりにAppleID(メールアドレス)も指定できます。

・FaceTimeオーディオ(音声のみ)発信 facetime-audio://09012345678

iOS7以降のみ。

・050plus発信 com050voip://keypad?09012345678

ちょっと長いです。即発信とはならず、050Plusアプリのテンキー画面に指定番号が入力された状態で開くので、別途アプリ側で発信ボタンを押す必要があります。

・Skype発信 skype://username?call

「username」の部分にSkype IDを入れて下さい。

・メール送信 mailto://mail-address

「mail-address」の部分をメールアドレスに置き換えて下さい。

・iMessage、MMS、SMS送信(電話番号) sms://09012345678
・iMessage、MMS、SMS送信(メールアドレス) sms:hogehoge@ezweb.ne.jp

どうもメールアドレス形式の宛先の場合、//が不要っぽいです。

配布キットのindex.htmlをテキストエディタ(メモ帳などでOK)で開き、各行のを以下のように編集します。

<a href="発信URLスキーム"><li>表示名</li></a>

発信URLスキームは上に色々書いたアプリ別の表記です。青い字の部分は実際に画面に表示される名前です。

行の増減は自由に行ってOKです。

その他、HTMLがかける人は自由に拡張して下さい。発信方法別、相手別にアイコンをつけたりしても見やすいでしょう。

で、最終的にできあがった、htmlファイル、style.css、アイコンファイルを適当な公開サーバーに置き、iPhoneのSafariからアクセスし、ホーム画面にブックマークすれば、先のアイコンが使われるはずです。

サーバーの設定などはここでは書き切れない
のでまた別途調べるなりして下さい。電話番号やメールアドレスなどの個人情報を含むページなので、パスワード認証など適切なアクセス制限もお忘れ無く!可能ならSSLによる暗号化も使用しましょう。

■全てのiPhone内で完結させるには?

やはりサーバー上にデータを置くのは大変だしセキュリティ上の懸念もあります。本来はiPhoneローカルに情報を持たせたいところですね。アプリを作れる人はUIWebViewが1つあるだけのアプリを作り、上記HTMLを読み込ませればOKでしょう。そのうち暇をみつけてやろうかと思います。

あとは、試してませんが、JavaScriptが得意ならば、ブックマークレットのような方法で全てのデータをURIの中にもたせるなんてウルトラC的なことは可能かもしれません。ただこれは各種ショートカット作成アプリがとっているアプローチで、iOS7だとなにが問題なにか判明しないと難しいのかも知れません。

究極的にはこれらをiPhone上で作成し、表示できるアプリを作ってリリースすればいいのかもですね。ニーズがあればチャレンジしてみようかな?

iPhone5s用保護フィルム装着

とりあえず、iPhone5につけてた保護ガラスを貼り替えてしのいでいたんですが、やはり日光下での反射(白っぽくなる)が気になったのと、TouchIDの使い心地を考えると(別に問題はなかったんだけど)薄いめのフィルムにしたいなと思い物色することに。鉄板のパワサポとかマイクロソリューションはネタ的につまらないので除外(不満があればそっちを買い直すかもだけど)。

ちょうど発売直前に発表されたbelkinのガラスタイプフィルムとやらにしてみました。今までのものが0.4mm厚とあきらかに板1枚分盛られているのがわかる厚みだったのに対し、こちらは半分の0.2mm。PP系のフィルムに比べればまだ厚いし、ホームボタン使用時に若干エッジがひっかかる感じはしますがだいぶマシにはなっています。あとブルーライトカット機能は無し。

ガラスタイプの一番の売りは対衝撃性能のようですが個人的にはあまり気にしてません。どころかひっかき傷などの保護という観点ではもはや必要性を感じていません。σ(^^)が未だに保護フィルム/ガラスに執着するのは、むしろ指滑りのスムーズさに期待してのことです。「従来製品より2.5 倍スムーズなタッチ感」という売り文句に惹かれました。あとは透明度の高さですかね。まぁ、1年でヤフオクに出す時に「購入時から保護フィルムを貼ったままの美品です」って書きたいだけってのもありますw。

■お高いだけあって付属品じゃ充実。ただ、いうほど指すべり良くない?

発売価格が3,980円とiPhone5につけてた保護ガラス並のお値段。果たしてヤフオクPR用という意味ではコストが回収できるか微妙ですw。付属品としてクリーニングクロス、ゴミ取り用ペタペタ粘着シート、空気抜き用ブレード(=厚紙)など一通り必要なモノは添付されています。ただまぁこの辺りは一通り持っているので別にいらないんですけどね。抜いて安くなるものなら抜いて欲しいです。実際、ブレードはしなりが悪くて使い物にならず。やはりTポイントカード最強です。

フィルム自体はフレキシブルガラスということでしなりはするものの弾性があって、片側保持でもう片側がしなってぺちょっと貼り付いてしまう、みたいなことは置きにくく、位置あわせはとてもやりやすかったです。特にガイドもなにもない状態ですがほぼ一発でキマりました。

上記保護ガラスに比べてあきらかに反射率が低く、画面オフ時の黒がよく沈んでる感じ。もちろん解像度劣化などは全く感じられません。良くも悪くも変化を感じない感じ。指紋のつきやすさと拭き取りやすさも標準的かな。指紋がつかないってことはないです。

ただ、売りの「従来製品より2.5 倍スムーズなタッチ感」に関してはかなり期待外れかな。すごくプラスチック的です。少し使って使ってると油分が移るのかそこそこ滑り出しますが、ちょっと力をいれるとべべっとなりますね。これたまにアルコールとかで綺麗に拭くとまた滑らなくなるパターンだな(光沢のマイクロソリューションがそんな感じだったような)。指滑りでは前のヤツの方が圧倒的に良かったです。

でもまぁしばらくは使ってみます。

同日追記:

なんだか、隅っこの方が浮いてくる事案が発生中。押さえればくっつくんだけどまた時間がたつと浮いて白くなる。これは地雷臭がしてきたぞ…このまま改善しないようなら、捨てるのはもったいない値段なので返品交渉してみようかな…