So-net無料ブログ作成

H.265のハードウェアエンコってどんなんだ。 [ハードウェア]

H.264からひとつ番号が上がったH.265。Appleがサポートすると言っていました。どこまでサポートするんだか分からないけど、とりあえず時代はそっち方面に向かっているようです。

前にH.264をGPGPUで動かそうとしたんですが、条件分岐が多すぎてGPU向きの演算ではありませんでした。その時もIntelではCPUでQSVをやっていて、少なくともH.264でもエンコードはCPU向きではないということは分かっていました。それでもスレッドをフル回転させれば出来ないこともなかったわけで、並行処理が出来ればそこそこ何とかなる程度でした。

ともあれ、多少融通は利かなくてもハードウェアで処理した方がいいということだったと思います。QSVはOSSで使えると言う話を聞いていなかったので、ライセンスとかあるんだろうなと思っていました。少なくともWindowsでしか情報が提供されていない感じを受けました。実際、商用製品しかなかったし(今はフリーのはあるけれどもお)。

最近はGPUにもH.264とか265のハードウェアエンコーダーがGPUにも搭載されているらしく、NVIDIAはNVENCという名前で導入したみたい。

http://nico-lab.net/nvidia_gpu_encoder/

WindowsとLinuxということで、プロプライエタリなものになるかもしれないけどLinuxが使えることで開発の幅が広がっている。まぁGPGPUでもAMDよりかLinuxゴリゴリな開発環境を提供していたから当然なのかもしれない。

Maxwell (2nd Gen)というチップを使っているとH.265/HEVCを使えるらしいが、とりあえずGPUの新しいものを金をケチらずに買えば使えそう。というかGPUの型番も分からんけど、コードネームはもっと分からん。やっぱりGPUにハードウェアエンコーダを載せるという事は、普通にGPGPUしにくいって事もあるんだろうね。もはやCPUに任せられんと。

Intel QSVはSkylakeでHEVC対応していたらしい。
https://en.wikipedia.org/wiki/Intel_Quick_Sync_Video

AMDはRadeon RX 480でHEVCに対応しているらしい。
http://www.itmedia.co.jp/pcuser/articles/1606/29/news155.html

VCEというらしいが、GPGPUの頃のLinuxの塩対応が思い出される。なんか開発環境が古くて対応しているのを見つけることができなかった。NVIDIAに比べてこのアクセスのしにくさは何なんだ…。RyzenにNVIDIA積んでハードウェアエンコしようかなぁ。なんかAMDのGPUは使いたくない気がしている。嫌でもMacで使わせられるしね。

http://rigaya34589.blog135.fc2.com/blog-entry-297.html

随分前の記事だけど、AMD APP SDKに開発環境は入っているらしい。実際やっていないのでまた聞きで済まんがいつもブログなんてこんなもんだ。とりあえずGPU買ってこないとやるにやれん。

とりあえず、HandbrakeでQSVを使えるという事なので、HEVCを使えるCore iでマシンを組んで、お金に余裕ができたらNVIDIAのそこそこ良いカードを買う、と。でも、ハードウェアエンコだから高いものを買っても品質や速さはあんまり変わらないのかもしれない。

あとHandbrakeを改造して、nvencで使えるようにするとか。もう誰かがやってそうな感じですが。前にGPGPUの組み込みを失敗したので、その失敗が生かせるかなぁと思いつつ。

コメント(0) 
共通テーマ:パソコン・インターネット

Twitterまとめ投稿 2017/06/14 [Twitter]


コメント(0)