perlcdio(3pm)

NAME
perlcdio - lower-level wrapper to libcdio, the CD Input and Control library

SYNOPSIS
This is fairly straight-forward wrapper around the C library libcdio. Although this is perfectly usable on its own, it is expected that the Object-Oriented interface Device::Cdio is what most people will want to use.

There are various constants that are defined here.

DESCRIPTION
Encapsulation is done in two parts. The lower-level Perl interface is called perlcdio (this file) and is generated via SWIG.

CONSTANTS

  Driver ID's

DRIVER_UNKNOWN
    Use when you don't know what kind of driver and you don't care if it is an CD image driver or a real CD-ROM driver. See also DRIVER_DEVICE which doesn't include image drivers.

DRIVER_AIX
    Driver for IBM's AIX.

DRIVER_BSDI
    Driver for BSDI.

DRIVER_FREEBSD
    Driver for Free BSD

DRIVER_LINUX
    Driver for GNU/LINUX

DRIVER_SOLARIS
    Driver for Solaris

DRIVER_OSX
    Driver for Apple's OS X.

DRIVER_WIN32
    Driver for Microsoft Windows

DRIVER_CDRDAO
    Image Driver for cdrdao

DRIVER_BINCUE
    Image driver for CDRWin BIN/CUE

DRIVER_NRG
    Image driver for Nero NRG

DRIVER_DEVICE
    Use when you don't know what kind of driver but the driver must be a real CD-ROM driver. See also DRIVER_UNKNOWN which includes image drivers.

  Driver Return codes
May driver operations return a status code.

DRIVER_OP_SUCCESS
    Driver operation was successful

DRIVER_OP_ERROR
    Driver operation had an error of some sort

DRIVER_OP_UNSUPPORTED
    Operation is not supported for this driver. For example ejecting a CD from an image driver.

DRIVER_OP_UNINIT
    Source is not initialized for this operation.

DRIVER_OP_NOT_PERMITTED
    Operation is not permitted

DRIVER_OP_BAD_PARAMETER
    An invalid parameter was passed to the routine

DRIVER_OP_BAD_POINTER
    A pointer somehow got corrupted.

DRIVER_OP_NO_DRIVER
    No driver has been set.

  Device Capabilities
Miscellaneous

DRIVE_CAP_ERROR
DRIVE_CAP_UNKNOWN
DRIVE_CAP_MISC_CLOSE_TRAY
DRIVE_CAP_MISC_EJECT
DRIVE_CAP_MISC_LOCK
DRIVE_CAP_MISC_SELECT_SPEED
DRIVE_CAP_MISC_SELECT_DISC
DRIVE_CAP_MISC_MULTI_SESSION
DRIVE_CAP_MISC_MEDIA_CHANGED
DRIVE_CAP_MISC_RESET
DRIVE_CAP_MISC_FILE

Read Capabilities

DRIVE_CAP_READ_AUDIO
DRIVE_CAP_READ_CD_DA
DRIVE_CAP_READ_CD_G
DRIVE_CAP_READ_CD_R
DRIVE_CAP_READ_CD_RW
DRIVE_CAP_READ_DVD_R
DRIVE_CAP_READ_DVD_PR
DRIVE_CAP_READ_DVD_RAM
DRIVE_CAP_READ_DVD_ROM
DRIVE_CAP_READ_DVD_RW
DRIVE_CAP_READ_DVD_RPW
DRIVE_CAP_READ_C2_ERRS
DRIVE_CAP_READ_MODE2_FORM1
DRIVE_CAP_READ_MODE2_FORM2
DRIVE_CAP_READ_MCN
DRIVE_CAP_READ_ISRC

  Writing masks

DRIVE_CAP_WRITE_CD_R
DRIVE_CAP_WRITE_CD_RW
DRIVE_CAP_WRITE_DVD_R
DRIVE_CAP_WRITE_DVD_PR
DRIVE_CAP_WRITE_DVD_RAM
DRIVE_CAP_WRITE_DVD_RW
DRIVE_CAP_WRITE_DVD_RPW
DRIVE_CAP_WRITE_MT_RAINIER
DRIVE_CAP_WRITE_BURN_PROOF

Derived Capabilities

DRIVE_CAP_WRITE_CD
    Has some sort of CD writer ability

DRIVE_CAP_WRITE_DVD
    Has some sort of DVD writer ability

DRIVE_CAP_WRITE
    Has some sort of writer ability

  Filesystem type constants
