2024年の振り返り
PC関連はすでに振り返ったので、それ以外の振り返り。
x264guiEx / x265guiEx / svtAV1guiEx / ffmpegOut
地味に6時間を超えるwav出力対応に対応した。そのほか不具合修正とかプリセット追加とか。
QSVEnc高速化
hwデコードしない場合(AmatsukazeやAviutlから使う場合)の高速化をしたり、エンコード中勝手にアイドルに入って遅くなる問題を無理くり解消したりした。
QSVはこれまでGPUの一部みたいな扱いだったけど、dGPUの場合はともかく、iGPUの場合はGPUというよりSoCの一部みたいな扱いになっていっていて、こうした場合での動作は若干気になるところ。
QSVEnc / NVEnc / VCEEnc フィルタ追加
- --vpp-libplacebo-deband
- --vpp-libplacebo-tonemapping
- --vpp-libplacebo-shader
- --vpp-libplacebo-resize
- --vpp-fft3d
- --vpp-nlmeans
- --vpp-denoise-dct
- --vpp-decomb
今年はフィルタをたくさん実装したけど、最初の4つはlibplaceboライブラリの組み込みで、CUDA/OpenCL⇔DirectX連携のあたりがややこしい一方で、フィルタそのものは呼び出すだけなので、手間はかかるものの実装しやすかった。
残りの4つのfft3d, nlmeans, denoise-dct, decombは自作。この4つは十分にシンプルなアルゴリズムで、特にfft、nlmean、dctなどは数式で表されるシンプルなアルゴリズムなので、GPUでの高速化に関してかなり注意する必要があるとはいえ、なんとか現実的な時間で実装できた。
複雑なフィルタの実装依頼をいただくこともあるけど、そもそもフィルタ類のアルゴリズムに詳しくないのものあって、アルゴリズムが複雑だと理解→実装→検証にあまりに時間がかかりすぎ、実装困難となってしまう。(1か月以上動くものができないと実装のモチベを維持できない…)
Amatsukaze 改造版
BS4K対応
BS4Kをエンコードする需要は本当にあるのかという疑問はあるけど、とりあえず対応。
HEVC読み込みを追加拡張しているけど、なるべくffmpegのライブラリ(libavcodec/libavformat)の機能を活用して、MPEG2/H.264の処理と比べて実装は大幅に簡素化してある。
4K HEVC 10bitはエンコードだけでなく、デコードも(CPUでもGPUでも)重いので、ロゴ解析やCM解析も重いというのが難点になってしまっている。
KFMフィルター高速化
いろいろ分析してみたけど、一番重いkl_search(動き探索)とかはなにをしているのかさっぱりわからなかったので、「実装上同じ処理を高速に行うこと」に焦点をあてて高速化してみた。GPUによってはエンコードが高速なら多少高速化できたかも。
ただ、高速なGPUでしか恩恵がなさそうなのが難点。とにかくKFMは複雑なので、全貌をつかむのはかなりハードル高い気がする。
そのほか、CM解析/ロゴ解析まわりの調整や不具合対応等もやったけど、コードの理解等まだまだ難しい感じ。
tsreplace
それほど大きな更新なないけど、データ放送削除対応とかを行った。
clcufilters
OpenCL/CUDA統合版のAviutl向けGPUフィルタを作った。
フィルタ処理を別プロセスに分離して64bit対応 & OpenCL/CUDA両対応にして、さまざまな機能がフルに使えるような基礎を作った。が、その後あまりフィルタ追加ができていないかも。
あと結局かなり重いのをなんとかしたいところ…。
最近の各クールのアニメの本数、特に多くない?
昔から多かったが、最近本当に多い気がする(気のせい?)。見るのを減らしてもそれでも多いぐらい。
嬉しいといえば嬉しいことだけど、ほかのことをする時間は減りそう…
来年やりたいこと
NVEnc改修
QSVEnc/VCEEncに導入した柔軟性の高い処理方法をNVEncにも導入したい。
去年も言ってたやつ。結局できていない。
録画PC更新
現行の録画PC、i5 7500なのでWin11に移行できずWin10のサポート切れが迫る…ということで更新が必要。
ArrowLakeの下位(Core Ultra 3)とかが出るとよいのだが、RaptorLake Refreshとかでごまかされないことを祈る…。
手を広げすぎたかも…
去年も言ってたけども。
github issuesは申し訳ないけどすべて追えてなくて、特に特定の入力ファイルに依存した再現困難なエラーとか、どうにもならないかも…。あとHDR関連はHDRモニタをそもそも持っていないので、最終的にどうなっているのかよくわからんという問題があるので、HDRモニタ買ってみるのもありかも。
ただ、最近のモニタはいろんな種類があって迷ってしまう。(QD/MLA-OLED, (A)HVA, Mini LED…、もうなにがなにやら…)
今年もコメントありがとうございました
というわけで今年もいろいろコメント等いただきありがとうございました。
結局よくわからなかったり、手が回らなかったりした場合もあって、申し訳ないですが…、来年もいろいろできる範囲でやっていきたいです。
それではよいお年を。
x264guiEx / x265guiEx / svtAV1guiEx / ffmpegOut
地味に6時間を超えるwav出力対応に対応した。そのほか不具合修正とかプリセット追加とか。
QSVEnc高速化
hwデコードしない場合(AmatsukazeやAviutlから使う場合)の高速化をしたり、エンコード中勝手にアイドルに入って遅くなる問題を無理くり解消したりした。
QSVはこれまでGPUの一部みたいな扱いだったけど、dGPUの場合はともかく、iGPUの場合はGPUというよりSoCの一部みたいな扱いになっていっていて、こうした場合での動作は若干気になるところ。
QSVEnc / NVEnc / VCEEnc フィルタ追加
- --vpp-libplacebo-deband
- --vpp-libplacebo-tonemapping
- --vpp-libplacebo-shader
- --vpp-libplacebo-resize
- --vpp-fft3d
- --vpp-nlmeans
- --vpp-denoise-dct
- --vpp-decomb
今年はフィルタをたくさん実装したけど、最初の4つはlibplaceboライブラリの組み込みで、CUDA/OpenCL⇔DirectX連携のあたりがややこしい一方で、フィルタそのものは呼び出すだけなので、手間はかかるものの実装しやすかった。
残りの4つのfft3d, nlmeans, denoise-dct, decombは自作。この4つは十分にシンプルなアルゴリズムで、特にfft、nlmean、dctなどは数式で表されるシンプルなアルゴリズムなので、GPUでの高速化に関してかなり注意する必要があるとはいえ、なんとか現実的な時間で実装できた。
複雑なフィルタの実装依頼をいただくこともあるけど、そもそもフィルタ類のアルゴリズムに詳しくないのものあって、アルゴリズムが複雑だと理解→実装→検証にあまりに時間がかかりすぎ、実装困難となってしまう。(1か月以上動くものができないと実装のモチベを維持できない…)
Amatsukaze 改造版
BS4K対応
BS4Kをエンコードする需要は本当にあるのかという疑問はあるけど、とりあえず対応。
HEVC読み込みを追加拡張しているけど、なるべくffmpegのライブラリ(libavcodec/libavformat)の機能を活用して、MPEG2/H.264の処理と比べて実装は大幅に簡素化してある。
4K HEVC 10bitはエンコードだけでなく、デコードも(CPUでもGPUでも)重いので、ロゴ解析やCM解析も重いというのが難点になってしまっている。
KFMフィルター高速化
いろいろ分析してみたけど、一番重いkl_search(動き探索)とかはなにをしているのかさっぱりわからなかったので、「実装上同じ処理を高速に行うこと」に焦点をあてて高速化してみた。GPUによってはエンコードが高速なら多少高速化できたかも。
ただ、高速なGPUでしか恩恵がなさそうなのが難点。とにかくKFMは複雑なので、全貌をつかむのはかなりハードル高い気がする。
そのほか、CM解析/ロゴ解析まわりの調整や不具合対応等もやったけど、コードの理解等まだまだ難しい感じ。
tsreplace
それほど大きな更新なないけど、データ放送削除対応とかを行った。
clcufilters
OpenCL/CUDA統合版のAviutl向けGPUフィルタを作った。
フィルタ処理を別プロセスに分離して64bit対応 & OpenCL/CUDA両対応にして、さまざまな機能がフルに使えるような基礎を作った。が、その後あまりフィルタ追加ができていないかも。
あと結局かなり重いのをなんとかしたいところ…。
最近の各クールのアニメの本数、特に多くない?
昔から多かったが、最近本当に多い気がする(気のせい?)。見るのを減らしてもそれでも多いぐらい。
嬉しいといえば嬉しいことだけど、ほかのことをする時間は減りそう…
来年やりたいこと
NVEnc改修
QSVEnc/VCEEncに導入した柔軟性の高い処理方法をNVEncにも導入したい。
去年も言ってたやつ。結局できていない。
録画PC更新
現行の録画PC、i5 7500なのでWin11に移行できずWin10のサポート切れが迫る…ということで更新が必要。
ArrowLakeの下位(Core Ultra 3)とかが出るとよいのだが、RaptorLake Refreshとかでごまかされないことを祈る…。
手を広げすぎたかも…
去年も言ってたけども。
github issuesは申し訳ないけどすべて追えてなくて、特に特定の入力ファイルに依存した再現困難なエラーとか、どうにもならないかも…。あとHDR関連はHDRモニタをそもそも持っていないので、最終的にどうなっているのかよくわからんという問題があるので、HDRモニタ買ってみるのもありかも。
ただ、最近のモニタはいろんな種類があって迷ってしまう。(QD/MLA-OLED, (A)HVA, Mini LED…、もうなにがなにやら…)
今年もコメントありがとうございました
というわけで今年もいろいろコメント等いただきありがとうございました。
結局よくわからなかったり、手が回らなかったりした場合もあって、申し訳ないですが…、来年もいろいろできる範囲でやっていきたいです。
それではよいお年を。