2011-03-12 4 views
4

V2 ID3 태그의 형식을 이해하는 데 약간의 어려움이 있습니다. 간단히 MP3 파일의 'Genre'ID3 태그를 가져오고 싶지만 id3v2 유틸리티가 필요한 것보다 많은 정보를 반환하며이 데이터가 나타내는 내용을 이해할 수 없습니다.id3v2를 사용하여 MP3 ID3 (V2) 태그 가져 오기

TCON (Content type): Jazz (8)

정말 난 그냥가 안전 있는지 알고 싶어 :의 라인에 뭔가를 반환

id3v2 -l "$FILE" | grep -i "content type" 

:

예를 들어, 나는 다음과 같은 배쉬 코드를 사용하고 있습니다 나는 이것이 항상 형식 일 것이라고 가정하고 다음과 같이하는 것이 안전합니까? :

id3v2 -l "$FILE" | grep -i "content type" | sed "s/^.*: //" | sed "s/ (.*$//" 

(결과는 "재즈"입니다.)

ID3 'Genre'태그를 얻는 가장 좋은 방법을 찾으려고합니다. 어떤 제안에 대해서도 많은 감사드립니다.

답변

3

나는 TCON이 접두어로 붙어 있다고 가정하는 것이 안전하다고 생각한다. 그래서 나는 이것을 찾아 볼 것이다. (i18n도 안전 할 것이다.)

id3v2 -l "$FILE" | sed -n '/^TCON/s/^.*: //p' | sed 's/ (.*//' 

/usr/share/doc/id3lib-3.8.3/doc/id3v2.3.0.txt

TCON

에서


을 (그렙를 실행할 필요가 없습니다)

이 이전에 1 바이트의 숫자 값으로 저장되었던 '콘텐츠 유형'은 이제 nume입니다. 리듬 문자열. ID3v1.1이 일 때 또는 유형 중 하나를 사용할 수도 있고 카테고리 목록이 정확하지 않고 유지할 수 없기 때문에 정확한 과 최신 카테고리로 을 정의하십시오. 쐬 장르에

참조가 , 첫번째 바이트로서, 입력에 의해 제조 될 수있다 "(이하" 장르리스트 (부록 A.의 뒤에 숫자)와 함께 종료 ")"캐릭터. 선택적으로 뒤에 오는 정제품이 뒤에 오는 입니다. "(21)"또는 "(4) Eurodisco". 여러 개의 참조 번호가 동일한 프레임에 만들어 질 수 있습니다 (예 :). "(51) (39)". 세련미가 으로 시작해야 할 경우 "("문자로 시작해야합니다. 은 "(("(예 : "( 은 장르를 알아낼 수 있음)"또는 "( 생각) "."다음 새로운 콘텐츠 유형의 ID3v2 정의되고 는 과 동일한 방법으로 예 numerig 콘텐츠 유형을 구현 "(RX)를.

RX Remix 
CR Cover 
관련 문제