2019年1月17日木曜日

Windowsの「プロセッサーのスケジュール」の設定について

CPU使用率に十分な余裕があるのにも関わらず、ゲームを遊んでいる時にClownfishというオーディオアプリがアンダーバッファ炸裂(ぶちぶちと音が切れまくる)しまっていた事に関するトピック。
結果的にこれはWindows設定の「プロセッサーのスケジュール」をデフォルトから「バッググランドサービス」に変更することで解決しました。
しばらく、この設定の意味することが分かっていなかったのですが息抜きがてらに調べたのでまとめておきます。

---
マルチコアCPUの消費電力はスケジューリングで変わる? - ASCII JP
http://ascii.jp/elem/000/000/672/672088/index-3.html
Long/Short - スレッド切り替え間隔を長くするか短くするか。長いほうがコンテキストスイッチのオーバーヘッドが小さくなり、短いほうがリアルタイム性は上がると推測されます。
Variable/Fixed - フォアグランドなプロセスにCPU時間を優遇するか否か。優遇する割合は次のパラメーターで設定できます。
QuantumBoost - 上記パラメータがVariableに設定されている時に利用されるパラメーターです。1倍、2倍、3倍から選べます。

Variable/FixedとQuantumBoostは被ってしまっているところがあるが互換性の都合と考えられます。
私が小学生でも知っていると冗談で馬鹿にされた「プロセッサーのスケジュール」の秘密はこのようになっていました。
> 「プログラム」と「バックグラウンドサービス」の2つの設定があるが、前者は「Short-Variable-3倍」(クライアント版Windowsのデフォルト値)を設定するもので、後者は「Long-Fixed」(サーバー版のデフォルト値)を意味

ボイスチェンジャーのようにリアルタイム性が要求されるプロセスを実行する場合は、フォアグランドが優先されるとアンダーバッファを引き起こす可能性があり得そうです。
また、リアルタイム性を上げるために切り替え間隔をShortに切り替えるのは何か効果が望めるかもしれません。とはいえ当然ながら、リアルタイム性を向上させるとオーバーヘッドが増加するのでこの辺りのバランスになりそうです。効果の程はやってみないと分からないところがあります。

8コアのようなシステムならば基本的にはプロセスアサインのstrategyがうまくできれば意識しなくても良さそうなものなのですが、この辺りはよく分かっていません。

2018年12月15日土曜日

両声類「じょんさん」に学ぶ、"KawaiiVoice"の作り方! に参加した #kawaii道場

https://connpass.com/event/109885/

参加動機ですが、前に録音したときに何回リテイクしても棒読みになっちゃうし声質全然変えられないし難しいなーと感じていたからでした。
FaceRig with Live2D と 恋声 を使ってみた

声真似とか上手な人っていると思うのですが、私は真逆で声を作ったりするのができない感じでした。声を変えるってどうゆうことなんだろうと。
また、ヒトカラが好きなのでミックスボイス(地声と裏声が混ざった歌声。粉雪のサビを綺麗に歌うための声質)とかも出せるようになりたいなぁと思うわけですが色々調べてもよくわからないまま。
そんなことを思って月日は経っていたのですが、少数でボイストレーナーの方が無料で教えてくれるというイベントを発見したので申し込みました。倍率3倍に当選しました。ありがたさー!

会場にはゲーミングノートPCとマイク・イヤホンが一人1つ準備されているという豪華な設備!
ソフトウェア全てセットアップ済みでした。最後にお土産まであり至れり尽くせりでした。

内容はおおむね次の通りでした。
  • 最初にVカツで声を吹き込むキャラクターを1時間で作成する。
  • 波形ソフトを見ながら声を出してみる
  • 演技をやってみる
  • 声劇をやってみる
  • Oculusとバーチャルキャストを使ってセリフ読み上げをしてみる


Vカツによるキャラクター作成

最初に自分が好きなキャラクターを、キャラクターメイキングソフトのVカツで作成を行いました。

講師役はなんとソフトウェアの開発者! 参加者の半数はすでに触ったことがある感じでした。
私も予習済みだったので聞きたいことを2点ほど伺いました。

Q1.歩くだけでスカートが貫通してしまうのだけど、どうにもならないか?
A.対応は進めているものの現時点ではそうなる。
#コライダーが円の都合上難しいといったことも教えていただけました。