These constants are used in getting drive capabilities:

FS_AUDIO
    audio only - not really a filesystem

FS_HIGH_SIERRA
    High-Sierra Filesystem

FS_ISO_9660
    ISO-9660 filesystem

FS_INTERACTIVE
FS_HFS
    file system used on the Macintosh system in MacOS 6 through MacOS 9 and deprecated in OSX

FS_UFS
    Generic Unix file system derived from the Berkeley fast file system.

FS_EXT2
    EXT2 was the GNU/Linux native filesystem for early kernels. Newer GNU/Linux OS's may use EXT3 which EXT2 with a journal.

FS_ISO_HFS
    both HFS & ISO-9660 filesystem

FS_ISO_9660_INTERACTIVE
    both CD-RTOS and ISO filesystem

FS_3DO
    The 3DO is, technically, a set of specifications created by the 3DO company. These specs are for making a 3DO Interactive Multiplayer which uses a CD-player. Panasonic in the early 90's was the first company to manufacture and market a 3DO player.

FS_XISO
    Microsoft X-BOX CD

FS_UDFX
FS_UDF
FS_ISO_UDF
FS_ANAL_XA
    eXtended Architecture format

FS_ANAL_MULTISESSION
    CD has multisesion

FS_ANAL_PHOTO_CD
    Is a Kodak Photo CD

FS_ANAL_HIDDEN_TRACK
    Hidden track at the beginning the CD

FS_ANAL_CDTV
FS_ANAL_BOOTABLE
    CD is bootable

FS_ANAL_VIDEOCD
    VCD 1.1

FS_ANAL_ROCKRIDGE
    Has Rock Ridge Extensions to ISO 9660

FS_ANAL_JOLIET
    Microsoft Joliet extensions to ISO 9660

FS_ANAL_SVCD
    Super VCD or Choiji Video CD

FS_ANAL_CVD
    Choiji Video CD

FS_ANAL_XISO
    XBOX CD determined by some analysis

FS_MATCH_ALL
    bitmask which can be used to specify matching any sort of CD

  Sector size constants

CD_FRAMESIZE
CD_FRAMESIZE_RAW
    Size of a Philip Red book CD-DA block. It is also the maximum CD sector size possible: 2352 bytes.

ISO_BLOCKSIZE
    Size of an ISO 9660 block. Also the size of the data portion in CD data reads: 2048 bytes.

M2F2_SECTOR_SIZE
    Mode 2 Form 2 Data size: 2328 bytes.

M2RAW_SECTOR_SIZE
    Mod1 Form 1 Data size: 2336 bytes.

  Reading Modes

READ_MODE_AUDIO
    audio mode (CD-DA) read. Blocksize is a multiple of $perlcdio::CD_FRAMESIZE_RAW (2352) bytes.

READ_MODE_M1F1
    Mode 1 Form 1 read. Blocksize is a multiple of $perlcdio::CD_FRAMESIZE (2048) bytes.

READ_MODE_M1F2
    Mode 1 Form 2 read. Blocksize is a multiple of $perlcdio::M2RAW_SECTIOR_SIZE (2336) bytes.

READ_MODE_M2F1
    Mode 2 Form 1 read. Blocksize is a multiple of $perlcdio::CD_FRAMESIZE (2048) bytes.

READ_MODE_M2F2
    Mode 2 Form 1 read. Blocksize is a multiple of (2328) bytes.

  Miscellaneous

VERSION_NUM
    libcdio version that is getting used

INVALID_LBA
    Canonical value used for an invalid LBA.

INVALID_LSN
    Canonical value used for an invalid LSN.

INVALID_TRACK
    Canonical value used for an invalid track number. (Valid range is 0 to 99.)

LEADOUT_TRACK
    Canonical value for the "leadout" or track just after the last track. So again this value is outside the range 0 to 99. The leadout track is often used to get the last LSN or LBA. The libcdio routines also allow the last actual track plus one as a synonym for the leadout track.

METHODS

  cdio_version
    perlcdio::cdio_version

Returns the libcdio version string Device::Cdio is currently linked with.

  this
This seems to be an artifact of SWIG.

SEE ALSO
<http://www.gnu.org/software/libcdio> has documentation on libcdio including the a manual and the API via doxygen.

AUTHORS
Rocky Bernstein "<rocky at cpan.org>".

COPYRIGHT
Copyright (C) 2006, 2008, 2011 Rocky Bernstein <rocky@cpan.org>

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.