code: public void decode() throws IOException {
          readMetadata();
          try {
              while (true) {
                  //switch (state) {
                  //case DECODER_SEARCH_FOR_METADATA :
                  //    readStreamSync();
                  //    break;
                  //case DECODER_READ_METADATA :
                  //    Metadata metadata = readNextMetadata();
                  //    if (metadata == null) break;
                  //    break;
                  //case DECODER_SEARCH_FOR_FRAME_SYNC :
                  findFrameSync();
                  //    break;
                  //case DECODER_READ_FRAME :
                  try {
                      readFrame();
                      frameListeners.processFrame(frame);
                      callPCMProcessors(frame);
                  } catch (FrameDecodeException e) {
                      badFrames++;
                  }
                  //    break;
                  //case DECODER_END_OF_STREAM :
                  //case DECODER_ABORTED :
                  //    return;
                  //default :
                  //    throw new IOException("Unknown state: " + state);
                  //}
              }
          } catch (EOFException e) {
              eof = true;
          }
      }
docs: Decode the FLAC file.
  @throws IOException  On read error