2016-10-05 1 views
-1

私は共有メモリからレンダリングされたイメージを読み込んでパイプ(mkfifo)に書き込むC++プログラムを持っていますので、ffmpegでそれらをキャプチャし、ffserver 。ストリームを動作させるには、プログラムとffmpegコマンドを別々に起動する必要があります。 ffmpegをプログラムに組み込みパイプを避けることができないかどうか私は自分自身に尋ねました。は、C++プログラムのffmpeg-commandを含んでいます

マイffmpegのコマンド:

ffmpeg -re -f -rawvideo -s 800x600 -pix_fmt rgb24 -i myfifo http://localhost:8090/feed1.ffm 

私の質問は:

のC++にffmpegのコマンドを含めるするための最良の方法だろうどのような - プログラム?このソリューションを改善するための他のアイデアはありますか?

ご協力いただきまして誠にありがとうございます。前もって感謝します。

答えて

-1

2つの方法があります。

より簡単にシステムを使用することです()、あなたは、Linuxであり、ffmpegのコマンドを起動すると仮定するとは。

if(system("ffmpeg -re -f -rawvideo -s 800x600 -pix_fmt rgb24 -i myfifo http://localhost:8090/feed1.ffm") != 0) 
{ 
    cout << "ffmpeg failed..." << endl; 
} 

困難は、プロジェクト内のライブラリが含まれ、内部的にそれを使用することです:Can FFmpeg be used as a library, instead of a standalone program?を。

それはのLibavを使用する方法について説明しhttps://trac.ffmpeg.org/wiki/Using%20libav *、(ffmpegのが使用する内部ライブラリを)チェックアウトを開始するには、と私はチュートリアルhttp://dranger.com/ffmpeg/tutorial01.html

に従うことをお勧めします
関連する問題