私は共有メモリとプロセス間通信の基本を知っていますが、私のアプリケーションはかなり具体的であるため、一般的なフィードバックを求めてこの質問をしています。
私は、32ビットのビジュアルコーディングツールキットを使用して、64ビットマシン(MacOSおよびWin 64)で作業しています。現時点では、ツールキットを64ビットに移植することは実用的ではないため、メモリに制限があります。
私は、高品質のビデオを高速でスクラブ(ユーザー入力に基づいて前後に移動)できる必要があるアプリケーションに取り組んでいます。明らかな解決策は次のとおりです。1-すべてをメモリに保持します。2-ディスクからのストリーム。現時点ですべてをメモリに入れるには、ビデオ品質を許容できないレベルまで下げる必要があり、ディスクからストリーミングすると、ロード中にスクラブがハングします。
私の現在の考え方は、マスタープログラムと複数のスレーブプログラムを実行することです。各スレーブはビデオのセグメントをRAMにロードし、マスタープログラムがビデオの異なるセクションをロードする必要がある場合、スレーブにこのデータを要求して転送します。
私の質問は、これを行うための適切な方法は何ですか?共有メモリでは、アプリケーションが現在持っている32ビットメモリの制限を乗り越えることができないと思います。パイプのような簡単なこともできましたが、もっと適したものは他にあるのではないかと思いました。
理想的には、このソリューションはMac / Winポータブルですが、最終的なソリューションはWindowsボックスに存在する必要があるため、Windowsソリューションを選択します。また、これに開発時間で何週間も費やすつもりはないので、簡単であるほど良いです。
よろしくお願いします。