【Java】악곡 파일로부터 태그 정보를 취득한다

소개



악곡 파일의 태그 정보(악곡명, 앨범명, 아티스트명 등)는 각종 미디어 플레이어로부터 간단하게 편집이 가능합니다.
특히 iTunes에서는 Gracenote를 사용하여 CD에서 가져오기와 동시에 태그 정보의 자동 취득까지 해 주어 매우 편리합니다.
그러나 그 중에는 취득해 온 태그 정보가 자신의 취향이 아닌 경우도 있을까 생각합니다.
예를 들면
  • 음악 이름이 CD 표기와 다릅니다
  • 아티스트 이름이 표기 흔들리고 있습니다
  • 장르가 다르다 (여기는 개인의 주관도 있다고 생각합니다만...)

  • 등등...
    이것들을 1곡씩 포치포치 편집하는 것은 번거롭기 때문에, 시스템으로부터 태그 정보를 조작할 수 있으면 좋다-라고 늘 생각하고 있었습니다. (이를 위해서는 위의 요구 사항을 충족 CDDB도 필요하지만 ...)
    이번은 システムからタグ情報を操作するタグ情報を取得する 처리에 관해서, Java言語SpringBoot 의 조합으로 JAudioTagger 라는 라이브러리를 검증한 결과를 비망록으로 남깁니다.

    pom.xml 편집


    pom.xmldependencies 에 다음 종속성을 추가합니다.
    <dependency>
      <groupId>org</groupId>
      <artifactId>jaudiotagger</artifactId>
      <version>2.0.3</version>
    </dependency>
    

    태그 정보 로드



    먼저 iTunes로 가져온 적절한 노래의 태그 정보를 확인합니다.


    그럼 실제로 Java 코드에서 태그 정보를 읽어 보겠습니다 (코드는 아래 참조).
    AudioFile audioFile = AudioFileIO.read(楽曲ファイルを読み込んだファイルオブジェクト);
    Tag tag = audioFile.getTag();
    
    System.out.println(tag.getFirst(FieldKey.TITLE));
    System.out.println(tag.getFirst(FieldKey.ARTIST));
    System.out.println(tag.getFirst(FieldKey.ALBUM_ARTIST));
    System.out.println(tag.getFirst(FieldKey.ALBUM));
    System.out.println(tag.getFirst(FieldKey.YEAR));
    System.out.println(tag.getFirst(FieldKey.COMPOSER));
    System.out.println(tag.getFirst(FieldKey.GENRE));
    

    출력 결과는 다음과 같습니다.
    誰がその鐘を鳴らすのか?
    欅坂46
    欅坂46
    誰がその鐘を鳴らすのか?
    2020
    辻村有記
    J-POP
    

    그건 그렇고, FieldKey

    FieldKey
    검색할 수 있는 태그 정보


    TITLE
    음악 이름

    TITLE_SORT
    음악 이름 (요미)

    ARTIST
    아티스트 이름

    ARTIST_SORT
    아티스트 이름(요미)

    ALBUM_ARTIST
    앨범 아티스트

    ALBUM_ARTIST_SORT
    앨범 아티스트(요미)

    ALBUM
    앨범 이름

    ALBUM_SORT
    앨범명(요미)

    YEAR
    앨범 발매년

    COMPOSER
    작곡자

    COMPOSER_SORT
    작곡자(요미)

    GENRE
    장르


    이 외에도 다양한 필드를 얻을 수있는 것 같습니다 (참고 : 매핑 테이블)

    결론



    이번은 タグ情報の取得 를 검증했습니다만, 다음은 タグ情報の書き込み 도 검증해 보고 싶습니다.
    또, Java 이외의 언어로의 태그 정보의 조작도, 시간이 있을 때에 검증해 보고 싶습니다.
    마지막이지만, 서브스크가 주류가 되고 있는 요즘, 로컬의 악곡 파일을 조작하는 것 자체가 넌센스일지도 모릅니다(웃음)

    좋은 웹페이지 즐겨찾기