5 Commits

Author SHA1 Message Date
agibert
200c20a80e Add crop support,
Add OSD sub title support,
Fix minor bugs.
2009-02-17 08:29:55 +00:00
agibert
e4e9cc18e5 - Add 4.0.0-1 release entry:
- Major code rewrite,
	- New command line interface,
	- Args major reorganisation,
	- New video quality presetings (vqual).
2009-01-06 00:17:12 +00:00
agibert
cdde792c6d - Major code rewrite,
- New command line interface,
- Major args reorganisation,
- New video quality presetings (vqual).
2009-01-06 00:16:22 +00:00
agibert
56bb6c5d46 Add multi instance support: we can call many dvd2divx in parallel in the same directory. 2008-10-07 10:11:04 +00:00
agibert
108bfe811f Add multi-thread support (even if with my mencoder I see no difference ! 8^/ ). 2007-05-10 09:56:19 +00:00
4 changed files with 296 additions and 149 deletions

View File

@@ -1,13 +1,40 @@
# $RCSfile: ReleaseNotes.txt,v $ # $RCSfile: ReleaseNotes.txt,v $
# $Revision: 1.3 $ # $Revision: 1.6 $
# $Name: $ # $Name: $
# $Date: 2005/06/13 07:44:42 $ # $Date: 2009/01/06 00:17:12 $
# $Author: agibert $ # $Author: agibert $
--------------------------------------------------------------------------------
dvd2divx V 4.0.0-1 - A. Gibert - 2000/01/05
--------------------------------------------------------------------------------
- Major code rewrite,
- New command line interface,
- Args major reorganisation,
- New video quality presetings (vqual).
--------------------------------------------------------------------------------
dvd2divx V 3.1.0-1 - A. Gibert - 2008/10/07
--------------------------------------------------------------------------------
Add multi instance support: we can call many dvd2divx in parallel in the same directory.
--------------------------------------------------------------------------------
dvd2divx V 3.0.0-1 - A. Gibert - 2007/05/10
--------------------------------------------------------------------------------
Add multi-thread support (even if with my mencoder I see no difference ! 8^/ ).
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
dvd2divx V 2.0.0-1 - A. Gibert - 2005/06/13 dvd2divx V 2.0.0-1 - A. Gibert - 2005/06/13
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------

View File

@@ -1,7 +1,15 @@
#!/bin/bash #!/bin/bash
# dvd_device divx_root divx_title dvd_title chapter angle alang slang vcodec vbr abr xsize aspect stereo asrate deint buffer apass vpass # dvd_device divx_root divx_title dvd_title chapter angle alang slang vcodec vbr abr xsize aspect stereo asrate deint buffer apass vpass threads
#---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- #--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
dvd2divx - barry_lyndon 1 1 1-24 1 fr - - - - - - - - - o - - # Mono Instance
dvd2divx - barry_lyndon 2 1 25- 1 fr - - - - - - - - - o - - #dvd2divx - barry_lyndon 1 1 1-24 1 fr - - - - - - - - - o - - -
dvd2divx - barry_lyndon 1 - - - - - lavc 920 128 480 4/3 y - n s y 2 #dvd2divx - barry_lyndon 2 1 25- 1 fr - - - - - - - - - o - - -
dvd2divx - barry_lyndon 2 - - - - - lavc 920 128 480 4/3 y - n s y 2 #dvd2divx - barry_lyndon 1 - - - - - lavc 920 128 480 4/3 y - n s y 2 4
#dvd2divx - barry_lyndon 2 - - - - - lavc 920 128 480 4/3 y - n s y 2 4
#
# Multi Instance
dvd2divx - barry_lyndon 1 1 1-24 1 fr - - - - - - - - - o - - -
dvd2divx - barry_lyndon 2 1 25- 1 fr - lavc 920 128 480 4/3 y - n s y 2 4 &
dvd2divx - barry_lyndon 1 - - - - - lavc 920 128 480 4/3 y - n s y 2 4 &
wait

View File

