! ! @(#)device.cfg 6.88 04/01/14 ! ! Device-specific configuration file ! ! xmcd - Motif(R) CD Audio Player/Ripper ! cda - Command-line CD Audio Player/Ripper ! libdi - CD Audio Device Interface Library ! ! Copyright (C) 1993-2004 Ti Kan ! E-mail: xmcd@amb.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 2 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, write to the Free Software ! Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ! ! THIS IS THE DEVICE CONFIGURATION TEMPLATE FILE. DO NOT MODIFY! ! ! Install a copy of this file as XMCDLIB/config/DEVNAME, and edit to suit ! the capability of the CD drive. XMCDLIB is the XMcd.libdir resource ! (or XMCD_LIBDIR env variable) and DEVNAME is the device node path ! basename. ! ! These are the start-up default parameters for xmcd and cda. ! Users can also override some of these parameters by specifying them ! in an optional $HOME/.xmcdcfg/DEVNAME file. Parameters that are ! labeled as "No-override" are privileged and cannot be overridden ! by the user in their private configuration files. ! ! The parameters in this file apply to a specific CD drive. ! ! cfgver=1 Do not remove this line. ! ! The logical drive number that you want this device to map to. This ! number is displayed on the main window title bar. ! (No-override) ! logicalDriveNumber: 0 ! Default device list for the CD drive interface. For a single-CD ! player, only one device should be listed. For a multi-CD changer, ! there may be one or more devices in this list, depending upon the ! control interface. Multiple devices are separated by a semi-colon ';' ! character. ! ! Examples: ! /dev/cdrom0 ! /dev/rcdrom/c0b0t0d0;/dev/rcdrom/c0b0t0d1;/dev/rcdrom/c0b0t0d2 ! deviceList: /dev/rcd0 ! Default start-up playback mode. ! ! The supported modes are: ! 0 Standard playback ! 1 CDDA playback ! 2 CDDA save-to-file ! 4 CDDA pipe-to-program ! ! Multiple CDDA modes can be enabled at the same time. Just add the ! mode numbers. For example, to enable both CDDA playback and CDDA ! save-to-file, specify mode 3. This parameter is the start-up default. ! The mode can be changed via the user-interface. ! ! Note: CDDA modes are only supported on some OS platforms and with ! certain CD drives. ! playMode: 0 ! Device Interface Method: Configure xmcd/cda to control the CD drive ! via one of several methods. ! ! Note: ! Changing this parameter is useful only if your xmcd/cda binary is ! compiled to support the selected method. ! ! The supported methods are: ! 0 SCSI pass-through method (Use this with SCSI drives) ! 1 SunOS/Solaris/Linux/QNX ioctl method (For non-SCSI drives) ! 2 FreeBSD/OpenBSD/NetBSD ioctl method (For non-SCSI drives) ! 3 IBM AIX IDE ioctl method (For IDE/ATAPI drives) ! ! (No-override) ! deviceInterfaceMethod: 0 ! CDDA Method: Configure the method which xmcd/cda would employ to ! play audio using direct CDDA. ! ! The supported methods are: ! 0 None (Don't do CDDA) ! 1 SYSV IPC method (Use System V IPC) ! 2 POSIX threads method (Use POSIX threads) ! ! Note: POSIX threads method is currently implemented only for some ! platforms. See the RELNOTES file for details. ! ! (No-override) ! cddaMethod: 0 ! CDDA read method: In CDDA mode, this selects which method is used to ! perform CDDA reads from the CD drive. ! ! The supported methods are: ! 0 None (Don't read CDDA) ! 1 SCSI pass-through method (Use this with SCSI drives) ! 2 Solaris ioctl method (For Sun Solaris) ! 3 Linux ioctl method (For Linux) ! 4 FreeBSD ioctl method (For FreeBSD/OpenBSD/NetBSD) ! 5 AIX ATAPI/IDE ioctl method (For IBM AIX) ! ! Note: ! a) Use the SCSI pass-through method for SCSI drives on all platforms ! for best results. This is true also for ATAPI/IDE drives under ! SCSI emulation. ! b) The cddaReadMethod, if not set to 0, should be set to be consistent ! with the deviceInterfaceMethod parameter. ! ! (No-override) ! cddaReadMethod: 0 ! CDDA write method: In CDDA mode, this select which method is used to ! output the digital audio stream to the audio device. ! ! The supported methods are: ! 0 None (Don't output CDDA) ! 1 OSS sound driver method (For Linux & OSS sound drivers) ! 2 Solaris audio driver method (For Solaris audio driver) ! 3 IRIX audio driver method (For IRIX audio driver) ! 4 HP-UX audio driver method (For HP-UX audio driver) ! 5 AIX audio driver method (For AIX Ultimedia audio driver) ! 6 ALSA audio driver method (For Linux with ALSA sound driver) ! 7 OSF1 MMS audio driver method (For Tru64 UNIX and OpenVMS) ! 8 File & pipe only method (File and pipe only: No audio playback) ! ! (No-override) ! cddaWriteMethod: 0 ! If cddaReadMethod is set to 1, this parameter selects whether a mode ! select SCSI command should be sent to the drive to enable CDDA ! mode prior to sending the read commands. Setting this parameter to ! True will set the sector size of the device to CDDA mode (2352 bytes). ! This parameter is used only when in a CDDA mode. ! ! (No-override) ! cddaScsiModeSelect: True ! If cddaReadMethod is set to 1, this parameter selects which SCSI ! command is used to read the CDDA. Many drives support only one of ! these methods, many older drives do not support CDDA at all. ! This parameter is used only when in a CDDA mode. ! ! Valid values are: ! 0 MMC standard Read CD (12) command ! 1 SCSI standard Read (10) command ! 2 NEC vendor-unique Read CD-DA (10) command ! 3 Sony vendor-unique Read CD-DA (12) command ! ! (No-override) ! cddaScsiReadCommand: 0 ! If cddaScsiModeSelect is set to True, this parameter specifies the ! device density code to set via the Mode Select command. Some drives ! require this in order to read the CDDA data in the correct format. ! This parameter is used only when in a CDDA mode. ! ! Common density codes used are 0 or 130 (0x82). Only the decimal ! notation should be used here. 130 is usually needed on Toshiba SCSI ! drives. ! ! (No-override) ! cddaScsiDensity: 0 ! The default CDDA data read chunk size expressed in blocks. ! One second of playback is equal to 75 blocks. Each block ! equals 2352 bytes of data. The minimum limit of this parameter ! is 1 block and the maximum is 225 blocks. This parameter is ! used only when in a CDDA mode. ! ! Note: The actual maximum limit is usually imposed by the platform's ! kernel CD-ROM and/or host bus adapter driver. Increasing the chunk ! size may improve CDDA read performance (up to the limit imposed by ! the platform). For CDDA save-to-file mode with individual files for ! each track, a larger chunk size will cause an increase of a shift error ! in the time position where one file ends and another starts. This is ! because the current xmcd implementation will switch to a new file ! only at a chunk boundary, which doesn't always coincide with the actual ! track boundary. The shift is at worst 0.05 second when this parameter ! is set to 4. ! ! (No-override) ! cddaReadChunkBlocks: 8 ! This parameter indicates whether the CDDA data as read from the ! drive is in big-endian byte order. If CDDA playback produces something ! that sounds like white noise, try changing the value of this parameter. ! This parameter is used only when in a CDDA mode. ! ! (No-override) ! cddaDataBigEndian: False ! Whether to do overlapped CDDA reads for jitter correction. Jitter ! correction causes some sectors to be read twice. It is used ! to eliminate clicks and pops in the sound. If you have very fast ! hardware or an error-free drive, you can gain performance ! in CDDA save-to-file mode by setting this parameter to False. ! This parameter is the start-up default, and can be changed via ! the user-interface. It is used only when in a CDDA mode. ! cddaJitterCorrection: False ! CD drive vendor code. If your CD drive is not SCSI-2 compliant, ! this is used to specify that xmcd should issue vendor-unique commands ! rather than SCSI-2 commands. ! ! Note: ! a) This parameter is only used for SCSI drives (i.e., ! the deviceInterfaceMethod parameter is set to 0). ! b) Changing this parameter is useful only if your xmcd/cda binary is ! compiled to provide vendor-unique commands support. ! c) The existence of a vendor-unique module does not imply that all ! models of CD drive made by that manufacturer must use the vendor- ! unique mode. For example, the Toshiba XM-3301/3401 and Sony ! CDU-541/561 are SCSI-2 compliant and should use vendor code 0. ! ! The supported codes are: ! 0 SCSI-2 standard ! 1 Chinon vendor-unique ! 2 Hitachi vendor-unique ! 3 NEC vendor-unique ! 4 Pioneer vendor-unique ! 5 Sony vendor-unique ! 6 Toshiba vendor-unique ! 7 Panasonic/Matsushita vendor-unique ! ! (No-override) ! driveVendorCode: 0 ! Whether xmcd/cda should check the SCSI version of the drive against ! the configured SCSI version. If this is set to True and a mismatch ! occurs a warning message will be displayed. This is used only when ! deviceInterfaceMethod is 0 and driveVendorCode is 0. ! ! (No-override) ! scsiVersionCheck: False ! The number of discs a multi-CD changer drive supports. For a ! single-CD drive, this parameter should be set to 1. ! (no-override) ! numDiscs: 1 ! The method to use when changing discs in a multi-CD changer. ! ! The supported methods are: ! 0 Single-CD drive: no changer ! 1 SCSI LUN addressing method ! 2 SCSI medium changer method ! 3 OS-ioctl method (for non-SCSI drives) ! ! (no-override) ! mediumChangeMethod: 0 ! The base SCSI audio volume value that corresponds to the minimum ! setting of the volume control slider. This is used to adjust the ! range of audio volume control. The legal range is 0 to 255. ! This parameter is used only if volumeControlSupport is True. ! (No-override) ! scsiAudioVolumeBase: 0 ! For any given play audio command, the minimum number of audio blocks ! that must be played. Some CD drives have a minimum limit. ! Each block represents 1/75 second of audio. ! (No-override) ! minimumPlayBlocks: 25 ! If the CD drive is SCSI-2 compliant, this parameter specifies ! whether it supports the Play Audio (10) SCSI command. This command ! is used only as a fallback to the Play Audio (12) and Play Audio MSF ! commands in case they fail. ! (No-override) ! playAudio10Support: True ! If the CD drive is SCSI-2 compliant, this parameter specifies ! whether it supports the Play Audio (12) SCSI command. The drive ! must support one of Play Audio (12) or Play Audio MSF in order to ! be useful with xmcd. ! (No-override) ! playAudio12Support: False ! If the CD drive is SCSI-2 compliant, this parameter specifies ! Whether it supports the Play Audio MSF SCSI command. The drive ! must support one of Play Audio (12) or Play Audio MSF in order ! to be useful with xmcd. ! (No-override) ! playAudioMSFSupport: True ! If the CD drive is SCSI-2 compliant, this parameter specifies ! Whether it supports the Play Audio Track/Index SCSI command. This ! command must be supported in order to use the Prev Index and Next ! Index buttons. ! (No-override) ! playAudioTISupport: True ! Whether the CD drive supports the disc load feature of the ! Start/Stop Unit SCSI command. ! (No-override) ! loadSupport: False ! Whether the CD drive supports the disc eject feature of the ! Start/Stop Unit SCSI command. If this item is False, it will also ! automatically force the caddyLockSupport parameter below to False. ! (No-override) ! ejectSupport: True ! Whether the block descriptor should be disabled in the ! mode sense/mode select command data. You may need to change this ! setting to get the volume control slider to work on some SCSI-2 ! CD drives. ! (No-override) ! modeSenseSetDBD: False ! If set to True, the 10-byte version of the SCSI Mode Sense and ! Mode Select commands will be used. Otherwise, the 6-byte version ! will be used. ! (No-override) ! modeSenseUse10Byte: False ! Whether the CD drive supports setting the audio playback volume ! in software. For SCSI-2 drives, this means the audio page (0xE) of ! the Mode Select SCSI command. For SCSI-1 drives, this is vendor- ! unique. ! (No-override) ! volumeControlSupport: True ! Whether the CD drive supports setting the audio playback volume ! of the stereo channels independently. This support is required ! for the Balance Control slider to function. The volumeControlSupport ! parameter above must be True for this to have any effect. ! (No-override) ! balanceControlSupport: False ! Whether the CD drive supports setting output channel routing. ! This support is required for the channel routing selector to function. ! (No-override) ! channelRouteSupport: False ! If the CD drive is SCSI-2 compliant, this parameter specifies ! whether it supports the Pause/Resume SCSI command. ! (No-override) ! pauseResumeSupport: True ! While in paused state, if the CD drive requires a resume command ! to be sent before accepting a new play audio command, set this to True. ! This parameter is meaningful only if pauseResumeSupport is True. ! (No-override) ! strictPauseResume: False ! While playing audio, if the CD drive requires a pause command to be ! sent before accepting a new play audio command, set this to True. ! This parameter is meaningful only if pauseResumeSupport is True. ! (No-override) ! playPausePlay: False ! Whether the CD drive supports the Prevent/Allow Medium Removal ! SCSI command. If this item is False, it will also automatically ! force the caddyLock parameter to False. ! (No-override) ! caddyLockSupport: True ! Whether the CD drive supports data format code 1 (CD-ROM Current ! Position Data) of the Read Subchannel SCSI command. If this item is ! False, data format code 0 (Sub-Q Channel Data) will be used instead. ! (No-override) ! curposFormat: False ! Whether the CD drive fails the Test Unit Ready SCSI command ! when it is playing audio. ! (No-override) ! noTURWhenPlaying: False ! Whether xmcd/cda should attempt to read the CD's TOC (table of content) ! in LBA (logical block address) mode. If set to False, then the ! MSF (minute second frame) mode will be used. The driveBlockSize parameter ! must be set correctly in order for the LBA mode to work. ! (No-override) ! tocLBA: False ! Whether xmcd/cda should attempt to read subchannel data (playback status) ! in LBA (logical block address) mode. If set to False, then the ! MSF (minute second frame) mode will be used. The driveBlockSize parameter ! must be set correctly in order for the LBA mode to work. ! (No-override) ! subChannelLBA: False ! The CD drive's native block size in bytes. Standard CD drives ! have 2048-byte blocks, but some platforms (Notably older Sun and SGI) ! have CD drives with 512-byte blocks to mimick a hard disk drive. ! (No-override) ! driveBlockSize: 2048 ! When spinning up the CD, how long to wait (in seconds) for the disc ! to spin up to speed before accessing the drive again. ! (No-override) spinUpInterval: 3 ! Whether to prevent xmcd and cda from attempting to read the MCN (media ! catalog number) from the CD. This should be set to True if such an ! operation causes the CD drive to misbehave. ! (No-override) mcnDisable: False ! Whether to prevent xmcd and cda from attempting to read the ISRC ! (International Standard Recording Code) of each CD track. This ! should be set to True if such an operation causes the CD drive to ! misbehave. ! (No-override) isrcDisable: False ! Whether to prevent xmcd and cda from attempting to read CD-TEXT data ! from the CD. This should be set to True if such an operation causes ! the CD drive to misbehave. ! (No-override) cdTextDisable: False ! Select the volume control taper curve. You may need to experiment ! with this parameter to get the smoothest range of control from the ! volume control slider. This parameter is used only if ! volumeControlSupport is True. ! ! Supported values for this parameter: ! 0 Apply a linear taper. ! 1 Apply a squared taper (Small change at low settings, ! increasing as the slider moves toward the upper range). ! 2 Apply an inverse-squared taper (big change at low settings, ! diminishing as the slider moves toward the upper range). ! volumeControlTaper: 0 ! This allows the volume control setting to be pre-set when xmcd/cda ! first starts. If set to -1, xmcd/cda will query the CD drive's ! internal setting and set the volume slider to match. This will have ! an effect only if the drive and driver supports the appropriate ! functionality. Valid settings for the parameter is 0-100 and -1. startupVolume: -1 ! Select the channel routing. This parameter is used only if ! channelRouteSupport is True. ! ! Supported values for this parameter (0 and 1 are the audio channels on ! the CD, L and R are the output channels): ! 0 Normal stereo: 0->L, 1->R ! 1 Reverse stereo: 0->R, 1->L ! 2 Mono-L: 0->L, 0->R ! 3 Mono-R: 1->L, 1->R ! 4 Mono-L+R: 0+1->L, 0+1->R ! channelRoute: 0 ! During FF/REW search operations, the number of audio blocks to skip ! to the next audible sample ! (xmcd only) searchSkipBlocks: 145 ! During FF/REW search operations, the amount of time to pause between ! each audio sample (msec) ! (xmcd only) searchPauseInterval: 80 ! During FF/REW search operations, after this many audio samples the ! search speed will be tripled (i.e., the searchSkipBlocks parameter is ! internally multiplied by 3). If this parameter is set to 0, then ! no speedup will occur. ! (xmcd only) searchSpeedUpCount: 15 ! During FF/REW search operations, the percentage of the current normal ! playback volume to be used for audio samples. This is used only if ! the volumeControlSupport device specific parameter is set to True. ! (xmcd only) searchVolumePercent: 35 ! During FF/REW search operations, the minimum volume setting for audio ! samples. This is used only if the volumeControlSupport device specific ! parameter is set to True. ! (xmcd only) searchMinVolume: 2 ! Whether xmcd should close(2) the device when the CD is ejected. ! Although this is a generic option, it is added primarily to make ! xmcd run better under the Sun Solaris Volume Manager or other ! similar auto-launcher. ! ! Note: If this parameter is set to True, then the device will be opened ! again when a new CD is loaded. closeOnEject: False ! Whether to disable the CD drive front panel eject button when ! a disc is loaded. Normally this should be set to True. See also ! the caddyLockSupport and ejectSupport parameters. caddyLock: True ! This parameter is meaningful only on a multi-CD changer. When set to ! True, the normal playback mode will play through all discs in ! sequence. When set to False, playback will stop after the current ! disc is done playing. Multi-play will be disabled when the program ! or shuffle mode is enabled. multiPlay: False ! This parameter is meaningful only if multiPlay is True. ! When set to True, the discs in the multi-disc changer will be played ! in reverse-order. reversePlay: False