MakeMKV

From Indie IT Wiki
Jump to: navigation, search

Version History

http://www.makemkv.com/download/history.html

Installation

2018-04-29

  • Current latest ffmpeg build to compile correctly = 3.4.2
  • Current latest makemkv build = 1.12.1

(OLD - NOW FIXED - there is a bug where only version 3.2.X of ffmpeg will definitely compile.)

Try the latest one if you want to from http://ffmpeg.org/download.html#releases where they keep 3 sub versions up to date - the 3.2 releases and the 3.3 releases and the 3.4 releases.

Just change the relevant file names and directory names below. If that doesn't work, you know that 3.2.X will definitely work.

sudo apt-get install build-essential zlib1g-dev libssl-dev pkg-config libexpat1-dev libc6-dev libdvdnav4 libdvdread4 libudev-dev
cd Downloads/
mkdir makemkv
cd makemkv/
wget http://ffmpeg.org/releases/ffmpeg-3.4.2.tar.bz2
tar -xjvf ffmpeg-3.4.2.tar.bz2
cd ffmpeg-3.4.2/
make clean
./configure --prefix=/tmp/ffmpeg --enable-static --disable-shared --enable-pic --disable-x86asm --disable-all --disable-autodetect --disable-everything --enable-swresample --enable-avcodec --enable-encoder=flac,aac --enable-decoders
make
make install
cd ..
wget http://www.makemkv.com/download/makemkv-oss-1.12.2.tar.gz
tar -xzvf makemkv-oss-1.12.2.tar.gz
cd makemkv-oss-1.12.2/
make clean
PKG_CONFIG_PATH=/tmp/ffmpeg/lib/pkgconfig ./configure --disable-gui
make
sudo make install
cd ..
wget http://www.makemkv.com/download/makemkv-bin-1.12.2.tar.gz
tar -xzvf makemkv-bin-1.12.2.tar.gz
cd makemkv-bin-1.12.2/
mkdir tmp
echo "accepted" > tmp/eula_accepted
make
sudo make install
sudo ldconfig
cd
makemkvcon

Thanks - http://www.makemkv.com/forum2/viewtopic.php?f=3&t=15122

Thanks - http://www.makemkv.com/forum2/viewtopic.php?f=3&t=224

Settings for Automation

http://www.makemkv.com/forum2/viewtopic.php?f=10&t=4386

~/.MakeMKV/settings.conf

app_DefaultSelectionString = "-sel:all,+sel:audio&(eng),-sel:(havemulti),-sel:mvcvideo,+sel:subtitle&(eng),-sel:special,=100:all,-10:eng"
  • deselect everything
  • select english audio
  • deselect different angles
  • deselect 3d
  • select english subtitles
  • deselect special features
  • prioritise english

Copy Entire DVD For Plex

makemkvcon mkv disc:0 all /plex/movies/Elf

Script to Rip Disc Longest Title

#!/bin/bash
# ~/Bin/makemkv_rip_longest.sh

# Get the minimum length. This ensures that only the longest title goes to MKV.
long_title=$(makemkvcon -r info disc:0 | grep cell | awk '{ print $7 }' | tr -d ')","Title' | sort -nr | head -n1 | awk -F: '{print ($1 * 3600) + ($2 * 60) + $3}')

# show lenth in seconds
echo "length=${long_title}"

# Rip DVD
makemkvcon --minlength="$long_title" --decrypt --directio=true mkv disc:0 all /tmp/ | egrep -i 'added|saving|saved'

exit;

Advanced Command Line

makemkvcon -r info disc:0
makemkvcon --minlength=3600 mkv disc:0 0 /tmp/
makemkvcon mkv iso:/path/to/filename.iso 0 /tmp/

http://www.makemkv.com/developers/usage.txt

Disc Access Mode

There are 2 ways to read the disc: direct access, os level access

Sometimes you may receive an error with a poorly produced, probably quite old DVD...

Error 'Scsi error - ILLEGAL REQUEST:READ OF SCRAMBLED SECTOR WITHOUT AUTHENTICATION'

You can either try to ignore this, and makeMKV will produce a MKV file anyway after a long time, or you can try and run the ccommand line option below which will use 'os level access mode' and disable 'direct access mode'...

makemkvcon --directio=false mkv disc:0 0 /tmp/