1

OpenGLでフレームバッファを作成するプログラムがあります。バッファを.pngまたは.jpgファイルとして保存できます。また、複数の画像ファイルを.mpgに変換するWindowsのユーティリティ( http://www.radgametools.com/bnkmain.htmなど)に精通しています。

しかし、私はオープンソースライブラリがすでにRAMにある私のバッファで呼び出すことを望みます。そのようなAPIは存在しますか?

4

2 に答える 2

4

ffmpegのlibavcodecはおそらく始めるのに良い場所です。

于 2011-05-09T20:39:58.027 に答える
4

ライブラリを探しているので、OpenCV(Windows / Linux / Macでサポートされているクロスプラットフォームライブラリ)を確認することをお勧めします。

私は少し前に以下のコードを書きました。現在のディレクトリから2つのJPG画像をロードし、それを使用してビデオファイルを作成します。始めるにはそれで十分だと思います。

#include <cv.h>
#include <highgui.h>

int main()
{
    IplImage* img1 = cvLoadImage("img1.jpg", CV_LOAD_IMAGE_UNCHANGED);
    IplImage* img2 = cvLoadImage("img2.jpg", CV_LOAD_IMAGE_UNCHANGED);

    float fps = 20;
    CvVideoWriter* writer = cvCreateVideoWriter("out.avi", CV_FOURCC('M','J','P','G'), fps, cvGetSize(img1), true);
    if (!writer)
    {
      fprintf (stderr, "VideoWriter failed!\n");
      return -1;
    }

    cvWriteFrame(writer, img1);
    cvWriteFrame(writer, img2);

    cvReleaseVideoWriter(&writer);
    cvReleaseImage(&img1);
    cvReleaseImage(&img2);
}
于 2011-05-09T20:47:34.117 に答える