This page is an archive
My personal rule-set when ripping DVDs.
Some references / general rules:
Main title is 60+ minutes, or audio has more than 2 channels:
Old animation
Old animation shorts (or favorites)
Old movies – black and white or poor quality
New animation
High-quality animation
I like to have specifications for encoding content so that I have a snapshot of settings that I used at the time. Doing this, it allows me to verify that everything works across all devices, and expectations and bugs are noted.
encoding specifications: dlna-usb-1 (2014-07-19)
Compatability:
Software:
Handbrake:
x264:
H.264:
mkvtoolnix:
MPlayer 1.1-4.8 on Ubuntu 14.04 has a bug where the subtitle language code does not display in the OSD. The file is properly tagged, and there are not any issues with the Matroska container metadata. Exists in MPlayer 1.1.1 as well.
Same as above, but changed libav version to 9.14. Previous version was unspecified.
The Gentoo ebuild for HandBrake 0.9.9 has a bug where it does not detect closed caption video on DVD streams. This was confirmed by building the same version from source and running the same tests.
Decided to move to building HandBrake from upstream's source, using the last SVN commit as the latest version.
svn co svn://svn.handbrake.fr/HandBrake/trunk@6239
Here's my configure script:
./configure \ --launch-jobs=0 \ --force \ --enable-x265 \ --enable-fdk-aac \ --enable-libav-aac \ --enable-avformat \ --disable-gtk \ --disable-gst
HandBrake now has the option to use libavformat for the container, in addition to internal libmkv and mp4v2: av_mkv, and av_mp4.
The command-line options also were simplified replacing –h264-* with –encoder-*
All said, here's an example of the changes to the command line:
--encoder-preset medium --encoder-tune animation --encoder-profile high --encoder-level 3.1 --format av_mkv
Noticed on this build that HandBrake was setting the vbv-maxsize and vbv-maxrate higher than the H.264 level permitted (3.1 caps at 14,000; was set to 17,500). Added the max limits to the encoding options as well:
--encopts 'keyint=30:vbv-bufsize=14000:vbv-maxrate=14000'
Comparing the x264 settings between a newer and older file, the only other change made was filler
is set to 0.
Same settings as above, but reverted HandBrake version back to upstream's 0.9.9 release, but without the Gentoo ebuild so that I can have support for closed captioning.
Changed the vbv-bufsize
and vbv-maxrate
to 1024k.
Drops the specification requirement for a specific bitrate, but now requires two-pass encoding.
Drop the vbv-maxrate setting. See this doom9 thread for a good explanation on the matter. :)
Created July 2015.
This is mostly just bringing the software versions up to date. Target client players now include PS4's Media Player, Plex and continues support for DLNA. Dropping testing on USB completely, as the chances of using it drift farther away.
The main target of this one is to do testing with Plex media server as well, so this is a testing spec at the moment. Plex has seeking issues at times, and also crashes on certain videos. Some other features that are going to go into this spec is packing SRT subtitles, adding poster art, and including a lot more metadata about the DVD source and its season, episode numbers, etc.
Limit x264 preset to either 'slow' or above in quality.
All encodes are done at 2048k video bitrate.
Everything here is just a release update to the latest software. mkvtoolnix, however, has some specific things in it that I find interesting that I could use in the future:
7.3.0 can read teletext straight from an MPEG-2 transport stream and convert it directly to an SRT and it has better handling of broken MPEG-2 transport streams. 7.4.0 more teletext fixes. 7.5.0 has more bug fixes related to MPEG transport streams. 7.7.0 has lots of changes to reading AC3 and Blu-ray audio codecs. 7.8.0 has new features for detecting DTS streams. 7.9.0 lots more added features and bug fixes for reading Dolby Digital, DTS, DTS-HD streams.
Since this is using Matroska, it's not intended to be backwards compatible with anything (PS3, PS4, DLNA, USB). My target hardware is Android TV.
If I *did* want to make it backwards compatible, here's all that would change:
If I wanted to be even more strict to avoid throwing off certain hardware: