TOOLS
Folders and files
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
README for the TOOLS directory ============================== Preamble -------- In this directory you can find some nice scripts and code that makes using MPlayer easier. FIXME: Document the following tools: bmovl-test MPlayer scripts in the TOOLS dir -------------------------------- edgedetect.fp, emboss.fp Author: Reimar Döffinger Description: Examples of custom fragment program for OpenGL video out driver Usage: mplayer -vo gl:yuv=4:customprog=edgedetect.fp midentify.sh Author: Tobias Diedrich Description: Runs 'mplayer -identify' for all arguments while preventing video window flashing. Usage: midentify.sh file1 [file2 ...] mpconsole.sh Author: Rich Felker Description: Script to run MPlayer on the console (fbdev/mga_vid/etc.) without the console text and/or flashing cursor getting in the way. Usage: mpconsole.sh [mplayer options] mplmult.sh Author: Reimar Döffinger Description: Example how to output video on multiple windows in sync. Might be even more useful in combination with -vo ggi to distribute the video arbitrarily. Usage: mplmult.sh <n> <options> n Number of MPlayer instances that display the video. options Any options you would pass to MPlayer, more than one file will usually not work. subsearch.sh Author: Alex Beregszaszi Description: Collects subtitle files from the directory given as argument ('.' if none is given) and its subdirectories and prints them as a comma separated list to stdout. Usage: subsearch.sh [directory] mplayer -sub `subsearch.sh` movie wma2ogg.pl Author: Peter Simon Description: Converts WMA files to Ogg or MP3. Usage: wma2ogg [options] <-f FILE1 | -f FILE2 ... | -a> -f, -file filename -a converts all WMA files in the current directory -t output filetype (ogg, mp3) [default=ogg] -lame I wanna use L.A.M.E. sure enough! -br bitrate (kb/s) [default=from the WMA] -del remove WMA file(s) after the transcoding Tech scripts in the TOOLS dir ----------------------------- calcbpp.pl Author: Moritz Bunkus Description: A script that calculates the $bpp for a movie, mentioned in DOCS/tech/encoding-tips.txt, see that document for more info. Usage: calcbpp.pl <resolution> <aspect ratio> <bitrate> <fps> resolution: the cropped but unscaled resolution (use '-vf cropdetect') aspect ratio: the encoded aspect ratio. All DVDs come at 720x576 but contain a flag that tells the player wether it should display the DVD at an aspect ratio of 4/3 (1.333) or at 16/9 (1.777). Have a look at MPlayer's output - there's something about 'prescaling'. That's what you are looking for. bitrate: the video bitrate in kbit/s fps: the fps example: calcbpp.pl 720x440 16/9 896 25 countquant.pl Author: Moritz Bunkus Description: Counts the quantizers used for the encoding, mentioned in DOCS/tech/encoding-tips.txt, see that document for more info. Usage: countquant.pl < divx2pass.log It will print out which quantizer was used how often. If you see that e.g. the lowest quantizer (vqmin=2) gets used for > 95% of the frames then you can safely increase your picture size. plotpsnr.pl Author: Jonas Jermann Description: Draw PSNR log graphs using gnuplot. Usage: plotpsnr.pl [options] <file> -h, --help Display this help message -quant Display quantizers -size Display size -psnr Display PSNR -iframes Display I-frames -pframes Display P-frames -bframes Display B-frames -aframes Display all frames in different colors -cmp <file2> Compare two files -qs <style> Quantizer style -ss <style> Size style -ps <style> PSNR style Default: -quant -size -psnr -qs "p" -ss "i" -ps "p" Note: Requires gnuplot. Comparison is based on file2. Comparison assumes that the frame numbers of both files fit. psnr-video.sh Author: Matthias Wieser Description: Calculates the PSNR between two existing video files. The PSNR is calculated frame by frame. Also prints the overall PSNR. The script can be used to: * Compare different softwarescalers (should I use -sws 1 or -sws 2 ?) * Compare different resolutions (is it better to scale down to 640x360 or to 560x320) * Compare different deinterlacers * Compare different video codecs * Compare video filters (is it better to use -vf hqdn3d or lavcopts:nr=400) * [...] Usage: psnr-video.sh <file1> <file2> [<frames>] [<options1>] [<options2>] <file1> and <file2> are the video files for which the PSNR should be calculated. [<frames>] is the number of frames to process, starting from frame 1. [<options1>] are additional MPlayer options for <file1> [<options2>] are additional MPlayer options for <file2> A file called ./psnr.dat will be created with the following content: File;Y;Cb;Cr 00000001.ppm;34.23;39.54;40.06;35.426 00000002.ppm;33.03;38.71;39.26;34.271 00000003.ppm;33.45;38.91;39.28;34.655 00000004.ppm;32.72;38.69;38.85;33.972 [...] 00000247.ppm;35.55;40.84;42.15;36.785 PSNR:;35.9887 Note: This script relies on the the tool "pnmpsnr" for the frame-by-frame PSNR calculation. Be aware that psnr-video.sh needs a lot of temporary space in /tmp/. asfinfo Author: Arpi Description: a simple ASF header display program Usage: asfinfo <filename.asf> Note: Also see MPlayer's -identify option. avi-fix Author: Arpi Description: A simple tool to fix chunk sizes in RIFF AVI files. Usage: avi-fix [-fix] <badfile.avi> Note: It does not check or fix the index. You can try to fix it with ffmpeg -i ... -acodec copy -vcodec copy. checktree.sh Author: Ivo van Poorten Description: Check the source tree for anomalies. Usage: checktree.sh -help Note: This script is meant for developers to check the current source tree and/or the patches they are working on. mphelp_check.py Author: Uoti Urpala Description: Check console message translations for common errors. Usage: mphelp_check.py [--missing] <master file> <files to check> Note: Compares MPlayer translation files against a master file and reports conflicting arguments, extra strings not present in the base file and (optionally) missing strings. cpuinfo Author: Jürgen Keil Description: the prototype ../cpuinfo.c Note: Used by configure to emulate /proc/cpuinfo on non-Linux systems. dump_mp4 Author: Arpi Description: MPEG4-ES stream inspector, dumps the stream startcodes. fastmemcpybench Author: Felix Bünemann Description: benchmark/testbed for fastmemcpy stuff Note: Also see fastmem.sh. movinfo Author: Arpi Description: Show QuickTime MOV file structure. Usage: movinfo <filename.mov> vivodump Author: Arpi Description: Dump H.263 frame headers from VIVO files. Usage: vivodump <input_file> <output_file> Miscellaneous scripts in the TOOLS dir -------------------------------------- subedit.pl Author: Michael Klepikov Description: A script for pipelined editing of subtitle files. Usage: subedit.pl [switches] -if,--input-format <fmt> input format; supported: SRT (default: SRT) -of,--output-format <fmt> output format; supported: SRT (default: input format) -s,--shift <time> shift all subtitles by <time> (format: [-]hh:mm:ss,fraction) -c,--scale <time> scale by adding <time> to overall duration -f,--split-from <time> drop subtitles that end before <time> -t,--split-to <time> drop subtitles that start after <time> (will truncate timing if it overlaps a boundary) -r,--renumber renumber SRT subtitles in output -d,--debug enable debug output -h,--help help message w32codec_dl.pl Author: Tom Lees Description: This script will use the Windows Media Player codec download infrastructure to aquire the codecs listed in codecs.conf and put them in a directory named "codecs/" below the current directory. Usage: w32codec_dl.pl <codecs.conf location> Note: You will need the libwww-perl stuff and the cabextract utility which can be found at http://www.kyz.uklinux.net/cabextract.php3. binary_codecs.sh Author: Andrea Menucci, thuglife Description: Downloads binary codecs from mplayerhq.hu and installs them on a Debian system. Usage: binary_codecs.sh install binary_codecs.sh uninstall vobshift.py Author: Gábor Farkas Description: Adjust the time-info in vobsub files Usage: vobshift.py in.idx out.idx +8.3 Will shift the time by 8.3 seconds subrip.c Author: Kim Minh Kaplan Description: Transform VOBsub subtitles into Subrip text subtitles using GOCR/JOCR. Usage: subrip <vobsub basename> [subid [output filename] ] Note: Requires at least JOCR/GOCR 0.37. You will have to change the 'vobsub_id' value if you want a subtitle different from number 0. Hint: You can view the subtitle that is being decoded with "display subtitle-*.pgm". alaw-gen.c Author: Arpi Description: Generates alaw/ulaw tables. Note: Created to work around a past license issue, no longer useful. avisubdump.c Author: Tobias Diedrich Description: Dumps vobsub soft subtitles streams embedded in AVI files. Usage: avisubdump <movie.avi> vfw2menc.c Author: Gianluigi Tiesi Description: Creates a codec settings file from the Video for Windows codecs found in the mplayer codec packs. Usage: vfw2menc -f <fourcc> -d <codec.dll> -s <settingsfile.mcf> -h|--help - displays this help -d|--driver filename - dll or drv to load -f|--fourcc fourcc - fourcc of selected driver -s|--save filename - save settings to file -c|--check filename - load and show setting in filename -v|--view - displays the config dialog and do nothing Notes: Works on Windows/Linux x86 only. modify_reg.c Author: Alan Nisota Description: Modifies registry file (usually ~/.mplayer/registry) Usage: modify_reg -r <registry_file> -l modify_reg -r <registry_file> -k <key> [-d|-v <value>[-t <type>]] -r|--registry - path to registry file -l|--list - shows all keys and values -k|--key - registry key -d|--del - delete key -v|--value - new value for key -t|--type - key type: string (default) or dword Notes: Necessary to use CoreAVC with MPlayer compare.c Author: Michael Niedermayer Description: Simple file compare program that detects the number of rounding errors and dies if the error is too large. Usage: compare <file1> <file2> realcodecs/ Author: miscellaneous Description: Wrappers for Linux Real binary codecs used to analyze, alter and dump the data flow between RealPlayer and its codecs. Usage: - Set the path to the RealPlayer codecs directory in the C files. - Run 'make realcodecs'. - Rename the original codecs to match the names expected in the wrapper sources. The default is to give them a "real" prefix, e.g. realcook.so.6.0. - Put the wrappers in the RealPlayer codecs directory. Notes: Known to work at least on Linux x86 with RealPlayer8.