libcdio: History

1 
1 1 History
1 *********
1 
1 As a result of the repressive Digital Millennium Copyright Act, DMCA, I
1 became aware of Video CD's (VCD's).  Video CD's are not subject to the
1 DMCA and therefore enjoy the protection afforded by copyright but no
1 more.  But in order for VCD's to be competitive with DVD's, good tools -
1 including GPL tools - are needed for authoring and playing them.  And so
1 through VCD's I became aware of the excellent Video CD tools by Herbert
1 Valerio Riedel which form the 'vcdimager' package.
1 
1 Although vcdimager is great for authoring, examining and extracting
1 parts of a Video CD, it is not a VCD player.  And when I looked at the
1 state of Video CD handling in existing VCD players: 'xine', 'MPlayer',
1 and 'vlc', I was a bit disappointed.  None handled playback control,
1 menu selections, or playing still frames and segments from track 1.
1 
1 Version 0.7.12 of vcdimager was very impressive, however it lacked
1 exportable libraries that could be used in other projects.  So with the
1 blessing and encouragement of Herbert Valerio Riedel, I took to extract
1 and create libraries from this code base.  The result was two libraries:
1 one to extract information from a VCD which I called libvcdinfo, and
1 another to do the reading and control of a VCD. Well, actually, at this
1 point I should say that a Video CD is really just Video put on a
1 existing well-established Compact Disc or CD format.  So the library for
1 this is called 'libcdio' rather than 'libvcdio'.
1 
1 While on the topic of the name 'libcdio', I should also explain that the
1 library really doesn't handle writing or output (the final "o" in the
1 name).  However it was felt that if I put 'libcdi' that might be
1 confused with a particular CD format called CD-I.
1 
1 Later on, the ISO-9660 filesystem handling component from 'vcdimager'
1 was extracted, expanded and made a separate library.  Next the ability
1 to add MMC commands was added, and then CD paranoia support.  And from
1 there, the rest is history.
1