Q2.VRMで表情のアタッチメントができる。この表情をカスタムすることはできるのか?
A.プルダウンからアタッチできる表情を選択することはできる。しかしながら、表情そのものをカスタマイズすることは現時点ではできない。

最近のVカツアップデートで、ブルーム効果を切ることができるようになったというお話をいただきました。
何が嬉しいかというと、画像として抜き出すときにブルームが滲みとして出てしまうのでこれをカットできるようにとのことでした。
Vカツでは背景画像にグリーンバッグ等を指定することができます。スクリーンショットとして画像化して加工するというプロセスを執り行っている人は注目です。

Vカツのソフト自体は無料ですが、後で使うバーチャルキャストというアプリに読み込ませるためには、本来5000円の有料チケットが必要です。
本講座では運営のアカウントが設定済みでしたので不要でした。

波形ソフトを見ながら声を出してみる

可愛い声の前に、まず女性の声とは?という説明がありました。男性の声と女性の声の違いは何かというと高さ(ピッチ)という印象が強いとされていますが実際にはそうではないとのこと。
男性の平均ピッチをドとすると、女性の平均はラぐらいだそうです。1オクターブもない!
声の高さを調整しても、高い声の男性に過ぎないのはフォルマントという要素やしゃべり方の要素が関連しているとのことでした。

声質の変化の付け方としては、舌をえーっと出しながら喋ると声質が変わるはずで、次に舌を戻したまま声質をキープしてみるという作業をしました。
声を司る筋肉は半不随意筋に該当し元々、意識的に制御するのが難しいそうです。 なるほど、声真似が上手な人はこの辺りのカンがあるということなのですね。
感覚を掴むと結構いろいろできるそうなのですが、それは自転車を乗るごとくらしいです。 

話の中でミックスボイスに関連した話もあり、裏声になるにつれてフォルマントの山が減っていくので倍音が減る、通った音になるというのも視覚的に見れて面白かったです。
これらのナレッジは講師の同人誌に記載がありますので、詳細は記載しませんが体系的に学べてとても分かりやすかったです。

KawaiiVoiceを目指す本(PDF版)
https://johnkohshs.booth.pm/items/969576
なお、この同人誌は今度の冬コミに加筆されアップデートされるとのこと。後日、同様にデジタル頒布もされるそうです。

演技をやってみる

唐突に始まる「おはようございます、今日も頑張りましょうね」

これを最初にキャラクターになりきって吹き込んで聞いてみてくださいとのこと。
録音を聞いてみると、いわゆる棒読みのほかにイントネーション・抑揚やスピードの緩急など細部がキャラクターになっていないといったことがあげられました。
私が「難しい…」とつぶやくと講師の方が拾ってくれて、その通りですとのこと。
作成したキャラクターは3Dモデルのため、ボディランゲージが使えるものの 声が支配的になりがちなバーバルであることを意識するとよいとのことでした。

大げさに色を付けているつもりでも目をつむって声だけ聴くと意外に変化がついていないことに気付けるとのこと。
声だけで相手にたくさんの情報が与えられればコミュニケーションの質が劇的に変わりそうだなと感じました。
一方で、日常生活で意識的にそのようなことはやらないので、目指す方向性によってはちょっと違うかもとも私は感じました。
いずれにせよ、非常に面白い体験ができました。

声劇をやってみる



事前にOculusのアップデートを走らせておいたところ、なんとバグを踏んでお試しができなくなってしまいました。
そこで、なぜか講師が持っていた声劇の台本を読み合わせすることに。登場人物は3人いるので3人ペアで実施しました。最後にそれぞれのチームで読み聞かせるという体験をしました。
演劇なんて小学校の学芸会以来でしょうか。終始難しい難しいとあっぷあっぷになっていましたが楽しかったです。

Oculusとバーチャルキャストを使ってセリフ読み上げをしてみる

アップデートしていない利用可能なOculusが数台あったので交代でトライアルしました。
私はなぜかセリフ読み上げでなく、げんこつ山の狸さんを歌いながら身体を動かすことに。
声を作りながら身体を動かすとかキャパオーバーにも程があり、脳みそが大変に混乱しました。
講師の方は、声・動きに加えてボタン操作による表情変更を巧みに操って演じられており、すごいなぁとなりました。(語彙力)

