System Requirements


CSS (Content Scrambling System) is a scheme mainly used by copyrights holders to protect commercial instructional dvds from unauthorized copying, by literally scrambling the DVDs' content through a (weak) encryption process.

By default, under NetBSD, when installing xine or mplayer to read commercial's DVDs, the libdvdcss (needed by libavcodec to decipher the DVD's content) is not built. This guide will show you how to make and install the libdvdcss package in order to use it.

Please note that under certain legislations, such method is forbidden (especially in the US thanks to DMCA). Use libdvdcss at your own risk!

Building and using libdvdcss

Libdvdcss is already present for installation in pkgsrc. As it is illegal in certain states, pkgsrc can not install it directly without some user interaction.

Before making it, we will first need to add some information to mk.conf(5), namely the master sites from which we should fetch the libdvdcss source code. There are many, including the videolan project, which hosts libdvdcss:

# echo "LIBDVDCSS_MASTER_SITES='the website you found'" >> /etc/mk.conf

Now, start building libdvdcss (should not take more than a couple minutes):

# cd /usr/pkgsrc/multimedia/libdvdcss
# make install clean

That's it. From now on, libavcodec (and consequently, your favorite multimedia reader) should automagically use libdvdcss to read your commercial's DVDs, through dlopen(3), when required.