#!/bin/tcsh # ''''''''''''''''''''''''''''WW'WW''''WW''''''''''''WW''''' # WW WWW WWW # W WW WW WWW WW W WW WWW W WWW WW WW WW W WW WW # WW WWWW WW W WW W WW W WW W W WW WW W WW W WW WWWW # WW WW WW WW W WW W WW W WW WW W WW W WW WW # WW WWW WWW WW WW WWW W WW WW WW WW WWW # # '''''''''''''''''''''''''''''''''''''''''''''''''''''''''' # # Author : Kevin Beason # Date : 5/2/04 # E-mail : beason@cs.fsu.edu # Purpose: Simple interface to gvidcap, mencoder, and transcode. # Can be used to record a small movie, encode to divx, # reencode, and make a thumbnail. set binpath = /home/u2/users/beason/linux/bin set libpath = /home/u2/users/beason/linux/lib set reencode = 0 set filename = test.avi set bitrate = 384 # '''''''''''''''WW''''WWW''WW''''''''''''''''''''''''''WW''WW'''''''''''' # WW WW WW # WWW WWWW W WWW WW WW WWW WW WW WWW WWWW WW WW WWW # WW W WW WW W W WW WW WW WW W WWWW WW W WW W WW WW WW W WW W # WW WW WW W W WW WW WW WW W WW WW W WW W WW WW WW W WW W # WWW WW WW W WWW WWWW WW WW W WWW WW WWW WW WW WW WW W # WW # ''''''''''''''''''''''''''''''''''''''''''''''''WW'''''''''''''''''''''' if ( $#argv == 1 ) then set filename=$1 else if ( $#argv == 2 ) then set filename=$1 set bitrate=$2 else if ( $#argv == 3 && $1 == "reencode" ) then echo reencoding set reencode=1 set filename=$2 set bitrate=$3 else if ( $#argv == 3 && $1 == "thumbnail" ) then set filename = $2 set image = $3 # 'WW''WW''''''''''''''''WW'''''''''''''WW'WWW' # WW WW WW WW # WWWW WWW W WW WWWW W WWW WWW WWW WW WW # WW WW W W WW WW WW W WW W WW W W WW WW WW # WW WW W W WW WW WW W WW W WW W W WW WW WW # WW WW W WWW WW WW W WWW WW W WWW WW WWWW # # ''''''''''''''''''''''''''''''''''''''''''''' transcode -i $filename:r.mpg.recordMovie -y im -F png -c 0-1 -o recordMovie convert -geometry 250x250 recordMovie000000.png $image rm recordMovie000000.png echo echo Saved thumbnail to $image. echo exit else echo echo USAGE: echo echo "To record (and compress) a movie:" echo echo " $0 [ bitrate = $bitrate ]" echo echo "After you have made a movie, you can:" echo echo " Re-compress it (without additional loss):" echo echo " $0 reencode [ bitrate = $bitrate ]" echo echo " Make a thumbnail:" echo echo " $0 thumbnail " echo exit endif # '''''''''''WW''WW'' # WW WW # WWW WWW WWWW WWW # WW W W WW WW WW W # WW W W WW WW WW W # WWW WWW WW WW W # WW # WW''''''''''''''''' if ( $?PATH ) then setenv PATH ${binpath}:$PATH else setenv PATH $binpath endif if ( $?LD_LIBRARY_PATH ) then setenv LD_LIBRARY_PATH ${libpath}:$LD_LIBRARY_PATH else setenv LD_LIBRARY_PATH $libpath endif rehash # 'WWW'''''''''''''WW'''''''''''''''' # WW W WW # WW WWW WWW WWWW W WW W WW WW # WW W WW WW W WW W WW WW WWWW # WW W W WW WW W WW W WW WW WW # WWW WWW WWW WW WWW WW WWW # WW # '''''''''''WW'''''''''''''''''''''' if ( $reencode == 0 ) then echo echo Position the recording window and press record echo to record a movie. When you are done, close echo the program "(gvidcap)" to continue. echo # capture movie gvidcap --fps 24 --frames 0 --file $filename:r.mpg.recordMovie --cap_geometry 512x416+100+100 endif # WWWWW'''''''''''''''''''WW''''' # WW WW # WWWW WWW WWW WW WWW WW # WW WW W WW W WW W W WW WWWW # WW WW W WW WW W W WW WW # WWWWW WW W WWW WW WWW WWW # # ''''''''''''''''''''''''''''''' echo echo Compressing movie. This requires two passes. Please wait. echo # encode movie mencoder $filename:r.mpg.recordMovie -o $filename -ovc lavc -lavcopts vcodec=mpeg4:vpass=1:vbitrate=$bitrate mencoder $filename:r.mpg.recordMovie -o $filename -ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vbitrate=$bitrate rm divx2pass.log echo echo Compression done. File size: echo ls -alF $filename >/dev/null du -h $filename echo echo To re-compress movie at a bit rate different echo than the current one "($bitrate)", do: echo echo $0 reencode $filename BITRATE echo