How to make thumbnails of modern videos

SamKook

Grand Wizard
Staff member
Super Moderator
Uploader
May 10, 2009
3,778
5,349
Most of the popular screenshot thumbnail generation software are using old versions of libraries/software internally these days so some unexpected result often happen when using newer video files so I figured I'd explain where to get a modern version of one and how to update another easier to use one.

Someone took over the old Movie Thumbnailer (mtn) project and updated it with recent internals so that's what we'll be using here and I'll explain how to also use a GUI for it for those who don't want to use a command line software.

mtn download(most will want to get this version: Windows (64bit)): https://gitlab.com/movie_thumbnailer/mtn/-/releases

To install it, you simply need to open the zip and extract it somewhere(I like to do it in C:\Progs\ for those kind of software).

Hard way​

Open a windows command prompt by opening the start menu and typing "cmd" (then press enter or click on it).

Navigate to where you installed mtn or to where the video you want to make a thumbnail of it is, whichever you don't want to type the full path of. You can start to type and press tab to auto-complete names. Press tab multiple times if it autocompletes wrong and it will cycle through all the possibilities.

Here's a few examples to let you know how to navigate with it.
On the left of the red highlighted ">" is where you are. Usually you would start at "C:\Windows\system32" by default instead of "K:\Selenium" but I wanted to show an example of how to change the drive.
On the right of it is the command I typed and the result is reflected on where you are on the line below.
CommandLineUsage.jpg
You can omit the full path and only use the file if the path is the current folder.
For example "C:\Progs\mtn-win64\bin\mtn.exe" could be "mtn.exe" if we were inside "C:\Progs\mtn-win64\bin"(would been an additional "cd bin" to get there with the screenshot example above)

Here's how to use mtn to make a thumbnail file with commonly used settings and a real example:
ThumbnailEx.jpg
Code:
"C:\Progs\mtn-win64\bin\mtn.exe" -w 1040 -h 120 -c 4 -r 12 -F FFFFFF:11 -k 000000 -L 4:2 -j 85 -P -o -thumbs.jpg "Y:\Downloads\DGCEMD-468.1080p.mp4"
A few things to know about:
-w is the width of the picture(1040 is about the max the forum can display without clicking on the picture).
-h is the height of each little screenshot
-c is the amount of columns
-r is the amount of rows
-j is the jpg quality from 0 to 100(higher is better but makes a higher sized file). The default is 90.
-o is what gets added to the filename for the picture file(result will be DGCEMD-468.1080p-thumbs.jpg in this example, which gets saved in the same place as the video file)
at the end between "" is the location of the video file

Here's a more advanced example where we also specify the font of the top text and time text(we also set the colors(RGB format) for the text separately and add a shadow to the time), the output directory(where mtn is instead of where the video file is but can be set to anywhere), we use the default white background(-k not set) and add a 1 pixel gap(-g) between each screenshot:
ThumbnailExAdv.jpg
Code:
"C:\Progs\mtn-win64\bin\mtn.exe" -w 1040 -h 120 -c 4 -r 12 -g 1 -f "Arial Unicode MS.ttf" -F 111111:11:arial.ttf:EEEEEE:333333:10 -L 4:2 -j 85 -P -O "C:\Progs\mtn-win64\bin" -o -thumbs.jpg "Y:\Downloads\DGCEMD-468.1080p.mp4"

You can read in detail what everything does in detail inside the spoiler tag below.

Here's the full help and flag explanation for those who want to go more in depth with customizing things:
Code:
Movie Thumbnailer (mtn) 3.4.2
Compiled with: Lavc59.18.100 Lavf59.16.100 Lavu57.17.100 SwS6.4.100 GD:2.1.1-dev

Mtn saves thumbnails of specified movie files or directories to image files.
For directories, it will recursively search inside for movie files.

Usage:
  mtn.exe [options] file_or_dir1 [file_or_dir2] ... [file_or_dirn]
