問題タブ [libx264]

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 投票する
1 に答える
469 参照

c++ - libx264.dll は関数 x264_encoder_open_130 を公開していますが、これは x264_encoder_open ではありませんか?

x264 dll ファイルのバージョンをチェックインして、open 関数の名前が 'x264_encoder_open_130' であり、130 がたまたま使用している x264 の特定のビルド番号であることを確認しました。Windows で minGW を使用してビルドし、それにリンクしているため、新しい dll を使用しようとするとプログラムがクラッシュします。これを回避する方法はありますか?

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

video - 既存のストリームと一致するように h264 をエンコードする

要するに、少量のビデオ フレームをエンコードし、そのストリームを再エンコードせずに、はるかに大きな h.264 ストリームの前にそれらをステッチする必要があります。

詳細: h.264 es とオーディオ es を含むマルチ GB トランスポート ストリームを受け取りました。現在、h.264 ストリームは常に x264 を使用して生成されており、将来的にはそうなると推測できます。ここで、このストリームにいくつかのビデオ フレームを追加する必要がありますが、ストリーム全体をデコード/エンコードすることはできません。これにより、両方のストリームが一致するように x264_encoder_open を渡すために必要な正確なパラメーターを見つけるための唯一のオプションが残ります。

現在、私がやっていることは次のとおりです。

  1. 元の ts を逆多重化し、h.264 NAL パケットを抽出します。
  2. 最初の「ユーザー データが登録されていない」SEI パケットを見つけたら、それを解析して一連の x264 パラメータを見つけます。
  3. libavcodec を使用して、ビデオのデコードを開始します。これにより、画像の寸法と、AVCodecContext 構造の h264 プロファイルとレベルが得られます。
  4. x264_param_t 構造体でできる限りすべてを一致させます。

これでエンコードを行うことができ、エンコードされたビデオは結合ポイントまで正しく再生されます。VLC がステッチ ポイントに到達すると、次の一連のメッセージをスローし始め、すぐに再生が停止します。

これは、エンコードされたフレームが元のフレームと一致しないことを明確に示しています。ソースコードを閲覧してきましたが、これを行う方法が見つからないようです。私が現在持っているもの (動作していないことに加えて) は、多くの当て推量が含まれているため、たとえ私が持っている少数のサンプル ファイルで動作させることができたとしても、これを運用サーバーに展開するのは怖いでしょう.

ですから、当然の疑問は次のとおりです。これを行うための安全で正式な方法はありますか?

前もって感謝します

0 投票する
3 に答える
20929 参照

ubuntu - GStreamer x264enc が見つかりません

次の手順に従って、GStreamer-0.10 とすべてのモジュール (基本、良い、悪い、醜い、ffmpeg) をインストールしました (前/次をクリックして参照): http://www.linuxfromscratch.org/blfs/view/svn/multimedia /gst-plugins-ugly.html

すべてがうまく機能しているように見えましたが、パイプラインを実行したいときに次のエラーが発生しました。

どうやらモジュールがインストールされていませんでした:

その後、次を実行してコーデックをインストールしました。

これもうまくいきませんでした。そこで、最新のビルドを手動でインストールしました: http://www.videolan.org/developers/x264.html

x264 のインストールが成功した後、もう一度 gstreamer-0.10 醜いモジュールで ./configure を実行したところ、次のことがわかりました。

x264 が利用可能かどうかのチェックが満たされているようです:

ubuntu サーバー 12.04 LTS を使用しています。このモジュールを適切にコンパイルするために私がしなければならないことはありますか? ありがとう!