以前書いた記事で intrinsic の欠点をいくつか述べていますが、このうちコンパイラが古いと最近の命令を使えない、という重大な点については、Visual C++ 2015 や Xcode 7 に移行することにより既に解決してしまいました。将来的にも、OSS開発 and/or 個人開発 であれば Visual C++ も無料で Pro 版相当の機能のものが使えるようになってしまいましたし(新しいコンパイラを追いかけるのに費用が掛からない)。

一部の命令が無い点については解決されうるものではなさそうですが、そういうところは相変わらずアセンブラで書いておけば良いかと思います。Ut Video Codec Suite 的に一番重要なハフマン符号処理がこれなのがちょっと残念ですが。

なんで今更こんなこと言っているかと言うと、いい加減「ほとんど同じかと思いきや結構違う2つのアセンブラソース (x86/x64) をメンテする」のはもういやだ、と思ったからです。思うのが遅いという話はあります。

Intel IPP (Integrated Performance Primitives) という、画像処理、信号処理、データ処理(圧縮・暗号化)において良くある処理を収録した Intel 製のライブラリがあります。Intel 製なので、Intel CPU に対して特に最適化されているはずです。(AMD CPU についてはどの程度かはよく分からない)。IPP はコミュニティサポートでいいのであれば最近はロイヤリティフリーで使えるため、IPP を UtVideo で使ってみようかと考えました。

Read the rest of this entry

機能追加
  • 内部保持形式が YUV444 8bit のコーデック (FourCC: ULY4, ULH4) を追加した。RGB 入出力の場合はあまり速くない。

Read the rest of this entry

2016年08月にいただいた寄付は以下の2件です。ありがとうございました。

日付 お名前 金額
08/11 高橋 健一 500円
08/12 Suzuki Ryoma 1,000円

なお、2016年07月には寄付はありませんでした。