Du ser en gammel version af denne side. Se den nuværende version.

Sammenlign med nuværende Vis sidehistorik

Version 1 Næste »

This script travles a directory structure and creates thumbnails for each image and video (flv, avi, mov)

 

This requires Imagick and ffmpegthumbnailer installed

Executing the script:

./makethumbs.sh Hight

Sample

./makethumbs.sh 200

Parameters:

Height

Height of the thumbnails

Source of the Script:

#!/bin/bash
IFS=$(echo -en "\n\b")
Height=$1
ThumbsDir=$Height"pxHigh"
cd /data/images
for dir in `find . -type d | grep -v thumbs | grep -v YooIcons | grep -v miaflv_media`
do
	dir=$(echo $dir|sed 's/\.\///')
	if [ ! -d /data/images/$dir/thumbs ]
	then
		mkdir /data/images/$dir/thumbs
	fi
	cd /data/images/$dir
        NumOfPics=`ls $file | egrep -i "\.(mov|flv|avi|jpg|gif|png|bmp)$" | wc -l`
        if [ $NumOfPics -ne 0 ]
        then
		if [ ! $Height == "" ]
		then
			if [ ! -d /data/images/$dir/thumbs/$ThumbsDir ]
			then
	                	mkdir /data/images/$dir/thumbs/$ThumbsDir
			fi
		fi
		
		for pic in `ls | egrep -i "\.(jpg|gif|png)$"`
		do
			if [ ! $Height == "" ]
               		then
				#Create a thumbnail if the file does not exist
				
				if [ ! -f /data/images/$dir/thumbs/$ThumbsDir/$pic ]
				then
					/usr/bin/convert -thumbnail x$Height $pic /data/images/$dir/thumbs/$ThumbsDir/$pic
					echo "Converting $pic to /data/images/$dir/thumbs/$ThumbsDir/$pic"
				fi
			else
				#Create a default thumbnail 50px high if the file does not exist
				if [ ! -f /data/images/$dir/thumbs/$pic ]
                                then
				
					/usr/bin/convert -thumbnail x50 $pic /data/images/$dir/thumbs/$pic
                                	echo "Converting $pic to /data/images/$dir/thumbs/$pic"
				fi
			fi
		done
		for mov in `ls | egrep -i "\.(flv|avi|mov)$"`
		do
                        #Create a thumbnail if the file does not exist
                        if [ ! -f /data/images/$dir/thumbs/$ThumbsDir/$mov.jpg ]
                        then
                              	/usr/bin/ffmpegthumbnailer -i $mov -o /data/images/$dir/thumbs/$ThumbsDir/$mov.jpg -s 180 -q 10 -a
				echo "Thumbnailing video $mov to /data/images/$dir/thumbs/$ThumbsDir/$mov.jpg"
				/usr/bin/convert /data/images/$dir/thumbs/$ThumbsDir/$mov.jpg -pointsize 20 -background "#d5d5d5" -gravity Center label:"VIDEO" -append /data/images/$dir/thumbs/$ThumbsDir/$mov.jpg
                                echo "Labeling video /data/images/$dir/thumbs/$ThumbsDir/$mov.jpg"
                       	fi

                done

	fi
done
  • Ingen etiketter