@@ -1,34 +1,34 @@
#!/bin/bash #!/bin/bash
# dvd_device divx_root divx_title dvd_title chapter angle alang slang vcodec vbr abr xsize aspect stereo asrate deint buffer apass vpass # dvd_device divx_root divx_title dvd_title chapter angle alang slang vcodec vbr abr xsize aspect stereo asrate deint buffer apass vpass threads
#---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- #--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
#dvd2divx /dev/cdrom1 cobra 1 10 1- 1 fr - - - - - - - - - o - - #dvd2divx /dev/cdrom1 cobra 1 10 1- 1 fr - - - - - - - - - o - - -
#dvd2divx /dev/cdrom1 cobra 2 11 1- 1 fr - - - - - - - - - o - - #dvd2divx /dev/cdrom1 cobra 2 11 1- 1 fr - - - - - - - - - o - - -
#dvd2divx /dev/cdrom1 cobra 3 12 1- 1 fr - - - - - - - - - o - - #dvd2divx /dev/cdrom1 cobra 3 12 1- 1 fr - - - - - - - - - o - - -
#dvd2divx /dev/cdrom1 cobra 4 13 1- 1 fr - - - - - - - - - o - - #dvd2divx /dev/cdrom1 cobra 4 13 1- 1 fr - - - - - - - - - o - - -
#dvd2divx /dev/cdrom1 cobra 5 14 1- 1 fr - - - - - - - - - o - - #dvd2divx /dev/cdrom1 cobra 5 14 1- 1 fr - - - - - - - - - o - - -
#dvd2divx /dev/cdrom1 cobra 6 15 1- 1 fr - - - - - - - - - o - - #dvd2divx /dev/cdrom1 cobra 6 15 1- 1 fr - - - - - - - - - o - - -
#dvd2divx - cobra 1 - - - - - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx - cobra 1 - - - - - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx - cobra 2 - - - - - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx - cobra 2 - - - - - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx - cobra 3 - - - - - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx - cobra 3 - - - - - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx - cobra 4 - - - - - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx - cobra 4 - - - - - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx - cobra 5 - - - - - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx - cobra 5 - - - - - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx - cobra 6 - - - - - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx - cobra 6 - - - - - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx /dev/cdrom1 cobra 13 10 1- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx /dev/cdrom1 cobra 13 10 1- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx /dev/cdrom1 cobra 14 11 1- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx /dev/cdrom1 cobra 14 11 1- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx /dev/cdrom1 cobra 15 12 1- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx /dev/cdrom1 cobra 15 12 1- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx /dev/cdrom1 cobra 16 13 1- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx /dev/cdrom1 cobra 16 13 1- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx /dev/cdrom1 cobra 17 14 1- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx /dev/cdrom1 cobra 17 14 1- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx /dev/cdrom1 cobra 18 15 1- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx /dev/cdrom1 cobra 18 15 1- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx /dev/cdrom1 cobra 19 10 1- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx /dev/cdrom1 cobra 19 10 1- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx /dev/cdrom1 cobra 20 10 3- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx /dev/cdrom1 cobra 20 10 3- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx /dev/cdrom1 cobra 21 10 5- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx /dev/cdrom1 cobra 21 10 5- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx /dev/cdrom1 cobra 22 10 7- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx /dev/cdrom1 cobra 22 10 7- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx /dev/cdrom1 cobra 23 10 9- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx /dev/cdrom1 cobra 23 10 9- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx /dev/cdrom1 cobra 24 10 11- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx /dev/cdrom1 cobra 24 10 11- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4
#dvd2divx /dev/cdrom1 cobra 31 10 13- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 #dvd2divx /dev/cdrom1 cobra 31 10 13- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4
dvd2divx - cobra pre2 11 1 1 fr - xvid 1000 128 480 4/3 n - y s y 2 dvd2divx - cobra pre2 11 1 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4
dvd2divx - cobra post2 11 2- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 dvd2divx - cobra post2 11 2- 1 fr - xvid 1000 128 480 4/3 n - y s y 2 4

