これはおそらく一般的なことだと思いますが、ご容赦ください。
Web カメラを使用し、カメラが見ているものに基づいて特定の機能を実行するプログラムがあります。このプログラムは MacOS と Linux で問題なく動作し、Windows でもコンパイルして実行できますが、いくつかの関数 (ピクセルごとに反復するもの、640x480 を含む) では FPS が 1 以下に低下します。時折、数秒間フリーズするためにドロップします。
私が言ったように、私はこれが非常に一般的であることを知っています... 私はただ(必死に)可能な説明について他の誰かの意見を望んでいましたか?これらの同じ機能は、他のプラットフォームでも正常に機能します。カメラが独自のスレッドで実行されている可能性があるかどうか、興味があります。最適化するのに適切な場所を探していないだけではないでしょうか? また、コードを Windows に移植するときに何を最適化するかについてのリソースはありますか?
どうもありがとうございました。ご意見をお待ちしております。
<<< 編集 >>>
ビデオのソース コードについては、ewclib を使用しており、
const char * m_buffer;
EWC_Open(MEDIASUBTYPE_RGB24, 640, 480, FPS, true);
m_buffer = new unsigned char[EWC_GetBufferSize(0)];
EWC_GetImage(0, m_buffer);