DC-HC4FSPEC

ここ数年、オーディオ環境はヘッドセットのRazer Tiamat 7.1に頼っています。

PCのみならず、PS4などのゲーム機の音声もS/PDIFでSound Blaster Zに入力して聴いていました。

そんな変わった使い方をしている中、マザーボード交換に伴い、オンボードの7.1chオーディオを使うようになったので、Sound Blaster Zが不要に。結果、Sound Blaster Zに付いていたS/PDIF入力が使えなくなりました。

来週にはSwitchも届くので、PS4とSwitchの両方の音声をTiamat 7.1で聴きたいし、どうしたものか…。

5年前くらいに購入したHDMIキャプチャーカードの「DC-HC1」を使って映像と音声をPCに入力してしまおうかと考えたのですが、流石に1080iというのも辛い感じがするので、「DC-HC4FSPEC」に買い換えることにしました。

このキャプチャーカードはHDMI入力が2系統あるので、PS4とSwitchを同時に接続して、入力を切り換えることができます。

ただ、オーディオキャプチャ部分の仕様では、リニアPCM 2chとなっていて、7.1chは無理な気配。リニアPCMマルチチャネルは諦めるとして、ビットストリーム(DTSとか)のままPCで再生できるといいんですが、今のところ方法が判りません。

実際の取り付けですが、うちのマザーボード(ROG STRIX X299-E GAMING)だと、4番目のスロット(PCIEX16/X8_2)でだけ動作しました。PCIEX4だと、SATA6Gb/sポートと排他利用のため利用できず、PCIEX1_2とPCIE9/IX1_3はなぜか、USBポートと競合してしまい、ブルスクになります。各スロットの動作をUEFI BIOSで「自動」ではなく固定しても結果は変わらず。

No.スロット名動作(28レーンCPU)メモ
1PCIEX16/X8_1x16Geforce GTX1080
2PCIEX1_1x1物理的に塞がっている
3PCIEX1_1x1USBが使用不可になり、ブルスク
4PCIEX16/X8_2x8正常動作
5PCIEX4x4SATA6Gb/sポートが利用不可になる
6PCIEX8/X1_3x1USBが使用不可になり、ブルスク

消去法でPCIEX16/X8_2だけが残ったわけですが、SLI構成だと、このスロットも埋まっているはずなので、結構環境を選ぶキャプチャーカードかもしれません。



Razer DeathAdder Elite

Razer Naga Hex(2014/01購入)から3年ぶりにマウスを買い換えです。

買い換えの理由は、壊れたからではなく、Nagaのサムボタンをほとんど使わなくなってしまったので、サムボタンを押さないように使い続けるのが辛くなってきたからです…。

たまに意図せず押してしまったりするので、サムボタンの無い(戻る/進むボタンはあるけど)、Razerの定番マウス「DeathAdder」にしました。

少し使った感想は、マウス本体が軽い割にはちゃんと動かせるし、クリックもブレがなくて、しっかり押した感じがします。特に親指と小指があたる部分だけがラバーになっていて、マウスが手の中で滑ることがないのがイイ。

DeathAdderは10年くらい大きく形状が変わっていないようなので、しばらく、この系統を使い続けるかも。


パーツ交換完了

先日のブログを書いた後、起動後5分くらいで、アイドリング時のCPU温度が91度になって、強制シャットダウンとなり、ほぼ起動不可となりました。パーツを注文するタイミングだけは良かったようです。



PCが壊れた後に急に気温が下がったのでアレですが、アイドリング時のCPU温度は20度前後となりました。簡易水冷のポンプとファンも低速動作となるので、めっちゃ静かです。以前はヘッドホンをしていても、ファンの音が聞こえるくらいの爆音だったので、これだけでも組み直して良かった。

ネジ頭に注意


組み立ての途中で少々事故りました。

ROG STRIX X299-E GAMINGのM.2スロットですが、M.2用のヒートシンクを取り外そうとしたら、1つのネジ頭を潰してしまいました…。

手持ちの道具ではどうやっても外せなかったので、2スロット目のほうを使用することにしました。どちらかというと、フロントファンの目の前に配置されている2スロット目のほうが冷える気もするので、気にしないことにします…。

セキュアブートに悩む


簡易水冷の管理アプリ「CORSAIR LINK」のインストールで無署名のドライバーがブロックされてしまい、ポンプとファンをモニタできなくなりました。

