
Please note that on most operating systems, using a raw device requires highly aligned buffers: Linux requires a 2048 bytes alignment (which is the size of a DVD sector). Exact usage will depend on your operating system, the Linux utility to set up raw devices is raw(8) for instance.
DVDCSS_RAW_DEVICE: Specify the raw device to use. In rare cases this may fail because there is not enough encrypted data on the disc to perform a statistical attack, but on the other hand it is the only way to decrypt a DVD stored on a hard disc, or a DVD with the wrong region on an RPC2 drive. It does not rely on a key exchange with the DVD drive, but rather uses a crypto attack to guess the title key. title is the fallback when all other methods have failed. This process is CPU intensive and requires 64 MB of memory to store temporary data. Instead of using player keys, libdvdcss will crack the disc key using a brute force algorithm. disc is a fallback method when key has failed. This can fail if the drive does not recognize any of the player keys. libdvdcss will use a set of calculated player keys to try and get the disc key.
DVDCSS_METHOD: Sets the authentication and decryption method that libdvdcss will use to read scrambled discs. 2 outputs error messages and debug messages to stderr. DVDCSS_VERBOSE: Sets the verbosity level. Some environment variables can be used to change the behavior of libdvdcss without having to modify the program which uses it. The complete libdvdcss programming interface is documented in the dvdcss.h file. This ensures that libdvdcss remains free and used only with free software. Libdvdcss is free software, released under the GNU General Public License. simplicity: A DVD player can be built around the libdvdcss API using no more than 4 or 5 library calls. adaptability: Unlike most similar projects, libdvdcss does not require the region of your drive to be set and will try its best to read from the disc even in the case of a region mismatch.
portability: Currently supported platforms are GNU/Linux, FreeBSD, NetBSD, OpenBSD, Haiku, Mac OS X, Solaris, QNX, OS/2, and Windows 2000 or later. Libdvdcss is a simple library designed for accessing DVDs like a block device without having to bother about the decryption.