C言語などでjpegの加工をする場合、libjpegを使いますよね。
uvc のカメラから yuv で画像をlibjpegを使ってjpeg ファイルに落としました。
しかし、動作が思った以上にもっさり。
「どこが重いんだろう?」
ということで、gcc の -pg オプションを付けてコンパイルして調べることにする
$ gcc -pg hoge.c a.out $ gprof --brief
-pg オプションでプロファイル付きで動作させたところ、yuv から jpeg に落としているところがとても遅い
何でだろうと悩んでいたところ、プログラムの中で quality を 100 にして jpeg を作成していたから
quality を 90 にして実行した途端にすごく早くなった
ひとまず、解決ということで