さいごに

まさかのお土産がありました!

少人数だったので、みんなでご飯に行っていろいろ話してみたいなーと思ったのですが私は風邪でいそいそと帰ったのが唯一の後悔です。
皆様、ありがとうございました。

2018年12月1日土曜日

転職して1年が経ちました。

転職して1年が経ちました。

なんか長くなっちゃったのでまとめると、
  • 初めて転職しました。
  • しかし、不幸にも転職ミスマッチと形容せざるを得ないことになり、次が何も決まっていない状態で退職しました。
  • ご縁があり、エンジニアとして働くことにしました。
  • 今のところ順調です。プライベートでは無職期間中に興味を持ったVR界隈を楽しんでいます。

正確には1年と1ヶ月ですが。無事に試用期間を終えたので書いてみたいと思います。
私は社名とか給料を公開する勇気はないのであしからずです。

1年経って試用期間が終わり?長すぎないと思った方は正しいです。
というのも、1年で転職を2回しているからです。つまり、現職の2回目の試用期間が終わる見込みです。

さらに他のライフイベントとしては引っ越しを3回、さらに痛い話をすると奥歯を抜歯せざる得なくなるなどのイベントがあったからです。この1年は本当にドタバタで生活が全く安定しませんでした。
振り返るとそりゃ、安定しないだろっていう状況ですね……。

文字にするとカオスなので、時系列にまとめると

9月 - 新卒で入社したちっちゃいけどとある分野で日本シェアNo.1のメーカ企業を最終出社。とても良い経験ばかりさせてもらえて良かったです。
10月 - 有給消化でヨーロッパ旅行。名古屋から東京に引っ越し
11月 - ワールドワイドで超ビッグカンパニーの技術サポートとして中途入社
7月 - 残念ながら退職。実家に避難。
8月 - お仕事のお話聞いたり、ハローワーク行ったり、バ美肉なVTuberに衝撃を受けたり、VRテクノロジーに感心を持ったり。
9月 - ワールドワイドで頑張っているこれまた大きなメーカー系にソフトウェア開発者として中途入社。
10月 - 会社と実家が遠いとかでまた引っ越し。
12月 - 試用期間終わって本採用。

---
前職は結局8ヶ月で退職する運びとなりました。
理由は仕事とスキルのミスマッチでした。トレーニング期間の間にスキルが伸びず、また改善する見込みもないことから退職という決断になりました。
細かいことはちょっと書けることがありませんが、なかなか悔しい結果ではあります。
知り合いの紹介・リファラルだったのですがそれでもミスマッチ起きてしまうときは起きてしまうというのを身を持って体験することになってしまいました。誘ってくれた方、短い間でしたが多大な支援をしていただいた同僚には申し訳ない気持ちが当時はいっぱいでしたが、こればっかりは仕方ないねというのが今の認識です。
でも、迷惑かけてしまった点はごめんなさい。これからもどうぞよろしくお願いいたします。

退職後のことは考えられずに退職したために、とにかく実家に一旦戻ることにしました。お金大事。
1回目の引っ越しは、名古屋から東京で転職に伴う引っ越しで、2回目は退職に伴う東京から実家への引っ越しです。

それで、引っ越しは良いとしてもこれからどうする?というのは本当に決まっていませんでした。
1年間英語のために海外留学?国内で英語?失業保険を使い切ってみる?ここぞと海外旅行?まったり仕事探す? みたいな。
幸い貯金と理解のある両親に実家があったので選択肢は多そうだなぁと思いつつも、さてどうしたもんかというのが実情でした、
年齢的なアドバンテージもまだあるし、くいっぱぐれることはないだろうとは思っていましたがまぁそれでも辛かったです。

突発無職デビューしたため、とりあえずFacebookには投げ込んで知り合いには認知しておいてもらおーと軽率に書き込みました。
それならばうちの会社の話聞いてみない?と複数の書き込みを頂いて、とりあえずニュートラルに聞くだけならというスタンスで何社かとお話をさせて頂きました。これは昨今のツイッター転職とかなんとかではなくて、どこもエンジニアは人不足なので声をかけてくれたという感じだと認識しています。
あと、えぐいですが、自分のスキルとか関係なく所属していた会社ののれんが強すぎて、それだけでうんぬんかんぬん。