334
dvd2divx
View File

@@ -2,12 +2,12 @@
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
# DVD2DivX # DVD2DivX
# #
# (C) 2004-2005 Arnaud G. Gibert # (C) 2004-2009 Arnaud G. Gibert
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
# $RCSfile: dvd2divx,v $ # $RCSfile: dvd2divx,v $
# $Revision: 1.3 $ # $Revision: 1.7 $
# $Name: $ # $Name: $
# $Date: 2005/06/13 07:44:42 $ # $Date: 2009/02/17 08:29:55 $
# $Author: agibert $ # $Author: agibert $
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
@@ -32,61 +32,128 @@
# Usage exemple # Usage exemple
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
# #!/bin/bash # #!/bin/bash
# # dvd_device divx_root divx_title dvd_title chapter angle alang slang vcodec vbr abr xsize aspect stereo asrate deint buffer apass vpass # # divx_root divx_title input dvd_device dvd_title chapter angle alang slang audio abr asrate stereo sub video vcodec vqual vbr crop xsize aspect deint threads
# #-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- # #-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
# # dvd2divx cobra 1 dbo /dev/cdrom1 10 1- 1 fr - - - - - - - - - - - - - - -
# # Read only # dvd2divx cobra 1 b - - - - - - fvp 128 - n - 2a xvid 3 1000 - 480 4/3 y 4
# dvd2divx /dev/cdrom1 cobra 1 10 1- 1 fr - - - - - - - - - o - -
#
# # Don't read, compress only
# dvd2divx - cobra 1 - - - - - xvid 1000 128 480 4/3 n - y s y 2
#
#-----------------------------------------------------------------------------------------------------------------------------------
dvd_device=$1 # -|/dev/dvd|...
divx_root=$2 divx_root=${1} #
divx_title=$3 divx_title=${2} #
title=$4 #------------------------------------------------------------------------------
chapter=$5 input=${3} # d|db|dbo|b (d: read directly from disk | db: bufferize and continue | dbo: bufferize only | b: read from a preexisting buffer)
angle=$6 dvd_device=${4} # -|/dev/dvd|...
alang=$7 # en|fr|... title=${5} #
slang=$8 # -|en|fr|... chapter=${6} #
vcodec=$9 # -|lavc|xvid angle=${7} #
vbr=${10} alang=${8} # en|fr|...
abr=${11} slang=${9} # -|en|fr|...|0|1|... (lang or id)
xsize=${12} # #------------------------------------------------------------------------------
aspect=${13} # -|4/3|16/9|... audio=${10} # ap|avp|fvp|n (ap: compress audio during audio pass | avp: compress audio during all video pass | fvp: compress audio during final video pass | no: use input audio stream)
stereo=${14} # y|n abr=${11} #
asrate=${15} # -|xxx (resample audio) asrate=${12} # -|xxx (resample audio)
deint=${16} # y|n stereo=${13} # y|n
bufferize=${17} # o|y|n|s (only: bufferize and stop | yes: bufferize an continue | no: read directly from disk | skip: bufferize previously done) #------------------------------------------------------------------------------
apass=${18} # o|y|n|s (only: compress and stop | yes: compress and continue | no: compress mp3 whith video | skip: mp3 previously compressed) sub=${14} # -|f|o (-: no subtitles | f: file subtitles | o: OSD subtitles)
vpass=${19} # 1|2 #------------------------------------------------------------------------------
video=${15} # 1|2a|2s|n (1: compress video in 1 pass | 2a: compress video in 2 assymetric passes | 2s: compress video in 2 symetric passes | no: use input video stream)
vcodec=${16} # -|lavc|xvid
vquality=${17} # 0|1|2|3 (0: realtime | 1: fast | 2: High quality | 3: very high quality)
vbr=${18} #
crop=${19} # -|width:height:x:y
xsize=${20} # -|...
aspect=${21} # -|4/3|16/9|...
deint=${22} # y|n
threads=${23} # -|1..
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
divx_name=$divx_root-$divx_title.avi tmpdir_name=$divx_root-$divx_title.tmp
tmp_name=$divx_root-$divx_title.vob divx_name=../$divx_root-$divx_title.avi
out_name=$divx_root-$divx_title tmp_name=../$divx_root-$divx_title.vob
out_name=../$divx_root-$divx_title
echo "device: [$dvd_device] DivX: [$divx_name] title: ($title) chapter: ($chapter) angle: ($angle) alang: ($alang) slang: ($slang)" echo "DivX: [$divx_name] title: ($title)"
echo "vcodec: [$vcodec] vbr: ($vbr) abr: ($abr) xsize: ($xsize) aspect: ($aspect) stereo: ($stereo) asrate: ($asrate) deint: ($deint)" echo "Input: [$input] device: [$dvd_device] title: ($title) chapter: ($chapter) angle: ($angle) alang: ($alang) slang: ($slang)"
echo "bufferize: ($bufferize) apass: ($apass) vpass: ($vpass)" echo "Audio: [$audio] abr: ($abr) asrate: ($asrate) stereo: ($stereo)"
echo "Sub: [$sub]"
echo "Video: [$video] vcodec: [$vcodec] vquality: [$vquality] vbr: ($vbr) crop: ($crop) xsize: ($xsize) aspect: ($aspect) deint: ($deint) threards: ($threads)"
#-----------------------------------------------------------------------------------------------------------------------------------
# DVDRip Setup
#-----------------------------------------------------------------------------------------------------------------------------------
shopt -s extglob
if [ "$dvd_device" != "-" ] if [ "$dvd_device" != "-" ]
then then
device_opt="-dvd-device $dvd_device" device_opt="-dvd-device $dvd_device"
fi fi
if [ "$slang" == "-" ] if [ "$sub" == "-" ]
then then
slang_opt="" slang_opt=""
else else
slang_opt="-slang $slang -vobsubout $out_name -vobsuboutid $slang -vobsuboutindex 0" if [ "$slang" != "-" ]
then
if [[ "$slang" == +([[:digit:]]) ]]
then
slang_opt="-sid $slang"
else
slang_opt="-slang $slang"
fi
if [ "$sub" == "f" ]
then
slang_opt+=" -vobsubout $out_name -vobsuboutid $slang -vobsuboutindex 0"
else
if [ "$sub" == "o" ]
then
slang_opt+=" -ass"
fi
fi
fi
fi
read_dvd_opt="$device_opt dvd://$title -chapter $chapter -dvdangle $angle -alang $alang $slang_opt"
read_buf_opt="$tmp_name"
case "$input"
in
d)
read_opt2="${read_dvd_opt}"
;;
db)
read_opt1="${read_dvd_opt}"
read_opt2="${read_buf_opt}"
;;
dbo)
read_opt1="${read_dvd_opt}"
;;
b)
read_opt2="${read_buf_opt}"
;;
esac
#-----------------------------------------------------------------------------------------------------------------------------------
# Audio Setup
#-----------------------------------------------------------------------------------------------------------------------------------
if [ "$asrate" == "-" ]
then
aresample=""
else
aresample="-srate $asrate -af lavcresample=$asrate"
fi fi
if [ "$stereo" == "y" ] if [ "$stereo" == "y" ]
@@ -96,95 +163,116 @@ else
stereo_mode=3 stereo_mode=3
fi fi
if [ "$asrate" == "-" ] audio_comp_opt="-oac mp3lame -lameopts cbr:br=$abr:aq=0:mode=$stereo_mode $aresample"
audio_copy_opt="-oac copy"
if [ "$audio" != "n" ]
then then
aresample="" if [ "$video" == "1" ]
then
audio_opt1="$audio_comp_opt"
else
if [ "$audio" == "avp" ]
then
audio_opt1="$audio_comp_opt"
audio_opt2="$audio_comp_opt"
else
if [ "$audio" == "fvp" ]
then
audio_opt1="$audio_copy_opt"
audio_opt2="$audio_comp_opt"
fi
fi
fi
else else
aresample="-srate $asrate -af lavcresample=$asrate" audio_opt1="$audio_copy_opt"
audio_opt2="$audio_copy_opt"
fi
#-----------------------------------------------------------------------------------------------------------------------------------
# Video Setup
#-----------------------------------------------------------------------------------------------------------------------------------
video_lavc_header_11="-ovc lavc -lavcopts vcodec=mpeg4:vbitrate=$vbr"
video_lavc_header_21="-ovc lavc -lavcopts vcodec=mpeg4:vpass=1:vbitrate=$vbr"
video_lavc_header_22="-ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vbitrate=$vbr"
video_lavc_body_0="mbd=2:turbo"
video_lavc_body_1="mbd=2:trell:v4mv:turbo"
video_lavc_body_2="mbd=2:trell:v4mv:last_pred=2:dia=-1:vmax_b_frames=2:vb_strategy=1:cmp=3:subcmp=3:precmp=0:vqcomp=0.6:turbo"
video_lavc_body_3="mbd=2:mv0:trell:v4mv:cbp:last_pred=3:predia=2:dia=2:vmax_b_frames=2:vb_strategy=1:precmp=2:cmp=2:subcmp=2:preme=2:qns=2"
video_xvid_header_11="-ovc xvid -xvidencopts bitrate=$vbr"
video_xvid_header_21="-ovc xvid -xvidencopts pass=1:bitrate=$vbr"
video_xvid_header_22="-ovc xvid -xvidencopts pass=2:bitrate=$vbr"
video_xvid_body_0="turbo:nochroma_me:notrellis:max_bframes=0:vhq=0"
video_xvid_body_1="turbo:vhq=0"
video_xvid_body_2="vhq=2:bvhq=1:chroma_opt:quant_type=mpeg"
video_xvid_body_3="chroma_opt:vhq=4:bvhq=1:quant_type=mpeg"
if [ "$video" != "n" ]
then
if [ "$video" == "1" ]
then
video_opt1=$(eval echo \${video_${vcodec}_header_11}:\${video_${vcodec}_body_${vquality}})
else
if [ "$video" == "2a" ]
then
video_opt1=$(eval echo \${video_${vcodec}_header_21}:\${video_${vcodec}_body_0})
video_opt2=$(eval echo \${video_${vcodec}_header_22}:\${video_${vcodec}_body_${vquality}})
else
video_opt1=$(eval echo \${video_${vcodec}_header_21}:\${video_${vcodec}_body_${vquality}})
fi
video_opt2=$(eval echo \${video_${vcodec}_header_22}:\${video_${vcodec}_body_${vquality}})
fi
fi
if [ "$crop" != "-" ]
then
vf_opt="-vf-add crop=$crop"
fi
if [ "$xsize" != "-" ]
then
vf_opt+=" -vf-add scale -zoom -xy $xsize"
fi fi
if [ "$deint" == "y" ] if [ "$deint" == "y" ]
then then
vf_opt="-vf-add lavcdeint" vf_opt+=" -vf-add lavcdeint"
fi
vf_opt="$vf_opt -vf-add scale -zoom -xy $xsize"
read_opt="$device_opt dvd://$title -chapter $chapter -dvdangle $angle -alang $alang $slang_opt"
audio_opt="-oac mp3lame -lameopts cbr:br=$abr:aq=0:mode=$stereo_mode $aresample"
if [ "$vcodec" == "lavc" ]
then
video_opt="-ovc lavc -lavcopts vcodec=mpeg4:vbitrate=$vbr:vhq:v4mv"
video_opt1="-ovc lavc -lavcopts vcodec=mpeg4:vpass=1:vbitrate=$vbr:vhq:v4mv"
video_opt2="-ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vbitrate=$vbr:vhq:v4mv"
else
if [ "$vcodec" == "xvid" ]
then
video_opt="-ovc xvid -xvidencopts bitrate=$vbr:chroma_me:chroma_opt:hq_ac:vhq=4"
video_opt1="-ovc xvid -xvidencopts pass=1:bitrate=$vbr:chroma_me:chroma_opt:hq_ac:vhq=4"
video_opt2="-ovc xvid -xvidencopts pass=2:bitrate=$vbr:chroma_me:chroma_opt:hq_ac:vhq=4"
else
if [ "$vcodec" != "-" ]
then
echo "invalid video codec: [$vcodec]"
exit 0
fi
fi
fi fi
if [ "$aspect" == "-" ] if [ "$aspect" == "-" ]
then then
video_opt=$video_opt":autoaspect"
video_opt1=$video_opt1":autoaspect" video_opt1=$video_opt1":autoaspect"
video_opt2=$video_opt2":autoaspect" video_opt2=$video_opt2":autoaspect"
else else
video_opt=$video_opt":aspect=$aspect"
video_opt1=$video_opt1":aspect=$aspect" video_opt1=$video_opt1":aspect=$aspect"
video_opt2=$video_opt2":aspect=$aspect" video_opt2=$video_opt2":aspect=$aspect"
fi fi
if [ "$threads" != "-" ]
#-----------------------------------------------------------------------------------------------------------------------------------
if [ "$bufferize" != "n" ]
then then
if [ "$bufferize" == "y" ] || [ "$bufferize" == "o" ] video_opt1=$video_opt1":threads=$threads"
then video_opt2=$video_opt2":threads=$threads"
echo "Bufferizing..."
mencoder $read_opt -oac copy -ovc copy -o $tmp_name >$out_name.1.log 2>&1
if [ "$bufferize" == "o" ]
then
exit 1
fi
fi
read_opt="$tmp_name"
fi fi
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
if [ "$apass" != "n" ] mkdir $tmpdir_name
then cd $tmpdir_name
if [ "$apass" == "y" ] || [ "$apass" == "o" ]
then
echo "Cleanup..."
\rm frameno.avi
echo "Compressing MP3..."
mencoder $read_opt $audio_opt -ovc frameno $vf_opt -o frameno.avi >$out_name.2.log 2>&1
fi
if [ "$apass" == "o" ]
then
exit 1
fi
audio_opt="-oac copy"
fi
@@ -196,16 +284,40 @@ echo "Cleanup..."
#-----------------------------------------------------------------------------------------------------------------------------------
# Bufferizing
#----------------------------------------------------------------------------------------------------------------------------------- #-----------------------------------------------------------------------------------------------------------------------------------
if [ "$vpass" == "1" ] if [ "$input" != "d" ] && [ "$input" != "b" ]
then then
echo "Compressing DivX..." echo "Bufferizing..."
mencoder $read_opt $audio_opt $video_opt $vf_opt -o $divx_name >$out_name.3.log 2>&1 mencoder $read_opt1 -oac copy -ovc copy -o $tmp_name >$out_name.1.log 2>&1
else
echo "Compressing DivX pass 1..."
mencoder $read_opt $audio_opt $video_opt1 $vf_opt -o $divx_name >$out_name.3.log 2>&1
echo "Compressing DivX pass 2..." if [ "$input" == "dbo" ]
mencoder $read_opt $audio_opt $video_opt2 $vf_opt -o $divx_name >$out_name.4.log 2>&1 then
exit 1
fi
fi
#-----------------------------------------------------------------------------------------------------------------------------------
# Video Compression
#-----------------------------------------------------------------------------------------------------------------------------------
if [ "$video" != "n" ]
then
if [ "$video" == "1" ]
then
echo "Compressing DivX..."
mencoder $read_opt2 $audio_opt1 $video_opt1 $vf_opt -o $divx_name >$out_name.3.log 2>&1
else
echo "Compressing DivX pass 1..."
mencoder $read_opt2 $audio_opt1 $video_opt1 $vf_opt -o /dev/null >$out_name.3.log 2>&1
echo "Compressing DivX pass 2..."
mencoder $read_opt2 $audio_opt2 $video_opt2 $vf_opt -o $divx_name >$out_name.4.log 2>&1
fi
fi fi