Windows10で署名なしドライバをインストールする方法/テストモードにする方法
https://freesoft.tvbok.com/win10/testmode.html

上記リンクを参考に設定をしようとしたのですが、少々躓きました。

とりあえず、テストモードで試してみようとPower Shellの管理者モードでコマンドを入力してみると、UEFI BIOSの設定でセキュアブートが有効になっているから、コマンドは受け付けない旨のエラーメッセージが。

そのため、まず、UEFI BIOSでセキュアブートを無効にしないといけないのですが、「セキュアブートキー」の削除をしても再起動するとUEFI BIOS画面上では「セキュアブート:有効」に戻ってしまうので、小一時間悩みました。結局、「セキュアブートが無効でも有効と表示されてしまう」ようなので、とりあえず解決。

設定変更後、Windowsをテストモードにしてみると、画面右下に「テストモード」と表示されてしまうのでウザい…。Corsair Linkのドライバーは動作するようになりましたが、なんとかしたい。

次に上記リンクの「3-2.「ドライバー署名の強制」を無効化する(通常操作)」の記事に書いてある手順を試してみると、本来なら設定を永続化できないはずなのに(再起動すると無署名ドライバーはブロックするようになるはず)、なぜかブロックされないようになりました…。もしかしたらCorsair Linkのインストーラーに問題があるだけで、ドライバー自体は問題ないのかもしれません。

7.1chオーディオ(棒読み)


ヘッドセットに「Razer Tiamat 7.1」を使用しているのですが、今までのサウンドカードが5.1chだったので、オーディオジャックが1本遊んでいました。このマザーボードのオンボードオーディオが7.1chに対応しているので、遊んでいたオーディオジャックが使えるようになりました。でも、Tiamatには定位もクソも無いので、割とどうでもいいです。

ちょっとだけベンチマーク



M.2




SSD x 2 RAID0




SSDのRAID0でも相当速いと思っていたのですが、M2はさらに3倍近い速さです。でも、起動時間が劇的に早くなるわけでもないので、ベンチ以外では速さは体感できないです。

FFXIV紅蓮ベンチ




平均フレームレート:93.429
ローディングタイム:
シーン#1 2.056sec
シーン#2 2.769sec
シーン#3 2.378sec
シーン#4 2.890sec
シーン#5 6.092sec
シーン#6 1.380sec
合  計 17.566sec

紅蓮ベンチは普通。でも、ベンチマークを回してもCPUの温度は30度以下です。

「スコア高えええ」より「温度低えええ」のほうが大事。

自作PCを新調

ここ数日、PCの動作がかなり重くなりまして、原因をアレコレ探っていたのですが、原因は予想外のものでした。

低負荷なのにPCが重い


CPU利用率が5%未満なのにCPUコアの温度が80度を指すようになってしまい、高温のためクロックが100MHz〜1GHzくらいに制限されてしまうため、遅くなっているようでした。

CPUの負荷が低い状態でも90度くらいに達する時もあったり、しばらくすると正常値(60度くらい)に戻ったり、よくわからない状況です(いずれも簡易水冷の温度センサーは50度くらいを指している状態)。

一度、簡易水冷のヘッドを外して、グリスも塗り直してみましたが、状況は変わらず。

とりあえず、BIOSで温度センサーを無効にして(POSTでエラーが出てしまうため)、Intel thermal protectionもオフにして、コントロールパネルの電源管理で最大周波数を2900MHzに落として稼働させていますが、いつまで持つか…。

今使っているCore i7 3960Xは2012年に購入したものなので、もう5年も経過しています。24時間稼働させていた時期もあるので、かなり頑張ったほうかもしれません。

パーツ選び


もしかしたら、簡易水冷の不具合なのかもしれないのですが、交換しても改善しなかったら二度手間なので主要なパーツを5年ぶりに更新することにしました。

-現行変更後
CPUIntel Core i7-3960XIntel Core i7-7820X
M/BASUS RAMPAGE IV EXTREME
(X79/LGA2011)
ASUS ROG STRIX X299-E GAMING
(X299/LGA2066)
COOLERCorsair H110i GTXCorsair H115i
SSDTranscend SSD 256GB SATA3 x 2Samsung 960 EVO M.2 MZ-V6E500B/IT
MEMGeIL GOC332GB1333C9QC
(DDR3-1333 8GB x 4)
CORSAIR CMK32GX4M2A2400C16
(DDR4-2400 16GB x 2)
VGAASUS STRIX-GTX980-DC2OC-4GD5ASUS ROG STRIX-GTX1080-A8G-GAMING
CASECooler Master HAF932CORSAIR Carbide Series Air 540

