내 앱이 org.blinkenlights.jid3을 사용하여 jaudiotagger로 마이그레이션 중입니다. 나는 mp3 태그의 대부분을 성공적으로 구현했지만 POPM 태그로 어려움을 겪고 있습니다. 프레임을 gettting하여 POPM을 읽으려고합니다. 코드는 세 가지 방법을 recongnises으로 올바른 방법으로 나타나는 I는 브래킷 FrameBodyPOPM popmframe = id3v24tag.getFrame 넣어야 무엇jaudiotagger 인기 태그 태그
(Long irating = popmframe.getRating();
Long cnt = popmframe.getCounter();
String mail = popmframe.getEmailToUser()).
(); 다음과 같이 나는 결과를 달성 JID3를 사용 : jaudiotagger를 사용
try {
ID3V2_3_0Tag ID3V2_3_0Tag = (org.blinkenlights.jid3.v2.ID3V2_3_0Tag) MediaFile.getID3V2Tag();
if (null != ID3V2_3_0Tag) {
for (int i = 0; i < ID3V2_3_0Tag.getPOPMFrames().length; i++) {
if (ID3V2_3_0Tag.getPOPMFrames()[i] != null) {
rating = ID3V2_3_0Tag.getPOPMFrames()[i].getPopularity();
break;
}
}
}
rating = rating/50;
} catch (ID3Exception e) {
e.printStackTrace();
}
지금까지 다음과 같은 코드가 있습니다 질문에 대한
try {
MP3File musicFile = (MP3File) AudioFileIO.read(SourceFile);
if (musicFile != null && musicFile.hasID3v2Tag()) {
ID3v24Tag id3v24tag = musicFile.getID3v2TagAsv24();
FrameBodyPOPM popmframe = id3v24tag.getFrame(??????);
Long irating = popmframe.getRating();
Long cnt = popmframe.getCounter();
String mail = popmframe.getEmailToUser();
}
} catch (CannotReadException | IOException | TagException
| ReadOnlyFileException | InvalidAudioFrameException e5) {
throw e5;
}
그것이 문자열 보고서를 표시하지만을 나는 같은 문자열을 입력 할 때 " POPM "보고 필수 : org.jaudiotagger.tag.id3.framebody FramebodyPOPM, 찾을 java.lang.Object
jaudiotagger 라이브러리를 사용하여 POPM 태그를 읽고 쓰는 방법을 보여줄 수있는 사람은 누구입니까?
갱신 :
java.lang.ClassCastException: org.jaudiotagger.tag.id3.ID3v24Frame cannot be cast to org.jaudiotagger.tag.id3.framebody.FrameBodyPOPM
하지만 할 경우 ID3v24Frame을 popmframe, 3 방법은 다음과 같습니다 나는 값이 너무
FrameBodyPOPM popmframe = (FrameBodyPOPM) id3v24tag.getFrame(ID3v24Frames.FRAME_ID_POPULARIMETER);
오류가
컴파일하지만 결과 프레임 식별자해야한다고 생각합니다 더 이상 사용할 수 없으므로 FrameBodyPOPM이 올바른 방법이라고 생각합니다.
마지막으로 jaudiotagger를 포기했습니다. 일부 Java io 파일이 누락되었습니다. 이것은 github 코멘트 – Theo
을 읽었을 때 반복적 인 문제인 것으로 보입니다. 표준 자바가 아닌 안드로이드 자바 용으로 개발 되었기 때문에 현재 불완전한 자바 구현 때문에 안드로이드에서 실행되는 몇 가지 문제가 있습니다. –