public static SkeletonPacket create(OggPacket packet) {
       // Special header types detection
       if(isSkeletonSpecial(packet)) {
           byte type = packet.getData()[3];
           switch(type) {
           case (byte)'h': // fishead
               return new SkeletonFishead(packet);
           case (byte)'b': // fisbone
               return new SkeletonFisbone(packet);
           }
       }

       // Only Skeleton 4+ has key frames
       // Skeleton 3 just has the two fis* packets
       return new SkeletonKeyFramePacket(packet);
   }