Options: (and default values)
  -a aspect_ratio : override input file's display aspect ratio
  -b 0.80 : skip if % blank is higher; 0:skip all 1:skip really blank >1:off
  -B 0.0 : omit this seconds from the beginning
  -c 3 : # of column
  -C -1 : cut movie and thumbnails not more than the specified seconds; <=0:off
  -d #: recursion depth; 0:immediate children files only
  -D 12 : edge detection; 0:off >0:on; higher detects more; try -D4 -D6 or -D8
  -E 0.0 : omit this seconds at the end
  -f tahomabd.ttf : font file; use absolute path if not in usual places
  -F RRGGBB:size[:font:RRGGBB:RRGGBB:size] : font format [time is optional]
     info_color:info_size[:time_font:time_color:time_shadow:time_size]
  -g 0 : gap between each shot
  -h 150 : minimum height of each shot; will reduce # of column to fit
  -H : filesize only in human readable format (MiB, GiB). Default shows size in bytes too
  -i : info text off
  -I {toi}: save individual shots; t - thumbnail size, o - original size, i - ignore creating thumbnail grid
  -j 90 : jpeg quality
  -k RRGGBB : background color (in hex)
  -L info_location[:time_location] : location of text
     1=lower left, 2=lower right, 3=upper right, 4=upper left
  -n : run at normal priority
  -N info_suffix : save info text to a file with suffix
  -o _s.jpg : output suffix including image extension (.jpg or .png)
  -O directory : save output files in the specified directory
  -p : pause before exiting; default on in win32
  -P : don't pause before exiting; override -p
  -q : quiet mode (print only error messages)
  -r 0 : # of rows; >0:override -s
  -s 120 : time step between each shot
  -S #: select specific stream number
  -t : time stamp off
  -T text : add text above output image
  -v : verbose mode (debug)
  -w 1024 : width of output image; 0:column * movie width
  -W : don't overwrite existing files, i.e. update mode
  -X : use full input filename (include extension)
  -z : always use seek mode
  -Z : always use non-seek mode -- slower but more accurate timing
  --shadow[=N]
       draw shadows beneath thumbnails with radius N pixels if N >0; Radius is calculated if N=0 or N is omitted
  --transparent
       set background color (-k) to transparent; works with PNG image only
  --cover[=_cover.jpg]
       extract album art if exists
  --vtt[=path in .vtt]
       export WebVTT file and sprite chunks
  --options=option_entries
       list of options passed to the FFmpeg library. option_entries contains list of options separated by "|". Each option contains name and value separated by ":".
  file_or_dirX
       name of the movie file or directory containing movie files

Examples:
  to save thumbnails to file infile_s.jpg with default options:
    mtn.exe infile.avi
  to change time step to 65 seconds & change total width to 900:
    mtn.exe -s 65 -w 900 infile.avi
  to step evenly to get 3 columns x 10 rows:
    mtn.exe -c 3 -r 10 infile.avi
  to save output files to writeable directory:
    mtn.exe -O writeable /read/only/dir/infile.avi
  to get 2 columns in original movie size:
    mtn.exe -c 2 -w 0 infile.avi
  to skip uninteresting shots, try:
    mtn.exe -D 6 infile.avi
  to save only individual shots and keep original size:
    mtn.exe -I io infile.avi
  to draw shadows of the individual shots, try:
    mtn.exe --shadow=3 -g 7 infile.avi
  to export thumbnails in WebVTT format every 10 seconds and max size of 1920x1920px:
    mtn.exe -s 10 -w 1920 --vtt=/var/www/html/ -O /mnt/fileshare -Ii -o .jpg infile.avi
  to skip warning messages to be printed to console (useful for flv files producing lot of warnings), try:
    mtn.exe -q infile.avi
  to enable additional protocols:
    mtn.exe --options=protocol_whitelist:file,crypto,data,http,https,tcp,tls infile.avi

In windows, you can run mtn.exe from command prompt or drag files/dirs from
windows explorer and drop them on mtn.exe. you can change the default options
by creating a shortcut to mtn.exe and add options there (right click the
shortcut -> Properties -> Target); then drop files/dirs on the shortcut
instead.

Mtn comes with ABSOLUTELY NO WARRANTY. this is free software, and you are
welcome to redistribute it under certain conditions; for details see file
gpl-2.0.txt.

wahibre@gmx.com
https://gitlab.com/movie_thumbnailer/mtn/wikis

Easier Way!​

Thumbnail me is a GUI that was made for mtn.

Thumbnail me download(most people will want to simply press the green download button at the top): https://sourceforge.net/projects/thumbnailme/

The latest version is quite old but we can simply update the mtn version it uses by replacing the content of the mtn folder in its installation directory with the content of the bin folder of the newer mtn version above.
Be aware that making changes anywhere inside Program Files requires admin permission if that is where you installed it.
You would simply rename the mtn folder there(or wherever else you installed it): "C:\Program Files (x86)\Thumbnail me 3.0\mtn" or delete its content if you don't want a backup in case you mess up.
Then copy the content of "C:\Progs\mtn-win64\bin" (or wherever you extracted it) to "C:\Program Files (x86)\Thumbnail me 3.0\mtn" (you will have to recreate the mtn folder if you renamed it earlier).

After that, you can simply start thumbnail me and use it. Press "Load" to open a video and then "Start" to save the thumbnail.
ThumbnailMeEx.jpg
 

SamKook

Grand Wizard
Staff member
Super Moderator
Uploader
May 10, 2009
3,778
5,349
Thumbnail me is one of them, but it looks like Qt Movie thumbnailer (qmtn) is still up to date since you have to point it to whatever version of mtn you already have.

Gave it a shot and you have to go into the settings first and set mtn location as well as select a font. It doesn't fall back on the default font if you leave both font selections empty.
After that, you open your file and it automatically creates the thumbnail. You can check the log tab on the right to see if there's any problems.

I'm not a big fan of the default text colors and size so I would suggest changing those too, it makes the text a little hard to see.


I also use the console one so I'm not really up-to-date on the GUIs, I just picked the first I found that worked.