問題タブ [libavformat]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
411 参照

c++ - FLV ファイル libavformat を書き込む緑色の出力

ウェブカメラのビデオ フレームをキャプチャし、デコードし、YUV420P に変換し、エンコードして、ファイルに書き込むことができる C++ コードを作成しました。mpeg2 コーデックを使用して .mpg ファイルに書き込むと、すべてが完全に機能します。しかし、flv を使用すると、生成される出力は単なる緑色の画面になります。flv ビデオをエンコードするために設定する必要がある別のエンコーダー設定があるかどうかわかりません。これが私のコードです(関連部分):

エンコーダ設定:

フレームを書く:

0 投票する
1 に答える
538 参照

c++ - Qt 5.0.2 への FFmpeg: av_register_all() でコード -1073741515 を終了します。

Qt アプリに FFmpeg を統合しようとしています。Zeranoe FFmpeg ビルド ページの FFmpeg git-0fb64da 64 ビット Dev ソースを使用し、avformat.lib をプロジェクトに追加しました。私のプロフィール:

「extern "C"」ブロック内に libavformat/avformat.h を含めました。

av_register_all() を呼び出さない限り、これはすべて正常に機能しますが、呼び出すと、アプリはコード -1073741515 で終了します。理由についてのアイデアはありますか?

0 投票する
0 に答える
1789 参照

android - Mac での Libavcodec.so と libavformat.so の簡易ビルド

誰がffmpegを必要としていますか? 私じゃない。私が必要としているのは、オーディオ ストリームと一緒にビデオ ストリームをデコードできるようにすることです。これにより、opengl サーフェスにフレームをオーディオと同期させることができます。

FFmpeg は、ビデオをトランスコードするツールです。それは私が必要とするものではありません。そのライブラリが必要です。

問題は、FFmpeg をビルドするためのすべての例に、必要のないジャンクが含まれていることです。私が時間を無駄にした最新の例:

https://github.com/appunite/AndroidFFmpeg

本当に必要のない freetype2 のようなものを使用します。さらに厄介なことは、例が freetype2 ではなく freetype を参照しているため、ビルド手順が壊れているため、説明どおりにビルドすることさえできないことです。私が libtool で抱えていた問題に取り掛からないでください。

キッカーはlibav.orgを見つけており、彼らは彼らのaboutページでffmpegプロジェクトの混乱について説明しています。おそらくそれがこれがとても難しい理由です。

では、共有ライブラリだけを構築するのはそれほど難しいのでしょうか? 誰かが私にいくつかのドキュメント、または機能するチュートリアルを教えてもらえますか? これが私にとって新しい領域であることは認めますが、Google を使用して見つけたのはカオスだけです。

0 投票する
2 に答える
4206 参照

c - でビットストリーム フィルターを使用する方法

libavformat、libavcodecなどを使用して、ビデオをコピーし、オーディオをトランスコードして、RTSPストリームを分離し、TSファイルに再多重化しようとしています。ffmpeg を使用する場合、コマンドはおおよそ次のようになります。

多重化/逆多重化の例を見てきましたが、ストリーム コピーの作成方法を理解するのが難しいことを除けば、ビットストリーム フィルターについての言及が見つかりません。現在、次のエラーが発生しています。

ビットストリーム フィルターの作成方法と割り当て方法を教えてください。入力ストリームまたは出力ストリームに割り当てますか?

0 投票する
1 に答える
4021 参照

ffmpeg - libavformat API を使用して H264 SPS & PPS NAL バイトを読み取る

libavformat API を使用して H264 SPS & PPS NAL バイトを読み取る方法は?

「av_read_frame(input_avFormatContext, &avPkt)」API を使用して、.mp4 ビデオ (コーデックは h264) ファイルからビデオ データを「AVPacket」構造体に読み込んでみました。

avPkt->data をファイルにダンプしました。ただし、最初のフレームの読み取りは IDR フレームです。

「ffmpeg -i video.mp4 video.h264」を使用して生成されたファイルには、IDR の開始前に SPS と PPS が含まれます。

.mp4 ファイルから未加工の .h264 ビデオを抽出し、SPS、PPS、IDR、P1、P2... の順にダンプしたいと考えています。

libavformat API を使用してプログラムでこれを実行したいと考えています。

それについて何か考えはありますか?

ありがとう。

0 投票する
0 に答える
230 参照

c - FFMPEG を使用してネットワーク ビデオ ストリームのフレームレートを下げる

ffmpeg C ライブラリでデコードしているネットワークビデオ ストリームがあります。最大フレームレートを最大値、たとえば 15 fps
に下げたいと思います。 フィルターを使用しましたが、25 fps のビデオ ストリームでもフレームの重複が発生しました。これはネットワークの遅延によるものだと思います。
fps=fps=15

最大フレームレートを下げるが、フレームの重複を避け、代わりに遅延を得る方法はありますか?
そうでない場合、デコードされたフレームが重複の 1 つであるかどうかを識別する方法はありますか?

0 投票する
2 に答える
669 参照

c - ffurl_register_protocol() をエクスポートするには?

ffurl_register_protocol()エクスポートが必要なレガシー コードがいくつかあります。このパッチを見つけました:

しかし、それは役に立ちません。それを行う方法はありますか?