2007년 2월 23일

아마록 스크립트 프로젝트

심각하게 좋은 음악 플레이어 아마록. 저는 아마록을 음악 플레이어로 쓰고 있습니다. DB까지 연동하여 체계적으로 음악을 관리할 수 있기 때문이죠. 게다가 음악 플레이어 자체의 디자인도 마음에 듭니다. 그러나 한국 가요의 가사와 앨범 표지를 자동으로 가져오지는 못합니다.

리눅스를 쓰면서 항상 불편한 것들은 내가 한국에서 생활하기 때문이라는 것을 느낍니다. 아마록에서도 조금 마음에 안 드는 점은 국내 가요들은 아마존에 앨범 표지가 없고, lyrc에 가사가 없는 것인데, 결국 이런 것은 사용자가 만들어 가는 것이라는 생각을 해 봤습니다. 사용자가 만들어야 편리해지는 것이죠. 제가 꼭 한국에서 생활하기 때문에 불편하다고 생각하기 보다는 그만큼 노력과 투자를 하지 않았기 때문일 것이라는 거죠.

그래서 만들어 보았습니다! lyrics_naver는 네이버 뮤직에서 가사를 받아오는 아마록용 루비 스크립트입니다. 이제 많은 수의 국내 가요들과 소수의 외국 가요들의 가사를 이 스크립트를 통하여 자동으로 내려받기 하실 수 있습니다. 지금 프로젝트 페이지로 가셔서 다운로드 받으실 수 있습니다. 현재 0.0.3-r1 버전이 릴리즈 되어 있습니다. 설치 방법은 문서 탭에 있는 매뉴얼을 꼭 읽어주세요. 이후에 몇몇 분들의 제안을 받아서 Cix Lyrics 라는 가사 사이트에서 가사를 검색하는 스크립트인 lyrics_cix도 만들었습니다. 만일 잘 안 되시는 분이 계시다면 글 남겨 주시면 감사하겠습니다.

가사만으로는 무언가 부족하다는 생각이 들어서 만든 것이 covers_melon 스크립트입니다. 이것은 멜론에서 음반 표지를 받아오는 아마록용 루비 스크립트입니다. lyrics_naver 만큼 높은 확률로 음반 표지를 받아오지는 않지만 이것을 돌려놓고 음악을 듣고 있노라면 모르는 사이에 꽤 많은 앨범 표지가 받아져 있는 것을 알 수 있습니다. 앨범 표지 검색률을 높이기 위하여 아직 손을 좀 봐야 합니다. 좀 더 보완이 되면 더욱 쓸만해 질 것이라고 생각합니다. 아마록에서 아마존 이외에 last.fm에서 앨범 표지를 받는 기능이 추가되었다고는 하지만, 외부 스크립트로 앨범 표지 받아오는 것을 만드는 방법은 찾아봐도 잘 없어서 가끔씩 플레이 중인 노래를 검사해서 표지가 없으면 노래가 있는 디렉토리에 앨범 표지를 다운로드 하도록 하였습니다. 이런 방식으로 동작하기 때문에 자동으로 앨범이 내려받아지는 느낌은 들지 않습니다만 음악을 계속해서 듣다 보면 앨범 표지가 적용되어 있는 것을 발견하실 수 있습니다.

가사 검색은 지금 거의 만족할 만한 수준이지만 표지 검색은 검색 확률이 매우 떨어지기 때문에 개선이 필요합니다. 저는 주로 앨범 이름을 "5집 - Pianissimo"와 같은 형식으로 써 놓기 때문에 스크립트가 앨범 표지 검색을 "서문탁 5집 - Pianissimo"로 하게 되는데, 멜론에서는 그냥 "서문탁 Pianissimo"로 검색해야 제대로 된 결과가 나오더군요. 이런 부분은 스크립트가 알아서 할 수 있도록 차차 고쳐가는 중입니다. 아울러 구글 이미지 검색을 이용하는 스크립트도 작성 중인데, 구글 이미지 검색은 거의 항상 검색이 되기 때문에 앨범명이 이상하게 되어 있으면 이상한 이미지가 다운로드 되어 버리는 문제점이 있습니다. 고민 중입니다.

제가 현재 UTF-8 인코딩을 쓰고 있어서 이것을 기준으로 하였습니다만, 다른 인코딩을 쓰시는 분이 계시면 다른 인코딩에서도 동작할 수 있도록 코드를 수정해 보겠습니다. 아마록 쓰시는 분들은 꼭 한 번 써 보시고 잘 되는지 확인 해 주셨으면 감사하겠습니다.

프로젝트 페이지: http://kldp.net/projects/amarok-script/
KLDP 블로그: http://kldp.org/node/78350/