code: private void readHeader(RandomAccessInputStream raf) throws IOException
  	{
  		raf.seek(HEAD_LOCATION);
  
  		byte[] head = new byte[HEAD_SIZE];
  		if (raf.read(head) != HEAD_SIZE)
  		{
  			throw new IOException("Error encountered reading id3v2 header");
  		}
  
  		majorVersion = (int) head[3];
  
  		if (majorVersion <= NEW_MAJOR_VERSION)
  		{
  			minorVersion = (int) head[4];
  			unsynchronisation = (head[5]&0x80)!=0;
  			extended = (head[5]&0x40)!=0;
  			experimental = (head[5]&0x20)!=0;
  			footer = (head[5]&0x10)!=0;
  			tagSize = Helpers.convertDWordToInt(head, 6);
  		}
  	}
docs: Extracts the information from the header.
  
  @exception FileNotFoundException if an error occurs
  @exception IOException if an error occurs