Audacity에서 wave (.wav) 파일을 LOOP_START 및 LOOP_LENGTH 키를 사용하여 메타 데이터의 맞춤 태그와 함께 내 보냈습니다.자바 : 웨이브 오디오 파일에서 메타 데이터 태그 받기
Screenshot of the tags in the metadata editor in Audacity
내 유일한 문제는 내가 내 자바 프로그램에서 이러한 키에 부착 된 값을 얻는 방법을 모르는 것입니다. 나는 이것에 대해 어떻게 갈 것인가?
편집 : 유일한 방법 인 경우 타사 라이브러리를 다운로드하는 것에 반대하지는 않지만 표준 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가 아닌 루트에서 bin으로갑니다. . 차이가 있는지 확실하지 않습니다. 하지만 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
입니다.
내 두 번째 편집을 참조하십시오. 비슷한 것을 시도했지만 "{}"만 인쇄합니다. – wheat32