From 3f97eebd6d0c8c74c54ebbd01b49dd0649e7c4fe Mon Sep 17 00:00:00 2001 From: scop Date: Tue, 1 Jan 2008 11:41:49 +0000 Subject: Rename image_convert.sh to muggle-image-convert. git-svn-id: https://vdr-muggle.svn.sourceforge.net/svnroot/vdr-muggle/trunk/muggle-plugin@970 e10066b5-e1e2-0310-b819-94efdf66514b --- scripts/image_convert.sh | 86 -------------------------------------------- scripts/muggle-image-convert | 86 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 86 insertions(+), 86 deletions(-) delete mode 100755 scripts/image_convert.sh create mode 100755 scripts/muggle-image-convert (limited to 'scripts') diff --git a/scripts/image_convert.sh b/scripts/image_convert.sh deleted file mode 100755 index 34ed8d5..0000000 --- a/scripts/image_convert.sh +++ /dev/null @@ -1,86 +0,0 @@ -#!/bin/bash -# -# requires: *topnm, pnmpad, pnmscale, ppmntsc, ppmtoy4m, mpeg2enc, -# mktemp, awk, file -# - -# 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=$(mktemp ${TMPDIR:-/tmp}/image_convert.pnm.XXXXXX) || exit 2 -IMG=$1 -MPG=$2 - -DIR=$(dirname "$MPG") -if [ ! -d "$DIR" ]; then - mkdir -p "$DIR" || exit 2 -fi - -trap cleanup EXIT -cleanup() -{ - [ -z "$TMP" ] || rm -f "$TMP" -} - -# -# 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 - -# -# 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=(sw1)?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 -S 420mpeg2 -F 30000:1001 | \ - 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 -S 420mpeg2 -F 25:1 | \ - mpeg2enc -f 7 -T 90 -F 3 -np -a 2 -v 0 -o "$MPG" -fi diff --git a/scripts/muggle-image-convert b/scripts/muggle-image-convert new file mode 100755 index 0000000..34ed8d5 --- /dev/null +++ b/scripts/muggle-image-convert @@ -0,0 +1,86 @@ +#!/bin/bash +# +# requires: *topnm, pnmpad, pnmscale, ppmntsc, ppmtoy4m, mpeg2enc, +# mktemp, awk, file +# + +# 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=$(mktemp ${TMPDIR:-/tmp}/image_convert.pnm.XXXXXX) || exit 2 +IMG=$1 +MPG=$2 + +DIR=$(dirname "$MPG") +if [ ! -d "$DIR" ]; then + mkdir -p "$DIR" || exit 2 +fi + +trap cleanup EXIT +cleanup() +{ + [ -z "$TMP" ] || rm -f "$TMP" +} + +# +# 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 + +# +# 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=(sw1)?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 -S 420mpeg2 -F 30000:1001 | \ + 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 -S 420mpeg2 -F 25:1 | \ + mpeg2enc -f 7 -T 90 -F 3 -np -a 2 -v 0 -o "$MPG" +fi -- cgit v1.2.3