The data in a computer file has a particular order and length. The specification which determines the structure of the file is called the file format and is software- and/or hardware-specific. Files, such as MIDI files, may contain data, instructions to other software programs and/or hardware devices, and/or programs. The file may also contain ECC data, network information, and other non-user overhead data. Some file formats are made publicly available to allow the implementation of plug-ins; others are proprietary to the vendor. The file format usually begins with a file header, followed by data, followed by ECC data, followed by some kind of stop bit, if the file format is variable-length. See AIFF, RIFF, AU, MPEG, MOD, RA, SFI, SMF, SMP, SND, WAV, HFS, ISO 9660, VOC.