問題タブ [mpeg-2]
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.
video - ffmpeg を使用して静止画像を mpeg-2 ビデオにエンコードするときにアーチファクトをポンピングしないようにする方法
次のようなコマンドラインを使用して、静止画像を DVD 準拠の mpeg ストリームにエンコードしています。
ffmpeg.exe -y -loop 1 -t 00:00:30 -r 1 -i "image.jpg" -target pal-dvd -b:v 6000000 video.mpg
これにより、単一の静止画像を示す 30 秒のビデオが生成されます。ビデオを見ていると、各 GOP のほぼ最後に、奇妙な (そして醜い) "ポンピング" アーティファクトがあることに気付きます。ストリーム アナライザー ツールを使用して、IPPPPPPPPPPPPPPPPPPPPPPPPPPPPP のシーケンス内の 2 つの連続する I フレームが、予想と同じに見えないことに気付きました。これは、エンコーダーが品質に影響を与えるエンコード パラメーターを変更する理由がないためです。
コマンドラインを使用して同じ画像もエンコードしました
ffmpeg.exe -y -loop 1 -t 00:00:30 -r 1 -i "image.jpg" -f dvd -pix_fmt yuv420p -r 25 -s 720x576 -aspect 16:9 -vcodec mpeg2video -b:v 6000000 -maxrate 9000000 -bufsize 1835008 -muxrate 10080000 -minrate 0 -packetsize 2048 -g 15 video.mpg
これは、上記の -target pal-dvd で暗示されたパラメーターとほぼ同じパラメーターを適用します。結果は予想通りです。
注: 静止していない素材では、「ポンピング」が少ないかまったくありません。また、vbv バッファー サイズを 3670016 バイトなどのより高い値に設定すると、効果的に 2 倍になり、ほとんどなくなります。残念ながら、ストリームは上記のコマンド ラインのように vbv バッファ サイズを強制する DVD 準拠である必要があるため、これはオプションではありません。
では、これらの視覚的なアーティファクトを回避し、(実際に) 静止画像を表示するストリームを取得するにはどうすればよいでしょうか?
vlc - VLC が mpeg-2 を正しく再生できない
私の友人は、mpeg-2VLC プレーヤーでファイルを正しく再生できないという問題を抱えています。
オーディオは流暢に再生されますが、ビデオは適切ではありません。彼は Windows Media Player で同じファイルを再生しようとしたので、ファイルに問題がないことがわかりました。ファイルは、データ転送に問題のない彼のコンピューターの SSD ディスクに保存されます。
VLC とコーデックの再インストールは効果がありませんでした。
他の解決策はありますか?
mpeg - ISO/IEC 13818-2 と H.262 の間に違いはありますか?
H.262 ドキュメントと ISO/IEC 13818-2 のドラフト バージョンを読みました。私は2つの違いを理解できません.誰かがそれを指摘できますか??
前もって感謝します
gstreamer - gstreamer を使用した dvblast から HLS へのストリーミング
DVB-T から発信された MPEG2 ストリームをネットワークに正常にマルチキャストしている dvblast があり、次のように gstreamer v1.0 を使用して、このマルチキャスト MPEG2 ストリームを取得し、Raspberry Pi 2 で HLS に変換しようとしています。
HLS ファイルが正常に作成され、結果に満足している mediastreamvalidator に httpd 経由で正常に提供されます。
MPEG2 ライセンスがあり、機能しています。
Safari も iPhone もこのストリームを表示できません。どちらの場合も、再生ボタンは表示されますが、ビデオやオーディオは表示されません。最終的に、Safari は「Missing plugin」と主張します。どこが間違っているのか、この特定のシナリオに関するドキュメントや例を見つけるのに苦労しています。パイプラインのどこでこれが間違っているかを誰か指摘できますか?
java - Java での Mpeg-2 の分割とトランスコーディング
Mpeg-2 の一連の画像 (jpg/png など) への並列 (部分) トランスコーディングを実装したいと考えています。
私が見る限り、次の2つのステップを実行する必要があります。
- ビデオを N 個のバイナリ パーツに分割する
- それぞれを画像にトランスコードします。
これらの手順を正しく行う方法がはっきりとわかりません。分割を開始するときに何を探す必要がありますか (ヘッダー/本文/GOP/ある種のオフセット/など)? 私を助けることができるライブラリ(JCodec, JavaCV, old Xuggler?)はありますか、それとも両方のステップを手動で行う必要がありますか?
アドバイスをいただければ幸いです。
更新(トピック外の質問を削除)
