VLC uses a large number of free decoding and encoding libraries. Many of its codecs are provided by the libavcodec codec library from the FFmpeg project, but it uses mainly its own muxer and demuxers. VLC gained honor as the first player to support playback of encrypted DVDs on Linux by using the libdvdcss DVD library.