2011-11-14 6 views

답변

2

99 %의 경우 처음 10 바이트를 먼저 내리면 ID3v2 헤더가 생기고 그 중 마지막 4 바이트는 ID3v2 태그의 크기가되며 커버 아트가 포함됩니다 .

ID3v2는 크기가 "동기화 안전 정수"하지만, 태그 라이브러리는 일반 정수로 그를 디코딩하는 기능이있다 : 그래서

TagLib::ID3v2::SynchData::toUInt(const ByteVector &data) 

을 기본적으로 알고리즘은 다음과 같습니다

  • 처음 10 바이트를 붙이십시오.
  • "ID3"로 시작하는 바이트를 확인하십시오.
  • 이들 중 마지막 4 바이트를 읽고 위의 함수를 통해 ID3v를 가져옵니다 태그 라이브러리
  • 데이터의 블록
1

mp3 사양에는 실제로 노래 이름이나 앨범 아트 같은 메타 데이터가 없습니다. 그것은 id3의 일부이며 일반적으로 파일의 끝에 있습니다.

+0

거짓 커버 아트를 추출 스트림으로부터 많은 추가 데이터

  • 패스 2 태그 길이
  • 잡아. 앨범 아트를 포함 할 수있는 ID3v2 태그는 거의 보편적으로 파일의 시작 부분에 있습니다. – scotchi

  • 관련 문제