dvd_udf.h
上传用户:aoeyumen
上传日期:2007-01-06
资源大小:3329k
文件大小:4k
源码类别:

DVD

开发平台:

Unix_Linux

  1. #ifndef DVD_UDF_H
  2. #define DVD_UDF_H
  3. #define DVD_UDF_VERSION 19991124
  4. /***********************************************************************************/
  5. /* The length of one Logical Block of a DVD Video                                  */
  6. /***********************************************************************************/
  7. #define DVD_VIDEO_LB_LEN 2048
  8. /***********************************************************************************/
  9. /* reads Logical Block of the disc or image                                        */
  10. /*   lb_number: disc-absolute logical block number                                 */
  11. /*   block_count: number of 2048 byte blocks to read                               */
  12. /*   data: pointer to enough allocated memory                                      */
  13. /*   returns number of read bytes on success, 0 on error                           */
  14. /***********************************************************************************/
  15. int UDFReadLB(unsigned long int lb_number, unsigned int block_count, unsigned char *data);
  16. /***********************************************************************************/
  17. /* looks for a file on the UDF disc/imagefile                                      */
  18. /*   filename: absolute pathname on the UDF filesystem, starting with '/'          */
  19. /*   returns absolute LB number, or 0 on error                                     */
  20. /***********************************************************************************/
  21. unsigned long int UDFFindFile(char *filename);
  22. /***********************************************************************************/
  23. /* Initializes the CSS process with the drive                                      */
  24. /* returns positive AGID on success, -1 on error, -2 if no CSS support in CD-ROM driver */
  25. /***********************************************************************************/
  26. int UDFCSSRequestAGID(void);
  27. /***********************************************************************************/
  28. /* Post host challenge (10 bytes) into drive                                       */
  29. /* and retreive drive response (5 bytes) for host                                  */
  30. /* returns 0 on success, -1 on error, -2 if no CSS support in CD-ROM driver        */
  31. /***********************************************************************************/
  32. int UDFCSSDriveAuth(char *data);
  33. /***********************************************************************************/
  34. /* Retreive drive challenge (10 bytes)                                             */
  35. /* returns 0 on success, -1 on error, -2 if no CSS support in CD-ROM driver        */
  36. /***********************************************************************************/
  37. int UDFCSSHostAuthChallenge(char *data);
  38. /***********************************************************************************/
  39. /* Post host response (5 bytes) into drive                                         */
  40. /* returns 0 on success, -1 on error, -2 if no CSS support in CD-ROM driver        */
  41. /***********************************************************************************/
  42. int UDFCSSHostAuthResponse(char *data);
  43. /***********************************************************************************/
  44. /* Retreive disc key (2048 byte) from drive                                        */
  45. /* returns 0 on success, -1 on error, -2 if no CSS support in CD-ROM driver        */
  46. /***********************************************************************************/
  47. int UDFCSSDiscKey(char *data);
  48. /***********************************************************************************/
  49. /* Retreive title key (5 byte) from drive                                          */
  50. /* lba: absolute number of logical block containing the title key                  */
  51. /* returns 0 on success, -1 on error, -2 if no CSS support in CD-ROM driver        */
  52. /***********************************************************************************/
  53. int UDFCSSTitleKey(unsigned long int lba, char *data);
  54. /***********************************************************************************/
  55. /* opens block device or image file                                                */
  56. /*   filename: path to the DVD ROM block device or to the image file in UDF format */
  57. /*   returns fileno() of the file on success, or -1 on error                       */
  58. /***********************************************************************************/
  59. int UDFOpenDisc(char *filename);
  60. #endif /* DVD_UDF_H */