CPU


コア数、レーン数、価格のバランスで7820Xを選びました。SLI構成にはしないのでレーン数28の7820Xでも十分。現在の6コアでも特に処理速度で不満を感じたことはないので、8コアならなおのこと。

マザーボード


マザーボードは「ROG RAMPAGE VI EXTREME」か「RAMPAGE VI APEX」が欲しかったのですが、取り扱っているお店がほとんど無いので、「ROG STRIX X299-E GAMING」になりました。自分は定格でしか動作させないのですが、OCに対応した製品を定格で使うと寿命が延びるかも?と思って使っているので、とりあえずこれでいいかなと納得することに。

CPUクーラー


簡易水冷は念のためH115iに交換。名称を変更しただけで、中身はH110i GTXと同じようです。今回購入したケースは取り付けるネジ穴も問題ない模様。

メモリ


メモリサイズは32GBのまま。普段も32GBの30%くらいしか使用していないので、32GBで仮想メモリOFFの状態で使います。

SSD


SSDはM.2(PCIe)に。このマザーボードにはM.2スロットが2つ付いていますが、2スロットを使ってハードウェアRAID構成にすると帯域が6GB/sに制限されてしまうようなのでシングルで500GBのものを選択。今使っているSSDはアプリケーションのインストールドライブとして使おうと思います。

グラフィックカード


VGAはGTX980 OCからGTX1080 OCに更新。今使っているGTX980のメモリサイズは4GBなのですが、最近のPCゲームでは、ややメモリ不足なので、8GBくらいあればいいだろう、ということで。

ケース


ケースはケーブルの取り回しが簡単そうだったのでCorsairのものに。今使っているケースは2008年から9年も使っていますが、ようやくお役御免…。

電源


電源は現在使っているCooler Master V1200 Platinum 1200W 80PLUSを流用。このマザーボードはEPS電源が8+4PINなのですが、V1200は4+4PINが2系統あるので問題無さそう。


その他、HDD(3TB x 3)、光学ドライブは、現在使っているものを流用します。


これで3〜4年動いてくれれば。



Craft CMS 覚え書き

Craft CMSというかYii Framework 2.6に関するメモ。

models


DBに保存されないデータモデル。
主に入力の検証を行う(ログインフォーム等のデータモデル)。
必須(required)、型(AttributeType)、規定値(default)、サイズ(length)などの属性を定義。


records


DBに保存するデータモデルは、Active Record(AR)として定義する。
DB型(ColumnType)、重複不可(unique)、主キー、外部キー、などRDBに関する定義は一通りできる。
Number型のPKは自動的にAuto Incrementになる。
作成したプラグインをインストールすると、recordsの定義通り、DBにテーブルが自動作成される。

リレーションの書き方サンプル

[MyPlugin_TagGroupRecord.php](親テーブル)
protected function defineAttributes()
{
return array(
'group_id' => array(AttributeType::Number, 'column' => ColumnType::PK, 'required' => true),
'tag_id' => array(AttributeType::Number, 'required' => true),
'content_id' => array(AttributeType::Number, 'required' => true),
);
}

public function defineRelations() {
return array(
'taggroup' => array(self::HAS_MANY, 'MyPlugin_TagRecord', 'tag_id'),
);
}


[MyPlugin_TagRecord.php](子テーブル)
protected function defineAttributes()
{
return array(
'tag_id' => array(AttributeType::Number, 'column' => ColumnType::PK, 'required' => true),
'name' => AttributeType::String,
);
}

public function defineRelations() {
return array(
'taggroup' => array(static::BELONGS_TO, 'MyPlugin_TagGroupRecord', 'tag_id', 'required' => true, 'onDelete' => static::CASCADE),
);
}

Craft CMSのdefineRelations()は、リレーションで親テーブルの主キー以外のカラムを参照しようとしても、主キーとリレーションを作成してしまうようなので、主キー以外とのリレーション定義は下記のようにするしかないかも。

[MyPlugin_TagRecord.php](子テーブル)
public function createTable() {
parent::createTable();
craft()->db->createCommand()->addForeignKey($this->getTableName(), 'tag_id', 'myplugin_taggroup', 'tag_id');
}



※入力>確認画面>保存のようなUIフローを持つ場合は、models/recordsを両方定義してもいい。