質問: tcpでデータを受け取ってそれを画像として連続表示する、いわゆるストリ tcpでデータを受け取ってそれを画像として連続表示する、いわゆるストリーミング動画再生ソフトを作ろうと思っています。 ソフトウェアプログラミングは疎く、tcpでのデータの受信プログラムの作成はできるのですが、pcへの負荷を最小限にして表示する方法がよくわからず困っております。 動画サイズは、1280*720のフルカラーで、60fpsで表示したいと考えています。 画像は非圧縮のベタデータで送られてきます。 vc++とdirectxを用いれば高速に表示できるかと思い(どちらも使用は初めてです)、この数日調べまわっていますが、まずベタデータを表示することすらままならず(ファイルを読み出してテクスチャを作成し、レンダリングするという情報は多いのですが。。)、それがなんとかできても今度はそのデータを変えてアニメーション表示しようとするとメモリーを山のように消費してまともに動かないプログラムが出来上がったりと、なんとも苦しんでおります。 当方使用できるプログラミング言語はc言語のみですが、必要であればc++も勉強して使用したいと思います。 どのような手法が最適で、どのような手順でやればいいのか、ヒントだけでも、教えていただければ助かります。
回答: >これで1280*720*60*16なので、885mbpsになるかと考えています。 やっぱりギガビットイーサでも足りません。 「ギガビットイーサなら1000mbpsだから足りるのでは?」 とか思っています? 規格上は1000mbpsでも、その速度がフルで出るコトはありません。 またtcp/ipのヘッダが付与されたりしますから全部は使えません。 tcpは比較的重いです。 udpなら多少は早くなりますが、エラー時の再送などはありませんしパケットの到着順も保証されません。 データ圧縮して転送するなりしないとどうにもならんでしょう。