その中で2社ほど ぜひ働いてみたい と思えたものがあり、エントリーしたところどちらからも内定を頂き、あれこれ考え抜いた末今の職場となっています。
後ろ向きの退職ではあったものの、話をさせてもらう中で「働きたい」にマインドが転化したのはとても良かったです。
正直、あの会社には入れたってことは書類では落ちる気がしないとか強気な発想はありましたけど、入れてもまた失敗したらとか不安は尽きませんでした。応募したジョブポジションが新卒入社の会社で片手間でやっていたような仕事を専門でやるところにエントリーしたので課題感とかナレッジがそのまま使えたので非常にスムーズになじむことができました。前職も2か月ぐらい目までは調子よかったのでまぁのほほんと頑張っていきたいです。
ちなみに、今の仕事はLinuxカーネル・ミドルウェア・ディストリビューションちっくなことを専門に色々やってて、R&D部門にいます。
Ubuntuデスクトップで生活していてオープンソースが基本な感じで楽しいです。


ところで無職期間中、次が決まっていない状態だとパーッと遊びに行くかみたいな気持ちにもならず籠っていると、バ美肉な人が出てきたりVTuberが盛り上がっていてこれは面白いなーと思って色々観たり遊んだりしてみました。当然、ツイッターもそんな話題が多くなるために、一部の人からはVTuberになりたくて会社を辞めたと思われていました。順番が逆ですからー!
そんなわけで、プライベートでは最近VR始めたりコンピューターグラフィックスをかじったりしています。

転職するのが当たり前で、良い話ばっかり見えがちですがまぁこうゆうこともあるよねという感じで書いてみました。
当時は本当に辛くてどうしたもんかという感じでしたが、全てはよい経験ができて新しい知り合いも増えて後悔していることはありません。
こう言い切れるのも今の仕事が安定しているとかはあると思いますが、今はただそう思えるのです。

さて、こんな記事をここまで読んでいただけ方に最後に欲しいモノをペタリと貼っておきます。
http://amzn.asia/0a4SPyR

ではでは、これからもお知り合いの方は変わらずにどうぞよろしくお願いいたします。

2018年11月11日日曜日

HTC VIVE Pro スターターキット を買った。2018年11月現在のVIVEの選び方

最近、VRに関心があるものです。
それで、ついにヘッドマウントディスプレイを買いました。
お値段は143,640 円です。財布が軽くなった! このブログは個人の備忘録のため、無駄に長いです。
簡単にまとめると
  • 高い買い物なので、実店舗で行われている体験を申し込みましょう
  • VIVE Proは価格相応におすすめです。しかしながら、高解像度であるがゆえにグラフィックスカードはGTX1080以上が推奨な感じになってしまいます。
  • Proを買う場合、お部屋が3m*3m以下ならスターターキットを。それ以上広い部屋が用意できるならフルセットを。
  • ベースステーション設置が準備では一番大変です。


VRどれを選ぶか問題

VRと一口に言っても実は結構いろいろありまして。
大きく分けると、パソコンと接続するタイプ、独立タイプの2つがあります。VIVEは前者です。
簡易的なものだとお手持ちのスマホをヘッドマウントディスプレイ(HMD)にするようなマウントタイプもありますね。

VR始めてみたいな~という方は少ないと思いますが、「VRで何をしたいか」をハッキリさせないと何を買うべきかが定まりません。
例えば、Youtubeに上がっている360度コンテンツやピンクなコンテンツの動画視聴がしたい場合は、スマホをHMDにするようなデバイスが安価に試せてよいでしょう。
独立タイプはまだまだ機種が少ないので、一発目にこれを買う方はよく調べられいる方でしょう。
パソコンと接続するタイプは、VIVE,Oculus,WindowsMRと有名どころでは3つほどある感じです。 ハードウェアの構成とかが異なるし値段も高いものなので悩まれる人も多いかと思います。
自分の場合は、諸事情によりVIVE一択だったのでこれの理由を述べたいと思います。

VIVEを買った理由

  • みんなが使っていて情報が多い。
  • VIVEトラッカーという追加のデバイスが販売されている。

VIVE Proスターターキットを選んだ理由
ややこしいことに、VIVEの中でもバリエーションがあります。
無印とかCEと呼ばれるモデル、Proフルセット、Proスターターキットの3つです。
お値段はCEは7万、Proフルセットは16万3千、Proスターターキットは13万3千円です。

