問題タブ [openh264]
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.
ffmpeg - I フレームに基づく P フレームの生成
非常によく似た 5 つの画像があるとします。最初の画像に基づいて、画像 2、3、4、および 5 を圧縮したいと思います。これは、I フレームから P フレームを生成する方法と多少似ています。
- 一般的に、そうするための最良の方法/ツールは何ですか?
- たとえば、FFMPEG を使用して P フレームを生成し、それらを別のファイルに保存することは可能ですか?
編集: 似ていますが、2つの画像の違いを単に生成することを探しているわけではありません。私の目標は、最初の画像の情報を何らかの形で使用して、連続する画像をはるかに小さくすることです。単純に diff を実行すると、diff 自体はほぼ同じサイズ (約 10% 縮小) であり、期待したほどではありません。これらの 5 フレームを含む mp4 ビデオを生成すると、ビデオ サイズは、ファイルに 5 フレームを配置するよりもはるかに小さくなります。これは、おそらく I フレームに基づくフレーム予測に関係しています。これらの予測フレームを 1 つずつ生成し、個別に保存する方法はありますか?
openh264 - エンコーダーの InitilizeExt() が openH264 で失敗する
ソリューションに openH264 を実装しています。Initialize() [基本パラメーターを持つエンコーダーの場合] と InitializeExt() [拡張パラメーターを持つエンコーダーの場合] の呼び出しで問題に直面しています。常に 1(cmInitParaError) を返しています。リンクhttps://github.com/cisco/openh264/wiki/UsageExampleForEncoderで提供されているサンプルを確認しました。しかし、それでも失敗します。
特に設定が必要なものはありますか?
サンプルコードを以下に示します。
python - kivy を使用して h264 でエンコードされたライブ ビデオ RTSP ストリームを再生する
私はlive555
、カメラからの画像を に渡しlibopenh264
、ffmpeg
. ストリームは、 を使用して正常に表示できますVLC
。イベント ループも avi コンテナーに記録します。
kivy
以下の単純な kvlang を使用して、リモート表示クライアントをセットアップしたかったのです。
ウィンドウにオブジェクトが表示されずVideo
、ログ出力に次のエラーが表示される
ストリーム エンコーディングを MJPEG に変更すると、ビデオ プレーヤーはライブ ビデオをエラーなしで表示します。さらに、source
記録されているh264でエンコードされたaviファイルのファイルパスに変更すると、エラーなく再生されます。VideoGstplayer
予想されるエンコーディングを警告できる構成はありますか? または、提供された kivy プレーヤーが正しく読み取れないというストリームのセットアップに問題がありますか? gstreamer dll が見つからない可能性がありますが、メッセージはそのようなことを警告しません。
これはすべて、python-dependencies をインストールするための基本的なインストール手順を使用して Windows で実行されました。kivy
使用しているバージョンがございます1.9.1
。私はkivyが初めてです。
編集:より多くの情報をテーブルに持ってくるためだけに。image
コーデックが の場合でも、タイプのエラーが引き続き発生するようですMJPEG
。したがって、表示の問題は gstremer または gstreamer の実装のどこかにあると思われます。