問題タブ [vp8]

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

rtp - VP8/VP9 RTP ライブラリ

RTP を介した VP8/VP9 ストリームの転送を容易にする既存のライブラリはありますか?

VP8 の RFC ドラフト ( https://datatracker.ietf.org/doc/html/draft-ietf-payload-vp8-08 ) を見つけましたが、VP9 コーデックについて言及しているものはありません (最近すぎますか?)。libavformat はこのドラフトを実装しているようです。他の選択肢はありますか?

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

video-streaming - ビデオ ストリームのキャプチャとフレーム レートの制御

現在、VP8 と V4L2 を使用してビデオ ストリーミング ソフトウェアを開発していますが、フレーム レーティングの重要な概念に苦労しています。

フレームをループでフェッチし、エンコードしてRTP経由で送信する基本的な実装があります(可能な限り高速です)。しかし、ビデオのフレームレートを制御したり、サンプリングを調整したりする方法がわかりません。

基本的には次のように要約できます。

特に、適切に設定する方法がわかりません:

  • V4L2 キャプチャ ループ (定期的にフレームを取得するためにタイマーが必要ですか?)
  • V4L2 からの FRAME INTERVAL 設定 (必須ですか?)
  • libvpx タイムベース (1/fps ? 1001/30000 を使用する必要がありますか?)
  • ポイント値 (フレーム数 * (1/fps) * 90000 である必要がありますか?)
  • RTP タイムスタンプ (ここで pts を使用できますか?)
  • 考慮できるその他の構成設定...
0 投票する
5 に答える
129954 参照

ffmpeg - ffmpegを使用したwebmからmp4への変換

webm ファイルを mp4 に変換しようとすると、出力が途切れ途切れになり、ffmpeg によって多くのフレームがドロップされたように見えます。

次のコマンドを使用して変換しました

それらはすべて同じ問題を抱えています。ffprobe を使用すると、フレームが多かれ少なかれ適切に表示されるようです。

アップデート:

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

android - ネイティブ WebRTC への H.264 サポートの追加

H.264 のサポートが WebRTC の現在のメンテナーの目標ではないことはよく知っています。しかし、ネイティブ コードを調べていると、H.264 RTP パケタイザーを参照するコメント アウトされたビットがあることに気付きました。私が取り組んでいる環境は OMAP4430 で、H.264 SVC エンコード/デコードをハードウェア アクセラレーションでサポートしているため、アプリケーションのネイティブ WebRTC に H.264 サポートを再度追加できれば素晴らしいと思います。(VP8 は私のデバイスでは非常に遅いです。) 現在プロジェクトにあるパケタイザーから始めるのは良いスタートですか? 誰かがこれを行ったことがありますか / H.264 サポートを追加する方法についての推奨事項はありますか? (H.264 WebRTC データを Doubango の Media Breaker に送信して、通常の WebRTC クライアントをサポートする予定です。)

上記が絶対に不可能または非常に難しい場合、少なくともデバイスで VP8 のパフォーマンスを向上させる方法を誰かが推奨できますか? これは NEON ベースの ARM SoC であるため、libvpx は自動的にそれを利用するはずだと思います。確実に知る方法はありますか?

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

ffmpeg - FFMPEG を使用した webm ローカル udp ストリーミング

最近ffmpegを使い始めたばかりで、このストリーミングの問題に遭遇しました。シナリオ: ローカル ネットワークで Web カメラをライブ ストリーミングしたい。サーバーとクライアントの両方が Windows プラットフォームを使用します。

現在実行可能な解決策: ffmpeg のシンプルなコマンドラインを使用する

すぐにテストするために、ローカルでストリーミングしようとしました(この質問では、入力はそれほど重要ではありません)。

上記は、約1〜2秒の遅延で発生するレイテンシを除いて、問題なく機能します。

ここで、ビデオに libvpx (vp8) を使用し、オーディオに vorbis を使用するようにエンコーダーを変更したいと考えています (入力を事前に記録された h264 ビデオに変更しましたが、実際には問題ではありません)。

では、ffmpeg のポイント ツー ポイント ストリーミングは vp8 では機能しないのでしょうか、それとも何か不足していますか? ところで、最終的な目標は、同様のビデオ チャット ベースのフレームワークを作成することです。私は今webRTCを読んでいます。

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

stream - WebRtc VP8 カスタム ビデオ

RGB フレーム (リアルタイム) データを Web 経由でビデオ ビデオ ストリームとしてブラウザ (chrome/firefox) に転送したいと考えています。

rgb -> yuv -> yv12 -> vp8 の変換が完了しました。vp8 ビデオをローカルで再生でき、見栄えも良いです。

他の「クライアント」がこれを見ることができるように、このデータを webrtc にフィードできるようにする必要があります。

これは実行可能ですか?

vp8 を webm ビデオ ファイルにラップするつもりでしたが、実際のファイルの長さは書きません。これは、リアルタイム ストリーミングであるため長さが分からず、ブラウザでタグを作成し、データのフィードを開始するためです。(私は以前に Theora でこれを行いました。「ストリーミングを偽造しました。確かに少し遅く、TCP でしたが、遅延はありました)。

または、データを webrtc にフィードします。APIがこのようなことを許可しているかどうかさえわかりません。少しハックする必要があるかもしれません。

要約: プロセス A は NxM RGB ビデオを作成し、それをバッファに書き込みます。プロセス B は、IPC を介してバッファを読み取り、それを VP8 にエンコードします。プロセス B は、これを webm または webRtc のいずれかで VP8 を使用してブラウザに送信します。

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

video-streaming - WebM VP8 非連続フレームをデコードする方法

VP8でエンコードされたフレームを「非順次」の順序で適切にデコードする方法について、誰かが私にアイデアをドロップできますか。これが意味することは次のとおりです。

つまり、「1」から「X」までの VP8 でエンコードされたフレームのチャンクがあります ( 「I」フレームは 25 フレームごとに追加されます) 。

すべてのフレームを「フレーム 1」から「フレーム 13 」まで順番に再生すると、すべて問題なく、アーティファクトは発生しません。

しかし、「フレーム 13 」のみをデコードすることに関心があるとしましょう...これは「I」フレームではないため、最初に「フレーム 1」(「I」フレーム) をデコードし、次に「フレーム」のみをデコードします。 13 "。しかし、フレームはいくつかのアーティファクトでデコードされているので、何が原因なのか少し混乱していますか? エンコードされたフレーム

私が言いたいことを示す短いビデオは、ここにあります

私の知る限り、VP8 は「B」フレームを使用していませんか?

これを克服するために使用できるデコーダーまたはエンコーダーのフラグがいくつかあるのではないでしょうか?

VP8 でエンコードされたすべてのフレームが相互に依存しているように見えますが、これは本当ですか?

WebM 対応のビデオ プレーヤーによってビデオ シークがどのように行われるかについてのアイデアはありますか?

ありがとう。

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

video - vp9 ビデオ デコーダーのダイレクト ショー フィルターを作成する方法

私はダイレクトショーが初めてです。vp9 デコーダーの C ソリューションがあり、圧縮ファイルをデコードして再生できるダイレクト ショー フィルターを作成したいと考えています。

これらのフィルタをダイレクト ショーに追加する方法について、どなたか助けてください。これにより、エンコードされたファイルを再生、一時停止、実行のシンプルな GUI でデコードできます。

デコーダー アプリケーションは、exe または dll タイプのどちらにする必要がありますか?

Direct Show へのカスタム コーデックの追加/登録に関する資料は大歓迎です。

助けてくれてありがとう。