3

フレームのシーケンスをロスレス ビデオ コーデックでエンコードし、Java アプリで再生する必要があります。ファイルサイズは気にしません。出力フレームは、入力フレームと正確に一致する必要があります。非可逆コーデックは、高いビット レートでもこれを行いません。

これらの有名なロスレス ビデオ コーデックはどれも、JMFまたはFMJでサポートされていないようです。

  • ハフYUV
  • CorePNG
  • ラガリス
  • FFV1
  • ...

Java でサポートされているロスレス ビデオ コーデックをご存知ですか?

私が検討した他のオプション:

  • アニメーション GIF: 再生は、実際のビデオ コーデックのように一定のフレーム レートであることが保証されていますか?
  • 別々のフレームを読み込んで表示します。これを一定のフレーム レートで、多くのフレームを落とさずに行うのはどれくらい難しいでしょうか?
  • Proce55ing: 動画再生ライブラリには Quicktime が必要ですが、私のプラットフォームでは利用できません。

編集: 最終的に、JMF の (非標準) MotionJPEG を最高品質で使用することに決めました。厳密には無損失ではありませんが、MPEG4 よりもはるかに優れた品質です。

4

3 に答える 3

1
  • アニメーション GIF: はい、アニメーション GIF のフレームレートを定義できます (実際には、各フレームの遅延を設定できます)。

  • フレームを手動で表示する: ハードウェア、フレーム レート、画像のサイズによって異なります。30 fps での HD 解像度は、ハードウェア サポートなしでは困難です。サムネイルのサイズは、どのプラットフォームでも問題になることはありません。

  • 別の方法: やりたいことに応じて、おそらくネイティブ コードを使用して、別のプレーヤーまたはフレームワークを「リモート コントロール」することを検討できます。たとえば、*nix/X11 に mplayer を埋め込むか、COM を使用して Windows で WMP または DirectShow を制御します。

于 2008-12-28T15:54:39.047 に答える
1

FMJ は、MJPEG が一連の JPEG 画像であるのと同じように、一連の PNG 画像を保存/再生する実験的な方法をサポートしています。1 つは PNG を uuencode する実験的な XML ファイル形式 (かなり肥大化) で、もう 1 つは x-multipart-mixed-replace HTTP 形式で、拡張子 .mmr で終わるファイル形式で FMJ がサポートしています。

于 2008-12-28T10:17:52.470 に答える
0

まあ、ファイルサイズは問題ではないと言うので、gzip/bzip2 は迅速で簡単なオプションです。最大の圧縮は得られませんが、より良い答えが見つからない場合の最後の手段になる可能性があります。

gzip されたファイルは、java.util.zip.GZIPInputStream を使用して透過的に開くことができ、同様のインターフェイスが Bzip2 で使用できます。

于 2008-12-27T18:47:51.147 に答える