私が最初にしたことは、FFmpeg サイトのチュートリアルを参照することでした。
MSYS+MinGW64 をセットアップし、関連するすべての前提条件 (つまり、OpenSSL、x264、rtmpdump) を複製し、それらすべてを正常にクロスコンパイルしました。FFmpeg の構成を実行したところ、クロスコンパイルもできました。そして、静的にリンクされた ffmpeg.exe は満足のいくように動作します。
Eclipse では、プロジェクトを作成し、ソース コードを読み込んでナビゲートし、いくつかの変更を加え、コンパイルしてステップスルー デバッグすることさえできました。私が抱えている問題は、Eclipse の設計時エラーにあります。これは、FFmpeg よりも Eclipse/C++ の問題だと思います。
たとえば、ffmpeg.c では、次の行に「フィールド 'bitstream_filters' を解決できませんでした」というエラーが表示されます。
AVBitStreamFilterContext *bsfc = output_streams[i]->bitstream_filters;
それoutput_streams
はタイプです
OutputStream **output_streams
Eclipseの宣言を開こうとするとOutputStream
、2 つの場所のオプションが表示されます。明らかに、Eclipse はこれらの宣言のどれであるかを認識していないため、「解決できませんでした」というエラーが発生します。OutputStream
次の2つのファイルで定義されています
- ffmpeg.h
- libavformat/smoothstreamingenc.c
(うーん、FFmpegがスムーズなストリーミングを実行できることを知ってうれしいです...)しかし、とにかく正しい定義はffmpeg.hのものでした。
つまり...ソースをIDEに入れるという全体的な目標は、インテリセンスなどの利点を享受できるようにすることでした。このように名前が衝突した場合にどのように型を解決するかについて、ある種の順序または規則を設定するために Eclipse で何ができますか?