Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
dragonfly_bsd [2018/12/29 07:10] beandog created |
dragonfly_bsd [2019/05/24 15:57] (current) beandog [DragonFly BSD] |
||
---|---|---|---|
Line 2: | Line 2: | ||
* [[https://www.dragonflybsd.org/~labthug/handbook/disks-naming.html|Device Names]] | * [[https://www.dragonflybsd.org/~labthug/handbook/disks-naming.html|Device Names]] | ||
+ | |||
+ | Both dvd_info and bluray_info build out of the box once the dependencies re installed. | ||
+ | |||
+ | The default device for the optical drive is ''/dev/cd0'' | ||
+ | |||
+ | It not already installed, you will need automake and autoconf: | ||
+ | |||
+ | <code> | ||
+ | pkg install autoconf automake pkgconf | ||
+ | </code> | ||
+ | |||
+ | ==== dvd_info ==== | ||
+ | |||
+ | Install libdvdread and libdvdcss: | ||
+ | |||
+ | <code> | ||
+ | pkg install libdvdread libdvdcss | ||
+ | </code> | ||
+ | |||
+ | |||
+ | Download the source code from github, and build: | ||
+ | |||
+ | <code> | ||
+ | autoreconf -fi | ||
+ | ./configure | ||
+ | make | ||
+ | </code> | ||
+ | |||
+ | ==== bluray_info ==== | ||
+ | |||
+ | Install libbluray and libaacs: | ||
+ | |||
+ | <code> | ||
+ | pkg install libbluray and libaacs | ||
+ | </code> | ||
+ | |||
+ | Then check out the code as normal, and build: | ||
+ | |||
+ | <code> | ||
+ | autoreconf -fi | ||
+ | ./configure | ||
+ | make | ||
+ | </code> | ||
+ | |||
+ | ==== research notes ==== | ||
+ | |||
+ | <code> | ||
+ | man 4 cd: | ||
+ | |||
+ | CDIOCRESET | ||
+ | CDIOCSETDEBUG | ||
+ | CDIOCCLRDEBUG Turn on (off) debugging for the appropriate device. | ||
+ | |||
+ | CDIOCSTART | ||
+ | CDIOCSTOP Tell the drive to spin-up (-down) the CD-ROM. | ||
+ | |||
+ | CDIOCALLOW | ||
+ | CDIOCPREVENT Tell the drive to allow (prevent) manual ejection of the CD-ROM disc. Not all drives support this feature. | ||
+ | |||
+ | |||
+ | CDIOCEJECT | ||
+ | |||
+ | CDIOCCLOSE | ||
+ | |||
+ | man 9 cd: | ||
+ | |||
+ | CD_Q_NO_TOUCH This flag tell the driver not to probe the drive at | ||
+ | attach time to see if there is a disk in the drive and | ||
+ | find out what size it is. This flag is currently | ||
+ | unimplemented in the CAM cd driver. | ||
+ | |||
+ | CDIOCCAPABILITY (struct ioc_capability) Retrieve information from | ||
+ | the drive on what features it supports. The | ||
+ | information is returned in the following structure: | ||
+ | |||
+ | struct ioc_capability { | ||
+ | u_long play_function; | ||
+ | #define CDDOPLAYTRK 0x00000001 | ||
+ | /* Can play tracks/index */ | ||
+ | #define CDDOPLAYMSF 0x00000002 | ||
+ | /* Can play msf to msf */ | ||
+ | #define CDDOPLAYBLOCKS 0x00000004 | ||
+ | /* Can play range of blocks */ | ||
+ | #define CDDOPAUSE 0x00000100 | ||
+ | /* Output can be paused */ | ||
+ | #define CDDORESUME 0x00000200 | ||
+ | /* Output can be resumed */ | ||
+ | #define CDDORESET 0x00000400 | ||
+ | /* Drive can be completely reset */ | ||
+ | #define CDDOSTART 0x00000800 | ||
+ | /* Audio can be started */ | ||
+ | #define CDDOSTOP 0x00001000 | ||
+ | /* Audio can be stopped */ | ||
+ | #define CDDOPITCH 0x00002000 | ||
+ | /* Audio pitch can be changed */ | ||
+ | |||
+ | u_long routing_function; | ||
+ | #define CDREADVOLUME 0x00000001 | ||
+ | /* Volume settings can be read */ | ||
+ | #define CDSETVOLUME 0x00000002 | ||
+ | /* Volume settings can be set */ | ||
+ | #define CDSETMONO 0x00000100 | ||
+ | /* Output can be set to mono */ | ||
+ | #define CDSETSTEREO 0x00000200 | ||
+ | /* Output can be set to stereo (def) */ | ||
+ | #define CDSETLEFT 0x00000400 | ||
+ | /* Output can be set to left only */ | ||
+ | #define CDSETRIGHT 0x00000800 | ||
+ | /* Output can be set to right only */ | ||
+ | #define CDSETMUTE 0x00001000 | ||
+ | /* Output can be muted */ | ||
+ | #define CDSETPATCH 0x00008000 | ||
+ | /* Direct routing control allowed */ | ||
+ | |||
+ | u_long special_function; | ||
+ | #define CDDOEJECT 0x00000001 | ||
+ | /* The tray can be opened */ | ||
+ | #define CDDOCLOSE 0x00000002 | ||
+ | /* The tray can be closed */ | ||
+ | #define CDDOLOCK 0x00000004 | ||
+ | /* The tray can be locked */ | ||
+ | #define CDREADHEADER 0x00000100 | ||
+ | /* Can read Table of Contents */ | ||
+ | #define CDREADENTRIES 0x00000200 | ||
+ | /* Can read TOC Entries */ | ||
+ | #define CDREADSUBQ 0x00000200 | ||
+ | /* Can read Subchannel info */ | ||
+ | #define CDREADRW 0x00000400 | ||
+ | /* Can read subcodes R-W */ | ||
+ | #define CDHASDEBUG 0x00004000 | ||
+ | /* The tray has dynamic debugging */ | ||
+ | }; | ||
+ | |||
+ | </code> |