home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / sys / next / programm / 7242 < prev    next >
Encoding:
Internet Message Format  |  1992-11-15  |  5.3 KB

  1. Path: sparky!uunet!dtix!darwin.sura.net!sgiblab!sgigate!sgi!fido!zola!zuni!anchor!olson
  2. From: olson@anchor.esd.sgi.com (Dave Olson)
  3. Newsgroups: comp.sys.next.programmer
  4. Subject: Re: (failing to) read Audio Data from CDROM [not failing]
  5. Message-ID: <sdt44e0@zuni.esd.sgi.com>
  6. Date: 16 Nov 92 04:24:40 GMT
  7. References: <1992Nov3.081243.26623@u.washington.edu> <BxKDBu.AA@sounds.wa.com>
  8. Sender: news@zuni.esd.sgi.com (Net News)
  9. Organization: Silicon Graphics, Inc.  Mountain View, CA
  10. Lines: 82
  11.  
  12. In <BxKDBu.AA@sounds.wa.com> BrianW@SoundS.WA.com (Brian Willoughby) writes:
  13.  
  14. | Sean T. Lamont writes
  15. | | In article <1992Nov2.172257.14250@anarch.do.open.de> erik@amg.de writes:
  16. | | >constantly failed working when I inserted audio CDs. However, it works fine  
  17. | | >with data CDs although the "music" isn't too enjoyable...
  18. | | 
  19. | | There is a fundamental problem with your entire strategy.  CD disks are
  20. | | built with an encoding written onto the disk which specifies whether you
  21. | | can read data off the disk in digital format or not.  on CD-rom disks are
  22. | | obviously set to "true", with audio CDs having the bit set to "false"
  23. | | 
  24. | | The implementor of the drive, of course, is free to ignore this
  25. | | specification.  However, the only one I've heard of that does is the one
  26. | | shipped by SGI.
  27.  
  28. We eval'ed drives from both Sony and Toshiba.  We went with Toshiba
  29. for various reasons, but both offered the same interface.  Both said they
  30. would eventually sell this feature on future drives, and I'm pretty sure
  31. both have announced it on their new dual speed drives (others may have
  32. also).  The new dual speed drive is the one that Apple is using.  I
  33. *assume* (but haven't yet seen the docs to know for sure) that they
  34. are keeping the same scsi cmd and data interface that they developed
  35. with us in the new drives.
  36.  
  37. | An audio Block on a CD contains 2352 bytes of audio data.  The exact same block  
  38. | only provides 2048 bytes of computer data on a CD-ROM; the additional 304 bytes  
  39. | are "wasted" as sync, header and aux data.  So, when you read a "block" from an  
  40. Not to mention a *lot* of bytes dedicated to ECC.  You can't just use
  41. interpolation on data the way you can on audio, at least, not if you
  42. want to avoid very unhappy customers!
  43.  
  44. | audio CD, you are missing 13% of the data.  The manufacturers aren't really  
  45. | going out of their way to prevent reading of audio data, they're actually just  
  46. | using off-the-shelf chips which either interpret CD audio or CD-ROM data.  Most  
  47. | manufacturers connect the output of the CD audio chip to the audio circuitry  
  48. | and connect the output of CD-ROM chip to the computer interface.  SGI (or the  
  49. | maker of their drive) has taken special measures to make the CD audio data  
  50. | available on the computer interface as well.  They probably have some  
  51. | proprietary way of sending the entire 2352 bytes instead of only 2048.
  52.  
  53. Not proprietary (at any time), and available on other drives now.  There
  54. were some chip changes required (unlike the situation on DAT) and a fair
  55. amount of new firmware.  The issue was that some of the data was split
  56. off by the chips fairly early on, and there was no sync info to bring
  57. it back into the correct data stream before delivering it over the SCSI
  58. bus.  For similar reasons, one *must* be able to sustain the data rate
  59. over the scsi bus (with ondrive RAM buffer allowing some speed matching),
  60. since there is no way to do precise positioning (+/- aprox 10 ms, if
  61. I remember right) with audio data, and if the drive had to reposition
  62. during a track you would drop data, or even get the same data twice.
  63.  
  64. | There are 6 stereo 16-bit samples (24 bytes) in a Frame on a CD.  Each Frame  
  65. | has an extra byte for subcode.  It takes 98 Frames to make a Block (which has  
  66. | the time in seconds encoded into the 98 subcode bytes).  You can't really seek  
  67. | on a CD except to a block address because you are technically seeking to a  
  68. | specific second (there are 75 Blocks per second).  CD audio was designed first,  
  69. | and then CD-ROM came around as an afterthought.  Since there were already Block  
  70. | limitations in the audio design, I guess they thought it would make sense to  
  71. | throw away 288 auxiliary bytes with every block to keep things aligned.
  72.  
  73.  
  74. | There are subcode bits in each Block which indicate whether the data is audio  
  75. | or computer and whether it is copy protected or not.  But, you can see that it  
  76. | doesn't do much good to enable a computer to read audio blocks unless all 2352  
  77. | bytes are sent across the interface instead of just 2048.
  78.  
  79. The most amazing thing to those of us at SGI involved with the project
  80. was that it seems that nobody else had ever (seriously) asked the CD-ROM
  81. drive vendors for this feature before (there was a very brief interest
  82. from IBM at about the same time we decided to do it, but they dropped it).
  83. After we did it, it seems that there were a lot of people who wanted it
  84. all along, but somehow that never seems to have gotten back to the
  85. corporate headquarters of the drive vendors ;)
  86.  
  87. The interface is pretty straight forward, it is just a few modeselects,
  88. and then agreeing on the format in which data comes back over the SCSI
  89. bus.
  90. --
  91. Let no one tell me that silence gives consent,  |   Dave Olson
  92. because whoever is silent dissents.             |   Silicon Graphics, Inc.
  93.     Maria Isabel Barreno                        |   olson@sgi.com
  94.