多くの方は予算の都合でCEを選ばれることが多いいと思います。大体正しい!
そもそもハマるかどうか分からないものに突っ込めないというのはあると思います。
販売店とかで体験することができるのでまずは足を運んでかぶってみることをお勧めします。無印とProどちらも試してみましょう。
他にも東京の都会だとバーチャルキャスト体験会とかググるとイベントがやっているようです。

Proはいいぞ!(値段相応だぞ)という意見を持っている私からお勧めな理由を述べると次のような感じです。

  • メガネでも快適
  • CEでは別売のオーディオストラップ相当(1万2千円程)の機構がついている。装着が簡単。装着感も大変良い。
  • ケーブルが1本でまとまっていてひっかけにくい。
  • ProはCEよりも高解像度で楽しむことができる。 
相応のグラフィックス処理能力を求められるためにGTX1080ぐらいないとねーというのが界隈の知見のようです。ちなみにCPUはDDR3世代の4コア4スレッドとかでもゲームをする分には問題なかったです。GPUが大事。

今買うならグラボはRTX2070がお勧めです。GTX1080の新品の値段に少し載せるだけで2070買えるし、中古のグラボは暴落した仮想通貨などで使いつぶされている可能性が高いからです。


Proフルセットかスターターキットか?

Proを買うぜー!と決めちゃったあなた向けの情報です。
結論から述べると3m*3m以上の広い部屋を確保できる見込みがあればフルセット。基本的にはスターターキットでオッケーという感じです。

フルセットとスターターキットの大きな差は同梱されるベースステーションのモデルが1.0か2.0かという違いです。フルセットには2.0が、スターターキットには1.0が同梱されます。
広いお部屋が準備できる場合はは2.0が同梱されているフルセットを買いましょう。自由に動ける範囲が広いのは正義です!
しかしながら、ベースステーション1.0でも対角5メートルサポートされてます。正方形なら3m*3mのお部屋をカバーしています。これ以上広い部屋を確保できる場合に2.0は効果を発揮してくれるでしょう。ただし、3m*3m以上のお部屋を確保はなかなか大変なのでメジャーで測定してみることをお勧めします。
なお、 https://www.vive.com/jp/product/vive-pro/ のページを見ると1.0より2.0の方が「精確なトラッキング」のように見えますが、1.0も「精確なトラッキング」ができていて同等です。

開発者必読! VIVEトラッカーやベースステーション2.0をうまく使うコツ【CEDEC2018】
https://www.moguravr.com/cedec-2018-htc-vive/
---
よく「ベースステーション2.0になったことで、ベースステーション1.0よりも精度が上がった」と噂されているとのことですが、精度は上がっておらず同じとのこと。ベースステーション2.0ではトラッキングできる範囲が広がっています。
---


VRを買って何をやっているか?

もっぱらBeatSaberというリズムゲームを」やっております。私の中ではこれが完全にキラーアプリとなっています。今話題のVRChatはあまり馴染めずにあまり入っていません。
他にお勧めのアプリがあったら知りたいなーという感じで、良いアプリがなかなか見つけられていないという感じです。
個人的には各ゲームはチュートリアルを兼ねて体験版を無料頒布してほしいところです。
調べるとSteamではお気軽に返金処理できるので合わなかったらそうすれば良いそうで、実際に簡単に返金してもらったのですがあまり良いユーザ体験ではありませんでした。
返金を念頭に購入するのとか普通に嫌です……。

まぁそんな感じなので、だれに対しても大手を振ってVRおすすめ!と私はいえないのですが唯一無二の体験で可能性は感じているので気になる人はぜひぜひ。

写真とか


スターターキットは、HMD、ベースステーション、ハンドコントローラとばらばらな奴が単純に組み合わせて届きます。

ベースステーションの設置準備は事前にしておくことをお勧めします。このような危険な設置はやめましょう。

2018年10月6日土曜日

Howto eject usb media like "Safely Remove Drive" from CLI

gio mount --eject /media/nekomatu/$(drive-name)

I use Ubuntu 18.04(Bionic).
Ubuntu is doing mount automatically when USB removal media is connected PC.It's convinient. and un-mount is easy. only one-click eject button from filer. so I want to eject like filer from CLI.