⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cdio.h

📁 linux下的MPEG1
💻 H
📖 第 1 页 / 共 3 页
字号:
    on error.  */  track_t cdio_get_first_track_num(const CdIo_t *p_cdio);    /*!     Get the CD-ROM hardware info via a SCSI MMC INQUIRY command.    False is returned if we had an error getting the information.  */  bool cdio_get_hwinfo ( const CdIo_t *p_cdio, 			 /* out*/ cdio_hwinfo_t *p_hw_info );  /*!      Return the Joliet level recognized for p_cdio.  */  uint8_t cdio_get_joliet_level(const CdIo_t *p_cdio);  /*!    Get the media catalog number (MCN) from the CD.    @return the media catalog number r NULL if there is none or we    don't have the ability to get it.    Note: string is malloc'd so caller has to free() the returned    string when done with it.  */  char * cdio_get_mcn (const CdIo_t *p_cdio);  /*!    Get the number of tracks on the CD.    @return the number of tracks, or CDIO_INVALID_TRACK if there is    an error.  */  track_t cdio_get_num_tracks (const CdIo_t *p_cdio);    /*!      Get the format (audio, mode2, mode1) of track.   */  track_format_t cdio_get_track_format(const CdIo_t *p_cdio, track_t i_track);    /*!    Return true if we have XA data (green, mode2 form1) or    XA data (green, mode2 form2). That is track begins:    sync - header - subheader    12     4      -  8        FIXME: there's gotta be a better design for this and get_track_format?  */  bool cdio_get_track_green(const CdIo_t *p_cdio, track_t i_track);      /*!      Get the starting LBA for track number    i_track in p_cdio.  Track numbers usually start at something     greater than 0, usually 1.    The "leadout" track is specified either by    using i_track CDIO_CDROM_LEADOUT_TRACK or the total tracks+1.    @param p_cdio object to get information from    @param i_track  the track number we want the LSN for    @return the starting LBA or CDIO_INVALID_LBA on error.  */  lba_t cdio_get_track_lba(const CdIo_t *p_cdio, track_t i_track);    /*!      Return the starting MSF (minutes/secs/frames) for track number    i_track in p_cdio.  Track numbers usually start at something     greater than 0, usually 1.    The "leadout" track is specified either by    using i_track CDIO_CDROM_LEADOUT_TRACK or the total tracks+1.    @param p_cdio object to get information from    @param i_track  the track number we want the LSN for    @return the starting LSN or CDIO_INVALID_LSN on error.  */  lsn_t cdio_get_track_lsn(const CdIo_t *p_cdio, track_t i_track);    /*!      Return the starting MSF (minutes/secs/frames) for track number    i_track in p_cdio.  Track numbers usually start at something     greater than 0, usually 1.    The "leadout" track is specified either by    using i_track CDIO_CDROM_LEADOUT_TRACK or the total tracks+1.        @return true if things worked or false if there is no track entry.  */  bool cdio_get_track_msf(const CdIo_t *p_cdio, track_t i_track, 			  /*out*/ msf_t *msf);    /*!      Get the number of sectors between this track an the next.  This    includes any pregap sectors before the start of the next track.    Track numbers usually start at something     greater than 0, usually 1.    @return the number of sectors or 0 if there is an error.  */  unsigned int cdio_get_track_sec_count(const CdIo_t *p_cdio, track_t i_track);  /*!    Reposition read offset    Similar to (if not the same as) libc's lseek()    @param p_cdio object to get information from    @param offset amount to seek    @param whence  like corresponding parameter in libc's lseek, e.g.                    SEEK_SET or SEEK_END.    @return (off_t) -1 on error.   */  off_t cdio_lseek(const CdIo_t *p_cdio, off_t offset, int whence);      /*!    Reads into buf the next size bytes.    Similar to (if not the same as) libc's read()    @return (ssize_t) -1 on error.   */  ssize_t cdio_read(const CdIo_t *p_cdio, void *buf, size_t size);      /*!    Read an audio sector    @param p_cdio object to read from    @param buf place to read data into    @param lsn sector to read    @return 0 if no error, nonzero otherwise.  */  int cdio_read_audio_sector (const CdIo_t *p_cdio, void *buf, lsn_t lsn);  /*!    Reads audio sectors    @param p_cdio object to read from    @param buf place to read data into    @param lsn sector to read    @param i_sectors number of sectors to read    @return 0 if no error, nonzero otherwise.  */  int cdio_read_audio_sectors (const CdIo_t *p_cdio, void *buf, lsn_t lsn,			       unsigned int i_sectors);  /*!    Reads a mode1 sector    @param p_cdio object to read from    @param buf place to read data into    @param lsn sector to read    @param b_form2 true for reading mode1 form2 sectors or false for     mode1 form1 sectors.    @return 0 if no error, nonzero otherwise.  */  int cdio_read_mode1_sector (const CdIo_t *p_cdio, void *buf, lsn_t lsn, 			      bool b_form2);    /*!    Reads mode1 sectors    @param p_cdio object to read from    @param buf place to read data into    @param lsn sector to read    @param b_form2 true for reading mode1 form2 sectors or false for     mode1 form1 sectors.    @param i_sectors number of sectors to read    @return 0 if no error, nonzero otherwise.  */  int cdio_read_mode1_sectors (const CdIo_t *p_cdio, void *buf, lsn_t lsn, 			       bool b_form2, unsigned int i_sectors);    /*!    Reads a mode1 sector    @param p_cdio object to read from    @param buf place to read data into    @param lsn sector to read    @param b_form2 true for reading mode1 form2 sectors or false for     mode1 form1 sectors.    @return 0 if no error, nonzero otherwise.  */  int cdio_read_mode2_sector (const CdIo_t *p_cdio, void *buf, lsn_t lsn, 			      bool b_form2);    /*!    Reads mode2 sectors    @param p_cdio object to read from    @param buf place to read data into    @param lsn sector to read    @param b_form2 true for reading mode1 form2 sectors or false for     mode1 form1 sectors.    @param i_sectors number of sectors to read    @return 0 if no error, nonzero otherwise.  */  int cdio_read_mode2_sectors (const CdIo_t *p_cdio, void *buf, lsn_t lsn, 			       bool b_form2, unsigned int i_sectors);    /*!    Set the arg "key" with "value" in "obj".    @param p_cdio the CD object to set    @param key the key to set    @param value the value to assocaiate with key    @return 0 if no error was found, and nonzero otherwise.  */  int cdio_set_arg (CdIo_t *p_cdio, const char key[], const char value[]);    /*!    Get the size of the CD in logical block address (LBA) units.    @param p_cdio the CD object queried    @return the size  */  uint32_t cdio_stat_size (const CdIo_t *p_cdio);    /*!    Initialize CD Reading and control routines. Should be called first.  */  bool cdio_init(void);    /* True if xxx driver is available. where xxx=linux, solaris, nrg, ...   */  /*! True if BSDI driver is available. */  bool cdio_have_bsdi    (void);  /*! True if FreeBSD driver is available. */  bool cdio_have_freebsd (void);  /*! True if GNU/Linux driver is available. */  bool cdio_have_linux   (void);  /*! True if Sun Solaris driver is available. */  bool cdio_have_solaris (void);  /*! True if Apple OSX driver is available. */  bool cdio_have_osx     (void);  /*! True if Microsoft Windows driver is available. */  bool cdio_have_win32   (void);  /*! True if Nero driver is available. */  bool cdio_have_nrg     (void);  /*! True if BIN/CUE driver is available. */  bool cdio_have_bincue  (void);  /*! True if cdrdao CDRDAO driver is available. */  bool cdio_have_cdrdao  (void);  /*! Like cdio_have_xxx but uses an enumeration instead. */  bool cdio_have_driver (driver_id_t driver_id);    /*!     Get a string decribing driver_id.     @param driver_id the driver you want the description for    @return a sring of driver description  */  const char *cdio_driver_describe (driver_id_t driver_id);    /*! Sets up to read from place specified by source_name and     driver_id. This or cdio_open_* should be called before using any     other routine, except cdio_init. This will call cdio_init, if     that hasn't been done previously.  to call one of the specific     cdio_open_xxx routines.     @return the cdio object or NULL on error or no device.  */  CdIo_t * cdio_open (const char *source_name, driver_id_t driver_id);  /*! Sets up to read from place specified by source_name, driver_id     and access mode. This or cdio_open should be called before using     any other routine, except cdio_init. This will call cdio_init, if     that hasn't been done previously.  to call one of the specific     cdio_open_xxx routines.     @return the cdio object or NULL on error or no device.  */  CdIo_t * cdio_open_am (const char *psz_source_name, 			 driver_id_t driver_id, const char *psz_access_mode);  /*! Set up BIN/CUE CD disk-image for reading. Source is the .bin or       .cue file     @return the cdio object or NULL on error or no device.   */  CdIo_t * cdio_open_bincue (const char *psz_cue_name);    /*! Set up BIN/CUE CD disk-image for reading. Source is the .bin or       .cue file     @return the cdio object or NULL on error or no device..   */  CdIo_t * cdio_open_am_bincue (const char *psz_cue_name, 			      const char *psz_access_mode);    /*! Set up cdrdao CD disk-image for reading. Source is the .toc file     @return the cdio object or NULL on error or no device.   */  CdIo_t * cdio_open_cdrdao (const char *psz_toc_name);    /*! Set up cdrdao CD disk-image for reading. Source is the .toc file     @return the cdio object or NULL on error or no device..   */  CdIo_t * cdio_open_am_cdrdao (const char *psz_toc_name, 				const char *psz_access_mode);    /*! Return a string containing the default CUE file that would      be used when none is specified.     @return the cdio object or NULL on error or no device.   */  char * cdio_get_default_device_bincue(void);  char **cdio_get_devices_bincue(void);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -