code: public static VorbisPacket create(OggPacket packet) {
          // Special header types detection
          if (isVorbisSpecial(packet)) {
              byte type = packet.getData()[0];
              switch(type) {
              case TYPE_INFO:
                  return new VorbisInfo(packet);
              case TYPE_COMMENTS:
                  return new VorbisComments(packet);
              case TYPE_SETUP:
                  return new VorbisSetup(packet);
              }
          }
  
          return new VorbisAudioData(packet);
      }
docs: Creates the appropriate {@link VorbisPacket}
  instance based on the type.