月曜日, 10月 31, 2022

AV1

スマホで撮った子どもの運動会の動画などのファイルは、H.264などでエンコードされているものの、ファイルサイズがかなり大きくなってしまいがちです。

そんなときは、サイズを変更したり、より効率のいいコーデックでエンコードしたりしますが、最近流行のAV1を使ってみました。
AV1は、AOMedia Video 1の略で、Alliance for Open Mediaという団体が策定したパテントフリーの動画圧縮コーデックです。
とはいえ、新しいコーデックあるあるで、かつてはエンコードの速度が数fpsくらいしか出ず、画質はいいものの実用には堪えない、という代物でした。

ところが最近になって、色々その辺を改善しているエンコーダが出てきていますので、少しご紹介をば。

  1. ffmpeg+libaom
  2. SVT-AV1
  3. rav1e
  4. QSVencc
  5. NVencc

1は、言わずと知れたマルチエンコーダ・デコーダのffmpegが、Alliance for Open Mediaがリファレンスとして出しているライブラリ「libaom」を使ってエンコードするというもので、画質はかなりよく、圧縮率もかなり高くて2passも使えるのですが、兎に角エンコードが遅く実用には堪えません。

2は、ソフトウェアベースのエンコーダで、1の20~30倍の速度でエンコードできるものです。画質も十分確保されております。

3は、同じくソフトウェアベースのエンコーダで、1と同様の速度でエンコード出来ますが、やはり実用性という点では厳しいかも知れません。

4は、rigayaさんが製作されているIntelのGPU用のハードウェアエンコーダを利用するツールです。H.264やHEVCなどにも対応しており、適切なオプション設定で簡単に音ズレのないエンコードが出来ます。AV1にはIntel GPU(5万円越え)のIntel Arc A750などが必要です。

5は、4のNVIDIA版です。HEVCやH.264のエンコードを200fpsを超えるハイスピードでエンコード出来ます。AV1にはRTX 40XX世代が必要です。

現状、HWに依存せず結構なスピードでエンコードできる2をNotEnoughAV1Encodes経由で利用しています。
ほぼデフォルト設定でも、十分な画質があるように思えます。1や2もこのツールで試すことができるのでおすすめです。

普段はHEVCなどで5を使っているのですが、今後軽い動画はAV1エンコードしていこうかなと思います。
今のところ、60fps化はできるものの、デインタレースの方法が分からず考え中です。

2022/11/4追記:

AVIUtl+patch.auo+自動フィールドシフト インタレース解除プラグイン+svtAV1guiEx(rigayaさん作)の構成で、とりあえずデインタレースは実現。

とりあえず30fpsになりますが、圧縮率が非常に高く画質もよいです。
が、エンコーディング時間もそれなりに掛かります。
私の環境で30分の動画に約58分(もちろん2pass)。

#おま環かもですが、エンコーディングの際にSARを1:1に指定しておかないと、変なアスペクト比になりました…。

自動フィールドシフト解除プラグインは、やはりrigayaさんの高速化版を使用しています。

土曜日, 9月 10, 2022

掃除の時間

先日、RISSの資格維持のためのオンライン講習(講師の方が「RISS」を「あーるあいず」と読んでいたので、今後心の中でそう呼びます)を受講した際、メインのノートPCでCiscoのWebexを使用したのですが、Zoomなどに比べて重いこともあり、CPU温度が常時80-90℃に達していました。

いやいや、いくら重いといっても、高々Web会議システムごときで、このまあまあ高性能ゲーミングマシン(※7年前基準)がヘタれるはずは...あっ!
そういえば、最近分解掃除してなかったな~。(;´∀`)

そんなわけで、早速ノートPCを分解してみました。

まず、CPU冷却システム側のヒートシンク付近がこれ。


いや~、いい感じで詰まってますね、かなり。(;゚▽゚)

じゃあ、GPU側はというと...。


ちなみに、左が掃除前、右が掃除後です。
こちらも相当キています。(;゚▽゚)

前回掃除したのが8か月前。ノートPCってこんなに掃除しなきゃ駄目だっけ?とも思うけど、2015年製ともなれば色々劣化も始まっており...。
そろそろ新しいのが欲しい...と思う今日この頃なのでした。(´・ω・`)

火曜日, 8月 09, 2022

Car Mechanic Simulator 2021で起動しない状態からの復帰

Car Mechanic Simulator 2021で、日本語の翻訳を弄っていると、少し前のアップデートにより起動しなくなるみたいです。

久々に起動してみたら、オープニングムービーすら再生されず黒い画面で止まってしまう現象が発生し、原因を調査したところ、あまりの誤訳に仕方なく弄っていた翻訳ファイル(.\Steam\steamapps\common\Car Mechanic Simulator 2021\Car Mechanic Simulator 2021_Data\StreamingAssets\Localizations 配下のファイル。日本語は標準でjapanese.txt)のうち、アップデート前のものが残っていた時に、ログ(%USERPROFILE%\AppData\LocalLow\Red Dot Games\Car Mechanic Simulator 2021/Player.log)に以下のようなエラーが出ていました。

ArgumentException: An item with the same key has already been added. Key: Japanese

解決策としては、旧バージョンの日本語翻訳ファイルを全て退避して新バージョンだけにし、そのバージョンをベースに過去バージョンで修正していた翻訳ファイルを元に、WinMergeなどで比較修正することで、うまく起動するようになりました。
エラーメッセージから、重複するキーが存在していたのかもですが、そこだけピンポイントに見つけ出すことができず面倒な作業となってしまいました。

同じように困っている方がいらっしゃれば、この記事が参考になれば幸いです。