Beispiel #1
0
  /** Initializes the state of the module for parsing. */
  protected void initParse() {
    super.initParse();
    _propList = new LinkedList();
    _notes = new LinkedList();
    _labels = new LinkedList();
    _labeledText = new LinkedList();
    _samples = new LinkedList();
    firstSampleOffsetMarked = false;
    numSamples = 0;

    _metadata = new Property("WAVEMetadata", PropertyType.PROPERTY, PropertyArity.LIST, _propList);
    _aesMetadata = new AESAudioMetadata();
    _aesMetadata.setByteOrder(AESAudioMetadata.LITTLE_ENDIAN);
    _aesMetadata.setAnalogDigitalFlag("FILE_DIGITAL");
    _aesMetadata.setFormat("WAVE");
    _aesMetadata.setUse("OTHER", "JHOVE_validation");
    _aesMetadata.setDirection("NONE");

    _propList.add(new Property("AESAudioMetadata", PropertyType.AESAUDIOMETADATA, _aesMetadata));

    // Most chunk types are allowed to occur only once,
    // and a few must occur exactly once.
    // Clear flags for whether they have been seen.
    formatChunkSeen = false;
    dataChunkSeen = false;
    instrumentChunkSeen = false;
    cartChunkSeen = false;
    mpegChunkSeen = false;
    broadcastExtChunkSeen = false;
    peakChunkSeen = false;
    linkChunkSeen = false;
    cueChunkSeen = false;

    // Initialize profile flags
    flagPCMWaveFormat = false;
    flagWaveFormatEx = false;
    flagWaveFormatExtensible = false;
    flagBroadcastWave = false;
  }