/usr/share/vdr-plugin-mp3/image_convert is in vdr-plugin-mp3 0.10.2-19.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 | #!/bin/bash
#
# requires: ...topnm, pnmscale, pnmcomp, ppmntsc, ppmtoy4m, mpeg2enc
#
# video format. pal or ntsc
FORMAT=pal
# target image width/height (taking into account visible screen area)
if [ "$FORMAT" = "ntsc" ]; then
TW=600
TH=420
else
TW=632
TH=512
fi
TMP=/tmp/image_convert.$$.pnm
IMG=$1
MPG=$2
DIR=`dirname "$MPG"`
if [ ! -d "$DIR" ]; then
mkdir -p "$DIR"
fi
#
# get the file type and set the according converter to PNM
#
FILE_TYPE=`file -i -L -b "$IMG" 2>/dev/null | cut -f2 -d/`
case "$FILE_TYPE" in
jpg | jpeg)
TO_PNM=jpegtopnm
;;
tiff)
TO_PNM=tifftopnm
;;
bmp | x-bmp)
TO_PNM=bmptoppm
;;
png | x-png)
TO_PNM=pngtopnm
;;
Netpbm | pnm | x-portable-pixmap)
TO_PNM=cat
;;
gif)
TO_PNM=giftopnm
;;
*)
echo "filetype '$FILE_TYPE' is not supported"
exit 1
;;
esac
#
# 'chroma subsampling mode' mjpegtools >= 1.8.0
#
SUBSAMPLINGMODE=""
if ppmtoy4m -h | egrep -q "'420mpeg2'"; then
SUBSAMPLINGMODE="-S 420mpeg2"
fi
#
# extract the image size & compute scale value
#
LANG=C # get the decimal point right
$TO_PNM "$IMG" >$TMP 2>/dev/null
S=`pnmfile $TMP | awk '{ printf "%d %d ",$4,$6 }'`
S=`echo $S $TW $TH | awk '{ sw=$3/$1; sh=$4/$2; s=(sw<sh)?sw:sh; printf "%.4f\n",(s>1)?1.0:s; }'`
#
# now run the conversion
#
if [ "$FORMAT" = "ntsc" ]; then
pnmscale $S $TMP | \
pnmpad -black -width 704 -height 480 | \
ppmntsc | \
ppmtoy4m -v 0 -n 1 -r -F 30000:1001 $SUBSAMPLINGMODE | \
mpeg2enc -f 7 -T 90 -F 4 -nn -a 2 -v 0 -o "$MPG"
else
pnmscale $S $TMP | \
pnmpad -black -width 704 -height 576 | \
ppmntsc --pal | \
ppmtoy4m -v 0 -n 1 -r -F 25:1 $SUBSAMPLINGMODE | \
mpeg2enc -f 7 -T 90 -F 3 -np -a 2 -v 0 -o "$MPG"
fi
#
# cleanup
#
rm $TMP
|