Audacityのwave(.wav)ファイルを、LOOP_STARTとLOOP_LENGTHというキーを持つメタデータのカスタムタグとともにエクスポートしました。Java:Waveオーディオファイルからメタデータタグを取得する
Screenshot of the tags in the metadata editor in Audacity
私の唯一の問題は、私は私のJavaプログラムでこれらのキーに添付の値を取得する方法がわからないです。私はこれについてどうやって行くのですか?
編集:唯一の方法であればサードパーティのライブラリをダウンロードすることに反対しませんが、標準のJavaライブラリを使用したソリューションを使用することをお勧めします。
EDIT2:
URL url = Main.class.getClassLoader().getResource("bgm/bgm4.wav");
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(url);
AudioFormat format = audioInputStream.getFormat();
System.out.println(format.properties());
だけがこれを印刷している: "{}" ここで私はいじりいますいくつかのコードがあります。 ( "bgm"はフォルダ(srcの直接の子)です)
例外を投げているわけではないので、私は知っていますが、srcではなくrootからbinに移動しています。違いがあるかどうかは分かりません。しかし、ビンのオーディオファイルは、srcのものと同じメタデータタグを持っています。
1/13/18編集: これはまだ解決しています。ここに私が試している新しいコードがあります:
URL url = AudioMetadata.class.getClassLoader().getResource("audio/bgm4.wav");
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(url);
AudioFormat format = audioInputStream.getFormat();
AudioFileFormat fformat = AudioSystem.getAudioFileFormat(url);
Map<String, Object> props = fformat.properties();
System.out.println(props.size());
この印刷物は0
です。
私の2番目の編集をご覧ください。私はそれに似たものを試しましたが、それは "{}"しか印刷しません。 – wheat32