2

スタックトレースは次のとおりです。

java.io.IOException: Resetting to invalid mark
    at java.io.BufferedInputStream.reset(BufferedInputStream.java:433)
    at org.tritonus.share.sampled.file.TAudioFileReader.getAudioInputStream(TAudioFileReader.java:324)
    at javazoom.spi.mpeg.sampled.file.MpegAudioFileReader.getAudioInputStream(Unknown Source)
    at javazoom.spi.mpeg.sampled.file.MpegAudioFileReader.getAudioInputStream(Unknown Source)
    at javax.sound.sampled.AudioSystem.getAudioInputStream(AudioSystem.java:1179)
    at javazoom.jlgui.basicplayer.BasicPlayer.initAudioInputStream(Unknown Source)
    at javazoom.jlgui.basicplayer.BasicPlayer.initAudioInputStream(Unknown Source)
    at javazoom.jlgui.basicplayer.BasicPlayer.open(Unknown Source)
    at BasicPlayerDemo.play(BasicPlayerDemo.java:49)
    at BasicPlayerDemo.main(BasicPlayerDemo.java:24)

他の人もこの問題を抱えているようです:

これには何か理由がありますか?JavaZoomクラスを使用して単純なJavaSwing音楽プレーヤーを作成しようとしています。

4

2 に答える 2

5

( pelzkuh.de ブログ) にこの問題の解決策があります。これはドイツ語ですが、主に古いライブラリ mp3spi1.9.4.jar が原因であると述べています。これを新しい mp3spi1.9.5.jar に置き換える必要があります。リンクは pelzkuh ブログ エントリに記載されています。

于 2012-10-09T18:44:56.577 に答える
3

答えのあるスレッドは、私が以前に打った何かをほのめかしています。

  1. MP3 は、基本的な形式に多くの拡張機能を備えた、「標準」のようなものではありません。Java サウンド ベースのアプリ。通常、これらのタイプの一部のみを処理します。そうでない場合でも
  2. 一般に、メディア プレーヤーは、スローされた「不要なファイル」 (無効なファイルを含む) を再生するためにかなりの労力を費やします。その能力を再現することは大きな努力になるでしょう。

では、これに対する簡単な解決策はありませんか?そのような MP3 を無視する必要がありますか?

  1. いいえ
  2. それはとても簡単(単純)に聞こえます。それらをスキップして次のトラックに進みます。ユーザーがプレーヤー オプションで「高いフィードバック」を選択した場合、ダイアログをポップするか、ログに追加します。

実は私は大学のミニプロジェクトを作っているので、このプレーヤーが特定のファイルを再生しないと見栄えがよくありません。

私はそれをマークしている人々にそれを確認します。大学のプロジェクトで「投げかけられたファイル」のサポートを提供することを彼らが期待している場合、彼らは雲から頭を引き出す必要があります。ある「主要なプレーヤー」で再生するが、次のプレーヤーがロックして死ぬ原因となるファイルを作成できるに違いありません (OK.. 最近のビデオの試みについてもっと考えてみますが、同じ基本原則が適用されます)。「メディアの扱い」はトリッキーです。

..自分で作成することにしたので、大学は何も期待していません。メディアの扱いが難しいとは知りませんでした。彼らが尋ねたら、私は彼らにそれを伝えることができます!

あなたが制御するプレイリストとメディアを完全に備えたプレーヤーを提供することをお勧めします(また、プレーヤーと互換性があることを確認してください)。私のメディア ページで、3 つの基本的な配布可能な MP3 トラックを見つけることができます。それらは:

(解析可能) JMF MP3 コーデック

..だからJavaZoomもそれらをロードできるはずです。

于 2012-04-06T17:47:53.437 に答える