Mpeg 2 Converter

Publicado por Carlos Alberto (ķltima atualizaÁ„o em 08/12/2010)

[ Hits: 4.356 ]

Download Mp2_Converter.kmdr




Ferramenta em kmdr (kommander) para conversão de formatos de vídeo para mpeg-dvd ou dvd para avi/mkv.

  



Esconder cůdigo-fonte

#!/usr/bin/kmdr-executor
<!DOCTYPE UI><UI version="3.0" stdsetdef="1">
<class>Mp2_ConverterVIDEO</class>
<author>CarlosXLinux@gmail.com</author>
<license>GPL2</license>
<version>0.03</version>
<widget class="Dialog">
††††<property name="name">
††††††††<cstring>Mp2_ConverterVIDEO</cstring>
††††</property>
††††<property name="geometry">
††††††††<rect>
††††††††††††<x>0</x>
††††††††††††<y>0</y>
††††††††††††<width>761</width>
††††††††††††<height>592</height>
††††††††</rect>
††††</property>
††††<property name="caption">
††††††††<string>MPEG Converter</string>
††††</property>
††††<property name="icon">
††††††††<pixmap>image0</pixmap>
††††</property>
††††<property name="associations" stdset="0">
††††††††<stringlist>
††††††††††††<string></string>
††††††††††††<string>@record.setVisible(false)
@sizecalc.execute
@forEach(T, "NTSC 720x480\nNTSC 704x480\nNTSC 352x480\nNTSC 352x240\nPAL 720x576\nPAL 704x576\nPAL 352x576\nPAL 352x288")
@tela.addUniqueItem(@T)
@end
</string>
††††††††††††<string></string>
††††††††</stringlist>
††††</property>
††††<property name="useShebang">
††††††††<bool>true</bool>
††††</property>
††††<grid>
††††††††<property name="name">
††††††††††††<cstring>unnamed</cstring>
††††††††</property>
††††††††<property name="margin">
††††††††††††<number>11</number>
††††††††</property>
††††††††<property name="spacing">
††††††††††††<number>6</number>
††††††††</property>
††††††††<widget class="QLayoutWidget" row="9" column="0" rowspan="1" colspan="15">
††††††††††††<property name="name">
††††††††††††††††<cstring>Layout1</cstring>
††††††††††††</property>
††††††††††††<grid>
††††††††††††††††<property name="name">
††††††††††††††††††††<cstring>unnamed</cstring>
††††††††††††††††</property>
††††††††††††††††<property name="margin">
††††††††††††††††††††<number>0</number>
††††††††††††††††</property>
††††††††††††††††<property name="spacing">
††††††††††††††††††††<number>6</number>
††††††††††††††††</property>
††††††††††††††††<widget class="ProgressBar" row="0" column="1">
††††††††††††††††††††<property name="name">
††††††††††††††††††††††††<cstring>PP_2</cstring>
††††††††††††††††††††</property>
††††††††††††††††††††<property name="minimumSize">
††††††††††††††††††††††††<size>
††††††††††††††††††††††††††††<width>0</width>
††††††††††††††††††††††††††††<height>25</height>
††††††††††††††††††††††††</size>
††††††††††††††††††††</property>
††††††††††††††††††††<property name="maximumSize">
††††††††††††††††††††††††<size>
††††††††††††††††††††††††††††<width>32767</width>
††††††††††††††††††††††††††††<height>25</height>
††††††††††††††††††††††††</size>
††††††††††††††††††††</property>
††††††††††††††††††††<property name="totalSteps">
††††††††††††††††††††††††<number>100</number>
††††††††††††††††††††</property>
††††††††††††††††††††<property name="associations" stdset="0">
††††††††††††††††††††††††<stringlist>
††††††††††††††††††††††††††††<string></string>
††††††††††††††††††††††††</stringlist>
††††††††††††††††††††</property>
††††††††††††††††††††<property name="toolTip" stdset="0">
††††††††††††††††††††††††<string>Progresso total</string>
††††††††††††††††††††</property>
††††††††††††††††</widget>
††††††††††††††††<widget class="ProgressBar" row="0" column="0">
††††††††††††††††††††<property name="name">
††††††††††††††††††††††††<cstring>PP_1</cstring>
††††††††††††††††††††</property>
††††††††††††††††††††<property name="minimumSize">
††††††††††††††††††††††††<size>
††††††††††††††††††††††††††††<width>0</width>
††††††††††††††††††††††††††††<height>25</height>
††††††††††††††††††††††††</size>
††††††††††††††††††††</property>
††††††††††††††††††††<property name="maximumSize">
††††††††††††††††††††††††<size>
††††††††††††††††††††††††††††<width>32767</width>
††††††††††††††††††††††††††††<height>25</height>
††††††††††††††††††††††††</size>
††††††††††††††††††††</property>
††††††††††††††††††††<property name="associations" stdset="0">
††††††††††††††††††††††††<stringlist>
††††††††††††††††††††††††††††<string></string>
††††††††††††††††††††††††</stringlist>
††††††††††††††††††††</property>
††††††††††††††††††††<property name="toolTip" stdset="0">
††††††††††††††††††††††††<string>Progresso do arquivo.</string>
††††††††††††††††††††</property>
††††††††††††††††</widget>
††††††††††††</grid>
††††††††</widget>
††††††††<spacer row="8" column="9" rowspan="1" colspan="2">
††††††††††††<property name="name">
††††††††††††††††<cstring>Spacer2</cstring>
††††††††††††</property>
††††††††††††<property name="orientation">
††††††††††††††††<enum>Horizontal</enum>
††††††††††††</property>
††††††††††††<property name="sizeType">
††††††††††††††††<enum>Expanding</enum>
††††††††††††</property>
††††††††††††<property name="sizeHint">
††††††††††††††††<size>
††††††††††††††††††††<width>52</width>
††††††††††††††††††††<height>0</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††</spacer>
††††††††<widget class="Table" row="1" column="0" rowspan="5" colspan="14">
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>Arquivo</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>Volume (M)</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>Tempo (s)</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>Tela</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>Frame Rate (fps)</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>Aspect</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>V. Codec</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>V. Bit Rate (Kb)</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>A. Codec</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>A. Bit Rate (Kb)</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>A. Rate (Hz)</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>A. Ling.</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>S. Ling.</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>Titulo</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<column>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>Pasta</string>
††††††††††††††††</property>
††††††††††††</column>
††††††††††††<property name="name">
††††††††††††††††<cstring>Playlist</cstring>
††††††††††††</property>
††††††††††††<property name="numRows">
††††††††††††††††<number>0</number>
††††††††††††</property>
††††††††††††<property name="numCols">
††††††††††††††††<number>15</number>
††††††††††††</property>
††††††††††††<property name="selectionMode">
††††††††††††††††<enum>Single</enum>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string></string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††††††<property name="toolTip" stdset="0">
††††††††††††††††<string>Lista de arquivos a serem convertidos.</string>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="ExecButton" row="3" column="14">
††††††††††††<property name="name">
††††††††††††††††<cstring>adiciona3</cstring>
††††††††††††</property>
††††††††††††<property name="minimumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>40</width>
††††††††††††††††††††<height>40</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="maximumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>40</width>
††††††††††††††††††††<height>40</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="focusPolicy">
††††††††††††††††<enum>NoFocus</enum>
††††††††††††</property>
††††††††††††<property name="text">
††††††††††††††††<string></string>
††††††††††††</property>
††††††††††††<property name="accel">
††††††††††††††††<number>4152</number>
††††††††††††</property>
††††††††††††<property name="iconSet">
††††††††††††††††<iconset>image1</iconset>
††††††††††††</property>
††††††††††††<property name="flat">
††††††††††††††††<bool>true</bool>
††††††††††††</property>
††††††††††††<property name="populationText">
††††††††††††††††<string></string>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string>#!/bin/bash
DDK="dcop @dcopid KommanderIf";
SCT="setCellText";
PL="Playlist"; c=0; 
enall(){
for m in GB{0,1,2,3,4,5,6,7,8} convert adiciona adiciona2 adiciona3 $PL play remove tela vbit abit; do
†††$DDK $SE $m $1;
done
}
enall false;
DLST="$(awk '/name|hd[a-z]|sr[0-9]|scd[0-9]/{for (i=NF;i>=3;i--) { print $i }}' /proc/sys/dev/cdrom/info 2>/dev/null)";
for i in $DLST; do
†††TITLE="$(lsdvd -q "/dev/$i" 2>/dev/null | awk '/Longest track:/{ print $3 }')";
†††FILES="/dev/$i";
†††if [ -n "$TITLE" ]; then
††††††DISC_TITLE="$(lsdvd -q "$FILES" | awk '/Disc.*Title:/{for (i=3;i<=NF;i++) { print $i }}')";
††††††FLST="$i $DISC_TITLE";
††††††c="$[c+1]";
†††fi
done
if [ "$[c]" != "1" ]; then
†††FILES="/dev/$(kdialog --menu "Escolha a unidade:" $FLST)";
†††TITLE="$(lsdvd -q "$FILES" 2>/dev/null | awk '/Longest track:/{ print $3 }')";
†††DISC_TITLE="$(lsdvd -q "$FILES" | awk '/Disc.*Title:/{for (i=3;i<=NF;i++) { print $i }}')";
fi
if [ -n "$FILES" -a -n "$TITLE" ]; then
†††n="$($DDK rowCount $PL)"; [ ! -n "$n" ] && n="0";
†††$DDK insertRow $PL $n 1;
†††$DDK $SCT $PL $n 0 "$DISC_TITLE";
†††V="$(lshal -u "volume_label_$DISC_TITLE" | awk '/volume.size/{ print $3 "/1024" }' | bc)";
†††$DDK $SCT $PL $n 1 "$V";
†††$DDK $SCT $PL $n 14 "$FILES";
†††ID_FILE="$(mplayer dvd://$TITLE -dvd-device "$FILES" -vo null -ao null -endpos 0 -identify 2>/dev/null 2>&1 | awk '/ID_AUDIO|ID_VIDEO|ID_DEMUXER|ID_LENGTH|ID_AID_.*_LANG/')";
†††ID_DVD_AUDIO="$(lsdvd -q -x -t$TITLE "$FILES" | tr -d ':,-' | awk '/Audio.*Language/{ print $1 $2 "_" $4 "_" $5 "_" $7 "_" $9 " " $1 $2 "_" $4 "_" $5 "_" $7 "_" $9 }')";
†††ID_DVD_SUBS="$(lsdvd -q -x -t$TITLE "$FILES" | tr -d ':,-' | awk '/Subtitle.*Language/{ print $1 $2 "_" $4 "_" $5 " " $1 $2 "_" $4 "_" $5 }')";
†††declare -t $ID_FILE;
†††c=0; for n in $ID_DVD_AUDIO; do c="$[c+1]"; done;
†††if [ "$[c/2]" != "1" ]; then ID_DVD_AUDIO="$(kdialog --menu "Linguagens encontradas:" $ID_DVD_AUDIO | tr '_' ' ')"; fi;
†††$DDK $SCT $PL $n 11 "$(echo $ID_DVD_AUDIO | awk '{ print $2 }')";
†††ID_AUDIO_CODEC="$(echo $ID_DVD_AUDIO | awk '{ print $4 }')";
†††ID_AUDIO_RATE="$(echo $ID_DVD_AUDIO | awk '{ print $5 }')";
†††c=0; for n in $ID_DVD_SUBS; do c="$[c+1]"; done;
†††if [ "$[c/2]" != "1" ]; then ID_DVD_SUBS="$(kdialog --menu "Legendas encontradas:" nenhum nenhum $ID_DVD_SUBS | tr '_' ' ')"; fi;
†††$DDK $SCT $PL $n 12 "$(echo $ID_DVD_SUBS | awk '{ print $2 }')";
†††$DDK $SCT $PL $n 2 "$ID_LENGTH";
†††$DDK $SCT $PL $n 3 "$ID_VIDEO_WIDTH:$ID_VIDEO_HEIGHT";
†††$DDK $SCT $PL $n 4 "$ID_VIDEO_FPS";
†††$DDK $SCT $PL $n 5 "$ID_VIDEO_ASPECT";
†††$DDK $SCT $PL $n 6 "$ID_VIDEO_CODEC";
†††$DDK $SCT $PL $n 7 "$[ID_VIDEO_BITRATE/1000]";
†††$DDK $SCT $PL $n 8 "$ID_AUDIO_CODEC";
†††$DDK $SCT $PL $n 9 "$[ID_AUDIO_BITRATE/1000]";
†††$DDK $SCT $PL $n 10 "$ID_AUDIO_RATE";
†††$DDK $SCT $PL $n 13 "$DISC_TITLE";
†††TOTAL="$[$($DDK text total | awk '{ print $2 }')+$(echo $ID_LENGTH | cut -f1 -d.)]";
†††HH="$[$[TOTAL-$[TOTAL-$[$[TOTAL/60]*60]]]/3600]";
†††MM="$[$[$[TOTAL-$[TOTAL-$[$[TOTAL/60]*60]]]/60]-$[$[$[TOTAL-$[TOTAL-$[$[TOTAL/60]*60]]]/3600]*60]]"; 
†††SS="$[TOTAL-$[$[TOTAL/60]*60]]"; 
†††[ "$HH" -lt "10" ] && HH="0$HH"; [ "$MM" -lt "10" ] && MM="0$MM"; [ "$SS" -lt "10" ] && SS="0$SS"; 
†††$DDK setText total "Total: $TOTAL s - $HH:$MM:$SS";
†††VBITS="$($DDK text vbit | tr -d ':[alpha]:')";
†††ABITS="$($DDK text abit | tr -d ':[alpha]:')";
†††SIZE="$(echo "scale=2; ${TOTAL}*$[VBITS]/8+${TOTAL}*2*$[ABITS]/13" | bc -l)";
†††$DDK setText size "Estimado: $(echo "scale=2; ${SIZE}/1024" | bc -l )MB";
†††enall true;
fi;
enall true;
</string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††††††<property name="toolTip" stdset="0">
††††††††††††††††<string>Inserir um dvd inserido numa unidade a lista.(F9)</string>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="Label" row="8" column="2">
††††††††††††<property name="name">
††††††††††††††††<cstring>Label7</cstring>
††††††††††††</property>
††††††††††††<property name="maximumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>50</width>
††††††††††††††††††††<height>30</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="text">
††††††††††††††††<string>V Bits:</string>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string></string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="ExecButton" row="5" column="14">
††††††††††††<property name="name">
††††††††††††††††<cstring>remove</cstring>
††††††††††††</property>
††††††††††††<property name="minimumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>40</width>
††††††††††††††††††††<height>40</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="maximumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>40</width>
††††††††††††††††††††<height>40</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="focusPolicy">
††††††††††††††††<enum>NoFocus</enum>
††††††††††††</property>
††††††††††††<property name="text">
††††††††††††††††<string></string>
††††††††††††</property>
††††††††††††<property name="pixmap">
††††††††††††††††<pixmap>image2</pixmap>
††††††††††††</property>
††††††††††††<property name="accel">
††††††††††††††††<number>4154</number>
††††††††††††</property>
††††††††††††<property name="flat">
††††††††††††††††<bool>true</bool>
††††††††††††</property>
††††††††††††<property name="populationText">
††††††††††††††††<string></string>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string>#!/bin/bash
DDK="dcop @dcopid KommanderIf";
enall(){
for m in GB{0,1,2,3,4,5,6,7,8} convert adiciona adiciona2 adiciona3 $PL play remove tela vbit abit; do
†††$DDK $SE $m $1;
done
}
enall false;
declare -t $($DDK selection Playlist | awk -F',' '{ print "IN=" $1 " ON=" $3 }'); 
timerrecal(){
†††TOTAL="$[$($DDK text total | tr -d 's' | awk '{ print $2 }')-$($DDK cellText Playlist $[a] 2 | cut -f1 -d.)]";
†††HH="$[$[TOTAL-$[TOTAL-$[$[TOTAL/60]*60]]]/3600]";
†††MM="$[$[$[TOTAL-$[TOTAL-$[$[TOTAL/60]*60]]]/60]-$[$[$[TOTAL-$[TOTAL-$[$[TOTAL/60]*60]]]/3600]*60]]"; 
†††SS="$[TOTAL-$[$[TOTAL/60]*60]]"; 
†††[ "$HH" -lt "10" ] && HH="0$HH"; [ "$MM" -lt "10" ] && MM="0$MM"; [ "$SS" -lt "10" ] && SS="0$SS"; 
†††$DDK setText total "Total: ${TOTAL}s - $HH:$MM:$SS";
 }
if [ "$[IN]" != "-1" -a "$[ON]" != "-1" ]; then
††††for ((a=$[IN];a<=$[ON];a++)); do timerrecal; done
††††$DDK removeRow Playlist $[IN] $[1+ON-IN];
else
††††for ((a=0;a<10;a++)); do timerrecal; done
††††$DDK removeRow Playlist 0 10;
fi
VBITS="$($DDK text vbit | tr -d ':[alpha]:')";
ABITS="$($DDK text abit | tr -d ':[alpha]:')";
SIZE="$(echo "scale=2; ${TOTAL}*$[VBITS]/8+${TOTAL}*2*$[ABITS]/13" | bc -l)";
$DDK setText size "Estimado: $(echo "scale=2; ${SIZE}/1024" | bc -l )MB";
enall true;
</string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††††††<property name="toolTip" stdset="0">
††††††††††††††††<string>Remove o arquivo selecionado da lista.(F11)</string>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="Label" row="8" column="0">
††††††††††††<property name="name">
††††††††††††††††<cstring>Label9</cstring>
††††††††††††</property>
††††††††††††<property name="maximumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>40</width>
††††††††††††††††††††<height>30</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="text">
††††††††††††††††<string>Tela:</string>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string></string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="StatusBar" row="10" column="0" rowspan="1" colspan="15">
††††††††††††<property name="name">
††††††††††††††††<cstring>DISPLAY</cstring>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="ExecButton" row="1" column="14">
††††††††††††<property name="name">
††††††††††††††††<cstring>adiciona</cstring>
††††††††††††</property>
††††††††††††<property name="minimumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>40</width>
††††††††††††††††††††<height>40</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="maximumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>40</width>
††††††††††††††††††††<height>40</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="focusPolicy">
††††††††††††††††<enum>NoFocus</enum>
††††††††††††</property>
††††††††††††<property name="text">
††††††††††††††††<string></string>
††††††††††††</property>
††††††††††††<property name="accel">
††††††††††††††††<number>4150</number>
††††††††††††</property>
††††††††††††<property name="iconSet">
††††††††††††††††<iconset>image3</iconset>
††††††††††††</property>
††††††††††††<property name="flat">
††††††††††††††††<bool>true</bool>
††††††††††††</property>
††††††††††††<property name="populationText">
††††††††††††††††<string></string>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string>#!/bin/bash
DDK="dcop @dcopid KommanderIf";
SCT="setCellText";
PL="Playlist";
enall(){
for m in GB{0,1,2,3,4,5,6,7,8} convert adiciona adiciona2 adiciona3 $PL play remove tela vbit abit; do
†††$DDK $SE $m $1;
done
}
enall false;
$DDK clear mpinfo;
$DDK clear mplayernfo;
ARCHIVES="$(kdialog --multiple --separate-output --getopenfilename "$HOME" '*.[fm][lpk][veg4] *.[awoi][vmgs][ivmo] *.rpm *.rmv *.rmvb' | sed -e 's/ /##SPACE##/g' | sort -f -r)";
insertName(){
$DDK insertRow $PL $n 1;
V="$(basename "$1")";
$DDK $SCT $PL $n 0 "$V";
DISC_TITLE="$(echo "$V" | sed -e 's/.[mM][pP][eE][gG4]//g; s/.[fF][lL][vV]//g; s/.[oO][gG][mM]//g; s/.[mM][kK][vV]//g; s/.[mM][pP][gG4]//g; s/.[aA][vV][iI]//g; s/.[wW][mM][vV]//g; s/.[rR][mM][vV][bB]//g; s/.[rR][mM][vV]//g; s/.[rR][pP][mM]//g; s/.[vV][oO][bB]//g; s/.[iI][sS][oO]//g')";
V="$(du -s -h -k "$1" | awk '{ print $1 }')";
$DDK $SCT $PL $n 1 "$V";
V="$(dirname "$1")";
$DDK $SCT $PL $n 14 "$V";
}
ncounter(){
VAR="$1"; 
m=""; 
n=0; 
for i in $VAR; do 
†††n=$[n+1]; 
†††m="$m $n"; 
done; 
echo $m
}
addfiles(){
FILES="$1";
if [ -n "$FILES" ]; then
n="$($DDK rowCount $PL 2>/dev/null)"; [ ! -n "$n" ] && n="0";
insertName "$FILES";
case "$FILES" in
*.[aA][vV][iI] | *.[wW][mM][vV] | *.[mM][kK][vV] | *.[fF][lL][vV] | *.[oO][gG][mM] | *.[rR][mM][vV] | *.[rR][mM][vV][bB] | *.[rR][pP][mM] | *.[mM][pP][gG4] | *.[mM][pP][eE][gG])
†††eval "$(mplayer "$FILES" -vo null -ao null -endpos 0 -identify 2>/dev/null 2>&1 | awk '/ID_VIDEO|ID_AUDIO|ID_SEEKABLE|ID_LENGTH|ID_DEMUXER|ID_AID_.*_LANG/')";
†††ID_FILE_AUDIO="$(mplayer "$FILES" -vo null -ao null -endpos 0 -identify 2>/dev/null 2>&1 | awk '/Audio.*stream/{ print $6 }')";
†††case "$FILES" in
†††*.mkv)
††††††eval "$(mkvmerge -i "$FILES" | awk '/video/{ print "ID_VIDEO_CODEC=" $5 }' | tr -d '()')";
††††††eval "$(mkvmerge -i "$FILES" | awk '/audio/{ print "ID_AUDIO_CODEC=" $5 }' | tr -d '()')";
††††††MER="$(mkvmerge -i "$FILES" | awk '/audio/{ print $3 }')";
††††††ID_FILE_AUDIO="$(ncounter "$MER")";
†††;;
†††esac
†††if [ ! -n "$(echo "$ID_VIDEO_ASPECT" | tr -d '0.')" ]; then ID_VIDEO_ASPECT="$(echo "scale=5; $ID_VIDEO_WIDTH/$ID_VIDEO_HEIGHT" | bc -l)"; fi
†††if [ -n "$(echo $ID_FILE_AUDIO | grep 2)" ]; then
††††††for i in $ID_FILE_AUDIO; do ID_FILE_AUDIO="$(echo $ID_FILE_AUDIO | sed "s/$i/\"$i\" \"$i\"/g")"; done
††††††V="$(kdialog --menu "Linguagens encontradas:" $ID_FILE_AUDIO)";
††††††$DDK $SCT $PL $n 11 "$V";
†††else $DDK $SCT $PL $n 11 $ID_AUDIO_ID; fi;
†††LFS=""; 
†††if [ -f "$($DDK cellText $PL $n 14)/${DISC_TITLE}.srt" ]; then
††††††LFS="${DISC_TITLE}.srt";
†††elif [ -f "$($DDK cellText $PL $n 14)/${DISC_TITLE}.ass" ]; then
††††††LFS="${DISC_TITLE}.ass";
†††fi
†††c=0; for n in $LFS; do c="$[c+1]"; done;
†††if [ -n "$LFS" ]; then 
††††††if [ "$[c]" != "1" ]; then 
†††††††††for i in $LFS; do 
††††††††††††l="$(echo "$i" | sed -e 's/##SPACE##/ /g')";
††††††††††††LFS="$(echo "$LFS" | sed "s/$i/\"$l\" \"$l\"/g")"; 
†††††††††done;
†††††††††V="$(kdialog --menu "Legendas encontradas:" nenhum nenhum $LFS)"; 
††††††else
†††††††††V="$(echo $LFS | sed -e 's/##SPACE##/ /g')";
††††††fi
††††††$DDK $SCT $PL $n 12 "$V";
†††else
††††††$DDK $SCT $PL $n 12 nenhum;
†††fi
;;
*.[iI][sS][oO]|*hd[a-z]|*sr[0-9]|*scd[0-9])
†††TITLE="$(lsdvd -q "$FILES" | awk '/Longest track:/{ print $3 }')";
†††DISC_TITLE="$(lsdvd -q "$FILES" | awk '/Disc.*Title:/{for (i=3;i<=NF;i++) { print $i }}')";
†††eval "$(mplayer dvd://$TITLE -dvd-device "$FILES" -vo null -ao null -endpos 0 -identify 2>/dev/null 2>&1 | awk '/ID_AUDIO|ID_VIDEO|ID_DEMUXER|ID_LENGTH|ID_AID_.*_LANG/')";
†††ID_DVD_AUDIO="$(lsdvd -q -x -t$TITLE "$FILES" | tr -d ':,-' | awk '/Audio.*Language/{ print $1 $2 "_" $4 "_" $5 "_" $7 "_" $9 " " $1 $2 "_" $4 "_" $5 "_" $7 "_" $9 }')";
†††ID_DVD_SUBS="$(lsdvd -q -x -t$TITLE "$FILES" | tr -d ':,-' | awk '/Subtitle.*Language/{ print $1 $2 "_" $4 "_" $5 " " $1 $2 "_" $4 "_" $5 }')";
†††c=0; for n in $ID_DVD_AUDIO; do c="$[c+1]"; done;
†††if [ "$[c/2]" != "1" ]; then ID_DVD_AUDIO="$(kdialog --menu "Linguagens encontradas:" $ID_DVD_AUDIO | tr '_' ' ')"; fi;
†††$DDK $SCT $PL $n 11 "$(echo $ID_DVD_AUDIO | awk '{ print $2 }')";
†††ID_AUDIO_CODEC="$(echo $ID_DVD_AUDIO | awk '{ print $4 }')";
†††ID_AUDIO_RATE="$(echo $ID_DVD_AUDIO | awk '{ print $5 }')";
†††c=0; for n in $ID_DVD_SUBS; do c="$[c+1]"; done;
†††if [ "$[c/2]" != "1" ]; then ID_DVD_SUBS="$(kdialog --menu "Legendas encontradas:" nenhum nenhum $ID_DVD_SUBS | tr '_' ' ')"; fi;
†††$DDK $SCT $PL $n 12 "$(echo $ID_DVD_SUBS | awk '{ print $2 }')";
;;
esac
†††$DDK $SCT $PL $n 2 "$ID_LENGTH";
†††$DDK $SCT $PL $n 3 "$ID_VIDEO_WIDTH:$ID_VIDEO_HEIGHT";
†††$DDK $SCT $PL $n 4 "$ID_VIDEO_FPS";
†††$DDK $SCT $PL $n 5 "$ID_VIDEO_ASPECT";
†††$DDK $SCT $PL $n 6 "$ID_VIDEO_CODEC";
†††$DDK $SCT $PL $n 7 "$[ID_VIDEO_BITRATE/1000]";
†††$DDK $SCT $PL $n 8 "$ID_AUDIO_CODEC";
†††$DDK $SCT $PL $n 9 "$[ID_AUDIO_BITRATE/1000]";
†††$DDK $SCT $PL $n 10 "$ID_AUDIO_RATE";
†††DISC_TITLE="$(echo "$DISC_TITLE"††| tr -d '(){}[]+!?:')";
†††$DDK $SCT $PL $n 13 "$DISC_TITLE";
†††TOTAL="$[$($DDK text total | tr -d 's' | awk '{ print $2 }')+$(echo $ID_LENGTH | cut -f1 -d.)]";
†††HH="$[$[TOTAL-$[TOTAL-$[$[TOTAL/60]*60]]]/3600]";
†††MM="$[$[$[TOTAL-$[TOTAL-$[$[TOTAL/60]*60]]]/60]-$[$[$[TOTAL-$[TOTAL-$[$[TOTAL/60]*60]]]/3600]*60]]"; 
†††SS="$[TOTAL-$[$[TOTAL/60]*60]]"; 
†††[ "$HH" -lt "10" ] && HH="0$HH"; [ "$MM" -lt "10" ] && MM="0$MM"; [ "$SS" -lt "10" ] && SS="0$SS"; 
†††$DDK setText total "Total: ${TOTAL}s - $HH:$MM:$SS";
†††VBITS="$($DDK text vbit | tr -d ':[alpha]:')";
†††ABITS="$($DDK text abit | tr -d ':[alpha]:')";
†††SIZE="$(echo "scale=2; ${TOTAL}*$[VBITS]/8+${TOTAL}*2*$[ABITS]/13" | bc -l)";
†††$DDK setText size "Estimado: $(echo "scale=2; ${SIZE}/1024" | bc -l )MB";
†††enall true;
fi;
}
for A in $ARCHIVES; do
†††F="$(echo "$A" | sed -e 's/##SPACE##/ /g')";
†††case $A in
†††††††*.[iI][sS][oO]|*hd[a-z]|*sr[0-9]|*scd[0-9])†††
††††††if lsdvd -q "$F" 2>/dev/null; then
†††††††††addfiles "$F";
††††††else
†††††††††kdialog --error "Erro.\nNao foi possivel abrir o arquivo talvez nao seja imagem de um DVD.";
††††††fi
†††††††;;
†††††††*)
††††††addfiles "$F";
†††††††;;
†††esac
done
enall true;
</string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††††††<property name="toolTip" stdset="0">
††††††††††††††††<string>Inserir arquivos na lista. (F7)</string>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="Label" row="8" column="4" rowspan="1" colspan="2">
††††††††††††<property name="name">
††††††††††††††††<cstring>Label7_2</cstring>
††††††††††††</property>
††††††††††††<property name="maximumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>50</width>
††††††††††††††††††††<height>30</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="text">
††††††††††††††††<string>A. Bits:</string>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string></string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="ExecButton" row="4" column="14">
††††††††††††<property name="name">
††††††††††††††††<cstring>play</cstring>
††††††††††††</property>
††††††††††††<property name="minimumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>40</width>
††††††††††††††††††††<height>40</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="maximumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>40</width>
††††††††††††††††††††<height>40</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="focusPolicy">
††††††††††††††††<enum>NoFocus</enum>
††††††††††††</property>
††††††††††††<property name="text">
††††††††††††††††<string></string>
††††††††††††</property>
††††††††††††<property name="accel">
††††††††††††††††<number>4153</number>
††††††††††††</property>
††††††††††††<property name="iconSet">
††††††††††††††††<iconset>image4</iconset>
††††††††††††</property>
††††††††††††<property name="flat">
††††††††††††††††<bool>true</bool>
††††††††††††</property>
††††††††††††<property name="populationText">
††††††††††††††††<string></string>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string>#!/bin/bash
ADLAY="`echo "0.1*@adelay.text" | bc -l`";
fcalc(){
TOTAL="$(echo "scale=$2; $1" | bc -l)";
[ "$2" != "0" ] && echo $TOTAL || echo $TOTAL | cut -d. -f1;
}
DDK="dcop @dcopid KommanderIf";
enall(){
for m in GB{0,1,2,3,4,5,6,7,8} convert adiciona adiciona2 adiciona3 $PL play remove tela vbit abit; do
†††$DDK $SE $m $1;
done
}
enall false;
if [ "$IN" != "-1" ]; then
†††IN="$($DDK currentRow Playlist)";
†††APC="$($DDK cellText Playlist $IN 5)";
†††VF1="$($DDK cellText Playlist $IN 3 | cut -d: -f2)";
†††HF1="$($DDK cellText Playlist $IN 3 | cut -d: -f1)";
†††case $($DDK selection tela) in
††††††NTSC*|PAL*)
†††††††††VF2="$($DDK selection tela | awk '{ print $2 }' | cut -dx -f2)";
†††††††††HF2="$($DDK selection tela | awk '{ print $2 }' | cut -dx -f1)";
††††††;;
††††††*)
†††††††††VF2="$($DDK selection tela | cut -dx -f2)";
†††††††††HF2="$($DDK selection tela | cut -dx -f1)";
††††††;;
†††esac
†††NV="$(fcalc "$HF2/$APC" 0)";
†††if [ "@wide.checked" == "0" -a "@fill.checked" == "0" ] || [ "@wide.checked" == "1" -a "@fill.checked" == "1" ]; then
†††††††if [ "$NV" -lt "405" -o "$NV" == "405" ]; then ASPECT="16/9"; else ASPECT="4/3"; fi;
†††††††EXPAND="expand=$HF1:::::$ASPECT,scale=$HF2:$VF2";
†††elif [ "@wide.checked" == "1" -a "@fill.checked" == "0" ]; then
†††††††ASPECT="16/9"; 
†††††††if [ "$NV" -lt "405" -o "$NV" == "405" ]; then 
††††††††††EXPAND="expand=$HF1:::::$ASPECT,scale=$HF2:$VF2";
†††††††else 
††††††††††VF="$(fcalc "9*$HF1/16" 0)"; 
††††††††††EXPAND="crop=$HF1:$VF,scale=$HF2:$VF2";
†††††††fi;
†††elif [ "@wide.checked" == "0" -a "@fill.checked" == "1" ]; then
†††††††ASPECT="4/3"; 
†††††††if [ "$NV" -lt "405" -o "$NV" == "405" ]; then 
††††††††††EXPAND="expand=$HF1:::::$ASPECT,scale=$HF2:$VF2";
†††††††else 
††††††VF="$(fcalc "3*$HF1/4" 0)"; 
††††††††††EXPAND="crop=$HF1:$VF,scale=$HF2:$VF2";
†††††††fi;
†††fi
†††ENDR="$($DDK cellText Playlist $IN 14)";
†††FNAME="$($DDK cellText Playlist $IN 0)";
†††FILE="$ENDR/$FNAME";
†††MPL="mplayer -channels 6 -af resample=48000,hrtf -noautosub -ontop -idx -vo xv -identify -osdlevel 2 -softvol -softvol-max 500";
†††ALANG="$($DDK cellText Playlist $IN 11)";
†††case $ALANG in
†††[a-z][a-z])
††††††ALANG=" -alang $ALANG";
†††;;
†††[0-9])
††††††ALANG=" -aid $ALANG";
†††;;
†††nenhum|todos)
††††††ALANG="";
†††;;
†††esac
†††SLANG="$($DDK cellText Playlist $IN 12)";
†††case $SLANG in
†††[a-z][a-z])
††††††SLANG="-slang $SLANG -subfont-autoscale 2"; 
†††;;
†††[0-9])
††††††SLANG="-sid $SLANG -subfont-autoscale 2";
†††;;
†††*[sS][rR][tT])
††††††cp -a "$($DDK cellText Playlist $IN 14)/$SLANG" /tmp/subcmp@pid.srt;
††††††SLANG="-utf8 -sub /tmp/subcmp@pid.srt -subfont-autoscale 2";
†††;;
†††*)
††††††SLANG=''; 
†††;;
†††esac;
†††case "$FNAME" in
†††*.[wW][mM][vV] | *.[mM][kK][vV] | *.[fF][lL][vV] | *.[oO][gG][mM] | *.[rR][mM][vV] | *.[rR][mM][vV][bB] | *.[rR][pP][mM])
††††††$MPL -vf $EXPAND:0,harddup "$FILE" $SLANG 2>/dev/null;
†††;;
†††*.[mM][pP][eE][gG] | *.[mM][pP][gG4] | *.[aA][vV][iI] | *.[vV][oO][bB])
††††††$MPL -vf $EXPAND:0,harddup "$FILE" $ALANG $SLANG 2>/dev/null;
†††;;
†††*)
††††††case "$FNAME" in *.[iI][sS][oO]) FILE="$ENDR/$FNAME"; ;; *) FILE="$ENDR"; ;; esac;
††††††TLE="$(lsdvd "$FILE" 2>/dev/null | awk '/Longest track:/{ print $3 }')";
††††††$MPL dvd://"$TLE" -dvd-device "$FILE" -vf $EXPAND:0,harddup $ALANG $SLANG 2>/dev/null;
†††;;
†††esac
enall true;
fi

</string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††††††<property name="toolTip" stdset="0">
††††††††††††††††<string>Reproduz e previzualiza o arquivo escolhido.(F10)</string>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="ExecButton" row="2" column="14">
††††††††††††<property name="name">
††††††††††††††††<cstring>adiciona2</cstring>
††††††††††††</property>
††††††††††††<property name="minimumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>40</width>
††††††††††††††††††††<height>40</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="maximumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>40</width>
††††††††††††††††††††<height>40</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="focusPolicy">
††††††††††††††††<enum>NoFocus</enum>
††††††††††††</property>
††††††††††††<property name="text">
††††††††††††††††<string></string>
††††††††††††</property>
††††††††††††<property name="accel">
††††††††††††††††<number>4151</number>
††††††††††††</property>
††††††††††††<property name="iconSet">
††††††††††††††††<iconset>image5</iconset>
††††††††††††</property>
††††††††††††<property name="flat">
††††††††††††††††<bool>true</bool>
††††††††††††</property>
††††††††††††<property name="populationText">
††††††††††††††††<string></string>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string>#!/bin/bash
DDK="dcop @dcopid KommanderIf";
SCT="setCellText";
PL="Playlist";
enall(){
for m in GB{0,1,2,3,4,5,6,7,8} convert adiciona adiciona2 adiciona3 $PL play remove tela vbit abit; do
†††$DDK $SE $m $1;
done
}
enall false;
FILES="$(kdialog --getexistingdirectory "$HOME")";
TITLE="$(lsdvd -q "$FILES" | awk '/Longest track:/{ print $3 }')";
if [ -n "$FILES" -a -n "$TITLE" ]; then
†††n="$($DDK rowCount $PL)"; [ ! -n "$n" ] && n="0";
†††DISC_TITLE="$(echo "$FILES" | awk -F'/' '{ print $NF }')";
†††$DDK insertRow $PL $n 1;
†††$DDK $SCT $PL $n 0 "$DISC_TITLE";
†††V="$(du -s -h -k "$FILES" | awk '{ print $1 }')";
†††$DDK $SCT $PL $n 1 "$V";
†††$DDK $SCT $PL $n 14 "$FILES";
†††DISC_TITLE="$(lsdvd -q "$FILES" | awk '/Disc.*Title:/{for (i=3;i<=NF;i++) { print $i }}')";
†††ID_FILE="$(mplayer dvd://$TITLE -dvd-device "$FILES" -vo null -ao null -endpos 0 -identify 2>/dev/null 2>&1 | awk '/ID_AUDIO|ID_VIDEO|ID_DEMUXER|ID_LENGTH|ID_AID_.*_LANG/')";
†††ID_DVD_AUDIO="$(lsdvd -q -x -t$TITLE "$FILES" | tr -d ':,-' | awk '/Audio.*Language/{ print $1 $2 "_" $4 "_" $5 "_" $7 "_" $9 " " $1 $2 "_" $4 "_" $5 "_" $7 "_" $9 }')";
†††ID_DVD_SUBS="$(lsdvd -q -x -t$TITLE "$FILES" | tr -d ':,-' | awk '/Subtitle.*Language/{ print $1 $2 "_" $4 "_" $5 " " $1 $2 "_" $4 "_" $5 }')";
†††declare -t $ID_FILE;
†††c=0; for n in $ID_DVD_AUDIO; do c="$[c+1]"; done;
†††if [ "$[c/2]" != "1" ]; then ID_DVD_AUDIO="$(kdialog --menu "Linguagens encontradas:" $ID_DVD_AUDIO | tr '_' ' ')"; fi;
†††$DDK $SCT $PL $n 11 "$(echo $ID_DVD_AUDIO | awk '{ print $2 }')";
†††ID_AUDIO_CODEC="$(echo $ID_DVD_AUDIO | awk '{ print $4 }')";
†††ID_AUDIO_RATE="$(echo $ID_DVD_AUDIO | awk '{ print $5 }')";
†††c=0; for n in $ID_DVD_SUBS; do c="$[c+1]"; done;
†††if [ "$[c/2]" != "1" ]; then ID_DVD_SUBS="$(kdialog --menu "Legendas encontradas:" nenhum nenhum $ID_DVD_SUBS | tr '_' ' ')"; fi;
†††$DDK $SCT $PL $n 12 "$(echo $ID_DVD_SUBS | awk '{ print $2 }')";
†††$DDK $SCT $PL $n 2 "$ID_LENGTH";
†††$DDK $SCT $PL $n 3 "$ID_VIDEO_WIDTH:$ID_VIDEO_HEIGHT";
†††$DDK $SCT $PL $n 4 "$ID_VIDEO_FPS";
†††$DDK $SCT $PL $n 5 "$ID_VIDEO_ASPECT";
†††$DDK $SCT $PL $n 6 "$ID_VIDEO_CODEC";
†††$DDK $SCT $PL $n 7 "$[ID_VIDEO_BITRATE/1000]";
†††$DDK $SCT $PL $n 8 "$ID_AUDIO_CODEC";
†††$DDK $SCT $PL $n 9 "$[ID_AUDIO_BITRATE/1000]";
†††$DDK $SCT $PL $n 10 "$ID_AUDIO_RATE";
†††$DDK $SCT $PL $n 13 "$DISC_TITLE";
†††TOTAL="$[$($DDK text total | awk '{ print $2 }')+$(echo $ID_LENGTH | cut -f1 -d.)]";
†††HH="$[$[TOTAL-$[TOTAL-$[$[TOTAL/60]*60]]]/3600]";
†††MM="$[$[$[TOTAL-$[TOTAL-$[$[TOTAL/60]*60]]]/60]-$[$[$[TOTAL-$[TOTAL-$[$[TOTAL/60]*60]]]/3600]*60]]"; 
†††SS="$[TOTAL-$[$[TOTAL/60]*60]]"; 
†††[ "$HH" -lt "10" ] && HH="0$HH"; [ "$MM" -lt "10" ] && MM="0$MM"; [ "$SS" -lt "10" ] && SS="0$SS"; 
†††$DDK setText total "Total: $TOTAL s - $HH:$MM:$SS";
†††VBITS="$($DDK text vbit | tr -d ':[alpha]:')";
†††ABITS="$($DDK text abit | tr -d ':[alpha]:')";
†††SIZE="$(echo "scale=2; ${TOTAL}*$[VBITS]/8+${TOTAL}*2*$[ABITS]/13" | bc -l)";
†††$DDK setText size "Estimado: $(echo "scale=2; ${SIZE}/1024" | bc -l )MB";
†††enall true;
fi;
enall true;
</string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††††††<property name="toolTip" stdset="0">
††††††††††††††††<string>Inserir uma pasta contendo um dvd na lista.(F8)</string>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="SpinBoxInt" row="8" column="3">
††††††††††††<property name="name">
††††††††††††††††<cstring>vbit</cstring>
††††††††††††</property>
††††††††††††<property name="maximumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>32767</width>
††††††††††††††††††††<height>30</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="suffix">
††††††††††††††††<string>k</string>
††††††††††††</property>
††††††††††††<property name="maxValue">
††††††††††††††††<number>9800</number>
††††††††††††</property>
††††††††††††<property name="minValue">
††††††††††††††††<number>200</number>
††††††††††††</property>
††††††††††††<property name="lineStep">
††††††††††††††††<number>10</number>
††††††††††††</property>
††††††††††††<property name="value">
††††††††††††††††<number>3000</number>
††††††††††††</property>
††††††††††††<property name="populationText">
††††††††††††††††<string></string>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string></string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††††††<property name="toolTip" stdset="0">
††††††††††††††††<string>Video bit rate: Min=800, Max=9800</string>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="ExecButton" row="8" column="11" rowspan="1" colspan="2">
††††††††††††<property name="name">
††††††††††††††††<cstring>convert</cstring>
††††††††††††</property>
††††††††††††<property name="minimumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>100</width>
††††††††††††††††††††<height>30</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="maximumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>100</width>
††††††††††††††††††††<height>30</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="text">
††††††††††††††††<string>C&onverter</string>
††††††††††††</property>
††††††††††††<property name="accel">
††††††††††††††††<number>4149</number>
††††††††††††</property>
††††††††††††<property name="default">
††††††††††††††††<bool>true</bool>
††††††††††††</property>
††††††††††††<property name="flat">
††††††††††††††††<bool>true</bool>
††††††††††††</property>
††††††††††††<property name="populationText">
††††††††††††††††<string></string>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string>@Konsole6.cancel;
@Konsole6.clear;
@Konsole6.execute;
@DISPLAY.setText("PREPARANDO O INICIO DOS PROCESSOS.");
@PP_1.setText(0);
@PP_2.setText(0);
</string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††††††<property name="toolTip" stdset="0">
††††††††††††††††<string>Da inicio a convercao.(F6)</string>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="Label" row="0" column="0" rowspan="1" colspan="15">
††††††††††††<property name="name">
††††††††††††††††<cstring>Label6</cstring>
††††††††††††</property>
††††††††††††<property name="text">
††††††††††††††††<string>Arquivos a serem convertidos:</string>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string></string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="ComboBox" row="8" column="1">
††††††††††††<property name="name">
††††††††††††††††<cstring>tela</cstring>
††††††††††††</property>
††††††††††††<property name="minimumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>110</width>
††††††††††††††††††††<height>0</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="maximumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>32767</width>
††††††††††††††††††††<height>30</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="editable">
††††††††††††††††<bool>true</bool>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string></string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††††††<property name="toolTip" stdset="0">
††††††††††††††††<string>Padroes de cor e tela.</string>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="ComboBox" row="8" column="7" rowspan="1" colspan="2">
††††††††††††<item>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>128</string>
††††††††††††††††</property>
††††††††††††</item>
††††††††††††<item>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>160</string>
††††††††††††††††</property>
††††††††††††</item>
††††††††††††<item>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>192</string>
††††††††††††††††</property>
††††††††††††</item>
††††††††††††<item>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>224</string>
††††††††††††††††</property>
††††††††††††</item>
††††††††††††<item>
††††††††††††††††<property name="text">
††††††††††††††††††††<string>448</string>
††††††††††††††††</property>
††††††††††††</item>
††††††††††††<property name="name">
††††††††††††††††<cstring>abit</cstring>
††††††††††††</property>
††††††††††††<property name="maximumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>32767</width>
††††††††††††††††††††<height>30</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="editable">
††††††††††††††††<bool>true</bool>
††††††††††††</property>
††††††††††††<property name="currentItem">
††††††††††††††††<number>2</number>
††††††††††††</property>
††††††††††††<property name="populationText">
††††††††††††††††<string>@sizecalc.execute</string>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string></string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††††††<property name="toolTip" stdset="0">
††††††††††††††††<string>Audio bit rate.</string>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="ExecButton" row="8" column="13" rowspan="1" colspan="2">
††††††††††††<property name="name">
††††††††††††††††<cstring>canceler</cstring>
††††††††††††</property>
††††††††††††<property name="enabled">
††††††††††††††††<bool>false</bool>
††††††††††††</property>
††††††††††††<property name="minimumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>100</width>
††††††††††††††††††††<height>30</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="maximumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>100</width>
††††††††††††††††††††<height>30</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="text">
††††††††††††††††<string>&Cancelar</string>
††††††††††††</property>
††††††††††††<property name="accel">
††††††††††††††††<number>276824131</number>
††††††††††††</property>
††††††††††††<property name="flat">
††††††††††††††††<bool>true</bool>
††††††††††††</property>
††††††††††††<property name="associations" stdset="0">
††††††††††††††††<stringlist>
††††††††††††††††††††<string>@exec("for p in `ps -A | awk '/[m]encoder/{ print $1 }'`; do if grep -q CNV@pid /proc/$p/cmdline ; then kill $p; fi; done")
@setGlobal("EXECNO", "1")
</string>
††††††††††††††††</stringlist>
††††††††††††</property>
††††††††††††<property name="toolTip" stdset="0">
††††††††††††††††<string>Cancela a execucao.(Alt+C)</string>
††††††††††††</property>
††††††††</widget>
††††††††<widget class="TabWidget" row="7" column="0" rowspan="1" colspan="15">
††††††††††††<property name="name">
††††††††††††††††<cstring>TabWidget1</cstring>
††††††††††††</property>
††††††††††††<property name="maximumSize">
††††††††††††††††<size>
††††††††††††††††††††<width>32767</width>
††††††††††††††††††††<height>180</height>
††††††††††††††††</size>
††††††††††††</property>
††††††††††††<property name="tabPosition">
††††††††††††††††<enum>Bottom</enum>
††††††††††††</property>
††††††††††††<property name="tabShape">
††††††††††††††††<enum>Triangular</enum>
††††††††††††</property>
††††††††††††<widget class="QWidget">
††††††††††††††††<property name="name">
††††††††††††††††††††<cstring>tab</cstring>
††††††††††††††††</property>
††††††††††††††††<attribute name="title">
††††††††††††††††††††<string>S&aidas do Shell</string>
††††††††††††††††</attribute>
††††††††††††††††<grid>
††††††††††††††††††††<property name="name">
††††††††††††††††††††††††<cstring>unnamed</cstring>
††††††††††††††††††††</property>
††††††††††††††††††††<property name="margin">
††††††††††††††††††††††††<number>0</number>
††††††††††††††††††††</property>
††††††††††††††††††††<property name="spacing">
††††††††††††††††††††††††<number>0</number>
††††††††††††††††††††</property>
††††††††††††††††††††<widget class="Konsole" row="0" column="0">
††††††††††††††††††††††††<property name="name">
††††††††††††††††††††††††††††<cstring>Konsole6</cstring>
††††††††††††††††††††††††</property>
††††††††††††††††††††††††<property name="maximumSize">
††††††††††††††††††††††††††††<size>
††††††††††††††††††††††††††††††††<width>32767</width>
††††††††††††††††††††††††††††††††<height>180</height>
††††††††††††††††††††††††††††</size>
††††††††††††††††††††††††</property>
††††††††††††††††††††††††<property name="paletteForegroundColor">
††††††††††††††††††††††††††††<color>
††††††††††††††††††††††††††††††††<red>0</red>
††††††††††††††††††††††††††††††††<green>0</green>
††††††††††††††††††††††††††††††††<blue>0</blue>
††††††††††††††††††††††††††††</color>
††††††††††††††††††††††††</property>
††††††††††††††††††††††††<property name="associations" stdset="0">
††††††††††††††††††††††††††††<stringlist>
††††††††††††††††††††††††††††††††<string>#!/bin/bash

SPUMUX=`ls /usr/bin/spumux 2> /dev/null`;
MPGINFO=`ls /usr/bin/mpginfo 2> /dev/null`;
ADLAY="`echo "0.1*@adelay.text" | bc -l`";
NUM="0"
UN="0"; LIST=""; VL="0"; ST="setText"; SE="setEnabled";
DL="/tmp/dvdconvert-@pid.log"; DZ="$HOME/WORKDVD/dvdconvert1-@pid"; EXDA="/tmp/dvdauthor-@pid.sh";
M1="TODOS OS PROCESSOS CONCLUIDOS."; M2="TODOS OS PROCESSOS CANCELADOS.";
if [ "$[@steps.checked]" == "1" ]; then TWO_STEPS="1 2"; else TWO_STEPS="0"; fi
rm -f "$DL";
fcalc(){
TOTAL="$(echo "scale=$2; $1" | bc -l)";
[ "$2" != "0" ] && echo $TOTAL || echo $TOTAL | cut -d. -f1;
}
result(){
if [ "$2" == "0" ]; then
†††echo "[Concluido]";
†††echo -e "Gerando capitulos ... \t \c";
†††CHAP="$(make_chap 1)";
†††echo "<vob file=\"${FOT}.mpg\" chapters=\"$CHAP\" pause=\"0\" />" >>††${DZ}.xml; 
†††MSEND="$M1";
†††echo "[ok]";
else
†††echo "[Parado]";
†††$DDK cancel Timer1;
†††MSEND="$M2";
†††enable_all true;
†††$DDK $SE canceler false;
†††$DDK $ST DISPLAY "$MSEND";
†††$DDK $ST PP_1 0;
†††$DDK $ST PP_2 0;
†††rm -f ${DZ}.xml 2>&1 &>$DL; 
†††rm -f /tmp/*@pid.* 2>/dev/null;
†††echo "Pra mais informacoes, veja: $DL";
†††break;
fi;
CHAP="$(make_chap $1)";
}
make_chap(){
CP=0; SP=0;
case $1 in
1)
TC="$($DDK cellText $PL $IN 2)";
NC="$(fcalc "$TC/300" 0)";
RC="$(fcalc "$TC/$NC" 3)";
for ((LC=1;LC<=$(($NC-1));LC++)); do TA="$(fcalc "$RC*$LC" 3)"; CP="$CP $TA"; done
;;
2)
C="$(lsdvd -qx -t"$TLE" "$FILE" 2>/dev/null | awk '/Chapter:.*Length:/{ print $4 }' | tr -d ',')";
for d in $C; do SP="$SP+$(echo $d | awk -F: '{ print $1 "*3600+" $2 "*60+" $3 }')"; TA="$(fcalc "$SP" 3)"; CP="$CP $TA"; done;
;;
esac
echo $CP | tr ' ' ',' | sed 's/,,/,/g';
}
mkdvd(){
mkdir -p "$HOME/WORKDVD/" 2>&1 &>$DL; 
case $1 in
1)
echo -e "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<dvdauthor>\n<vmgm>\n<fpc>subtitle=65; jump title 1;</fpc>\n</vmgm>\n<titleset>\n<titles>\n<audio samplerate=\"48khz\" format=\"$ACOD\" />\n<video resolution=\"${HF2}x${VF2}\" format=\"$TYPE\" />\n<pgc>" > ${DZ}.xml; 
;;
2)
echo -e '<post>call vmgm menu 1;</post>\n</pgc>\n</titles>\n</titleset>\n</dvdauthor>' >> ${DZ}.xml; 
;;
3)
if [ -e "/usr/bin/dvdauthor" ]; then
†††$DDK setGlobal L1 "B $($DDK text PP_2)";
†††$DDK execute Timer1;
†††echo -e "Gerando DVD em $HOME/WORKDVD ... \t \c";
†††$EXDA -o "$HOME/WORKDVD/DVD@pid/" -x "${DZ}.xml" 2>&1 &>$DL; 
†††[ "$?" == "0" ] && echo "[Concluido]" || echo "[Parado]";
†††$DDK cancel Timer1;
else
†††echo "Pacote dvdauthor nao encontrado.";
fi
;;
esac
}
addsubs(){
if [ "$1" == "0" ]; then
††††if [ "@titles.checked" == "1" -a -n "$SPUMUX" ]; then
†††echo -e "1\n00:00:02,800 --> 00:00:11,801\n$TITLE\n" | tr '_' ' ' > /tmp/subtitle@pid.srt; 
†††echo "<subpictures><stream><textsub filename=\"/tmp/subtitle@pid.srt\" characterset=\"UTF-8\" fontsize=\"25.0\" font=\"Georgia_Bold_Italic.ttf\" horizontal-alignment=\"center\" vertical-alignment=\"top\" top-margin=\"30\" subtitle-fps=\"25\" movie-width=\"$HF2\" movie-height=\"$VF2\" /></stream></subpictures>" > /tmp/spuxml@pid.xml;
†††spumux -s 0 -m dvd "/tmp/spuxml@pid.xml" < "${FOT}.mpg" > /tmp/videofinal@pid.mpg 2>/dev/null; 
†††mv "/tmp/videofinal@pid.mpg" "${FOT}.mpg" 2>/dev/null 2>&1 &>$DL; 
†††rm -f /tmp/spuxml@pid.xml /tmp/subtitle@pid.srt 2>/dev/null 2>&1 &>$DL; 
††††fi
††††if [ -e "/tmp/subcmp@pid.srt" ]; then
†††echo "<subpictures><stream><textsub filename=\"/tmp/subcmp@pid.srt\" characterset=\"UTF-8\" fontsize=\"25.0\" font=\"Georgia_Bold_Italic.ttf\" horizontal-alignment=\"center\" vertical-alignment=\"top\" top-margin=\"30\" subtitle-fps=\"25\" movie-width=\"$HF2\" movie-height=\"$VF2\" /></stream></subpictures>" > /tmp/spuxml@pid.xml;
†††spumux -s 0 -m dvd "/tmp/spuxml@pid.xml" < "${FOT}.mpg" > /tmp/videofinal@pid.mpg 2>/dev/null; 
†††mv "/tmp/videofinal@pid.mpg" "${FOT}.mpg" 2>/dev/null 2>&1 &>$DL; 
†††rm -f /tmp/spuxml@pid.xml /tmp/subcmp@pid.srt 2>/dev/null 2>&1 &>$DL; 
††††fi
fi
}
matroska_packer(){
†††if [ "$END" == "0" ]; then 
††††††echo "[Concluido]";
††††††echo -e "Empacotando matroska ... \t \c";
††††††/usr/bin/ffmpeg -i "/tmp/video_tmp@pid.avi" -vcodec copy -acodec copy -f matroska "$1" 2>/dev/null 2>&1 &>$DL; 
††††††if [ "$?" == "0" ]; then
†††††††††echo "[Concluido]";
††††††else
†††††††††echo "[Erro ou cancelado]";
†††††††††break;
††††††fi
†††else
††††††echo "[Erro ou cancelado]";
††††††break;
†††fi
}
export LPOINT="0";
DDK="dcop @dcopid KommanderIf";
PL="Playlist";
SL="selection";
$DDK $SE canceler true;
enable_all(){
for m in GB{0,1,2,3,4,5,6,7,8} convert adiciona adiciona2 adiciona3 $PL play remove tela vbit abit; do
†††$DDK $SE $m $1;
done
}
enable_all false;
while : ; do NAME="$($DDK cellText $PL $UN 0)"; [ ! -n "$NAME" ] && break; UN=$[UN+1]; done;
$DDK $ST PP_1 0;
$DDK $ST PP_2 0;
$DDK setMaximum PP_1 100;
$DDK setMaximum PP_2 $[100*UN];
ABIT="$($DDK $SL abit)";
VBIT="$($DDK text vbit)";
TYPE="$($DDK $SL tela | awk '{ print $1 }'| tr [:upper:] [:lower:])";
case $TYPE in
†††ntsc*|pal*)
††††††VF2="$($DDK selection tela | awk '{ print $2 }' | cut -dx -f2)";
††††††HF2="$($DDK selection tela | awk '{ print $2 }' | cut -dx -f1)";
†††;;
†††*)
††††††VF2="$($DDK selection tela | cut -dx -f2)";
††††††HF2="$($DDK selection tela | cut -dx -f1)";
†††;;
esac
SRATE="48000"; 
if [ "$TYPE" == "ntsc" ]; then
†††KEY="18"; FPS="30000/1001"; 
††††††if [ "$HF2:$VF2" == "720:480" -o "$HF2:$VF2" == "704:480" ]; then
††††††VCOD="mpeg2video"; ACOD="ac3"; CH="-channels 6"; ILACE=":ilme:ildct";
†††else
††††††VCOD="mpeg1video"; ACOD="mp2"; CH="-channels 2"; ILACE="";
†††fi;
else
†††KEY="15"; FPS="25"; 
†††if [ "$HF2:$VF2" == "720:576" -o "$HF2:$VF2" == "704:576" ]; then
††††††VCOD="mpeg2video"; ACOD="ac3"; CH="-channels 6"; ILACE=":ilme:ildct";
†††else
††††††VCOD="mpeg1video"; ACOD="mp2"; CH="-channels 2"; ILACE="";
†††fi;
fi
echo "$[UN] arquivos postos para convercao.";
if [ "$[UN]" != "0" ]; then
†† mkdvd 1;
†† for ((IN=0;IN<$[UN];IN++)); do
†††APC="$($DDK cellText $PL $IN 5)";
†††VF1="$($DDK cellText $PL $IN 3 | cut -d: -f2)";
†††HF1="$($DDK cellText $PL $IN 3 | cut -d: -f1)";
†††NV="$(fcalc "$HF2/$APC" 0)";
†††$DDK setGlobal L2 "0";
†††if [ "@wide.checked" == "0" -a "@fill.checked" == "0" ] || [ "@wide.checked" == "1" -a "@fill.checked" == "1" ]; then
†††††††if [ "$NV" -lt "405" -o "$NV" == "405" ]; then ASP="16/9"; else ASP="4/3"; fi;
†††††††EXPAND="expand=$HF1:::::$ASP,scale=$HF2:$VF2";
†††elif [ "@wide.checked" == "1" -a "@fill.checked" == "0" ]; then
†††††††ASP="16/9"; 
†††††††if [ "$NV" -lt "405" -o "$NV" == "405" ]; then 
††††††††††EXPAND="expand=$HF1:::::$ASP,scale=$HF2:$VF2";
†††††††else 
††††††††††VF="$(fcalc "9*$HF1/16" 0)"; 
††††††††††EXPAND="crop=$HF1:$VF,scale=$HF2:$VF2";
†††††††fi;
†††elif [ "@wide.checked" == "0" -a "@fill.checked" == "1" ]; then
†††††††ASP="4/3"; 
†††††††if [ "$NV" -lt "405" -o "$NV" == "405" ]; then 
††††††††††EXPAND="expand=$HF1:::::$ASP,scale=$HF2:$VF2";
†††††††else 
††††††VF="$(fcalc "3*$HF1/4" 0)"; 
††††††††††EXPAND="crop=$HF1:$VF,scale=$HF2:$VF2";
†††††††fi;
†††fi
†††ENDR="$($DDK cellText Playlist $IN 14)";
†††TITLE="$($DDK cellText Playlist $IN 13)";
†††FNAME="$($DDK cellText Playlist $IN 0)";
†††FILE="$ENDR/$FNAME";
†††ALANG="$($DDK cellText $PL $IN 11)";
†††case $ALANG in
†††[a-z][a-z])
††††††ALANG=" -alang $ALANG";
†††;;
†††[0-9])
††††††ALANG=" -aid $ALANG";
†††;;
†††*)
††††††ALANG="";
†††;;
†††esac
†††SLANG="$($DDK cellText Playlist $IN 12)";
†††case $SLANG in
†††[a-z][a-z])
††††††SLANG="-slang $SLANG -subfont-autoscale 2";
†††;;
†††[0-9])
††††††SLANG="-sid $SLANG -subfont-autoscale 2";
†††;;
†††*srt)
††††††cp -a "$($DDK cellText Playlist $IN 14)/$SLANG" /tmp/subcmp@pid.srt;
††††††if [ -n "$SPUMUX" ]; then
†††††††††SLANG="";
†††††††††SFILE="/tmp/subcmp@pid.srt"
††††††else
†††††††††SLANG="-utf8 -sub /tmp/subcmp@pid.srt -subfont-autoscale 2";
††††††fi
†††;;
†††*ass)
††††††cp -a "$($DDK cellText Playlist $IN 14)/$SLANG" /tmp/subcmp@pid.ass;
††††††if [ -n "$SPUMUX" ]; then
†††††††††SLANG="";
†††††††††SFILE="/tmp/subcmp@pid.ass"
††††††else
†††††††††SLANG="-utf8 -sub /tmp/subcmp@pid.ass -subfont-autoscale 2";
††††††fi
†††;;
†††*)
††††††SLANG=""; 
†††;;
†††esac;
†††MP3F="";
†††if [ "@audioonly.checked" == "1" ]; then
††††††MP3F="$($DDK cellText $PL $IN 14)/$($DDK cellText $PL $IN 13).mp3";
††††††FOT="/tmp/videofile@pid.avi";
††††††PARAM2="-of avi";
††††††PARAM3="mp3lame -lameopts vbr=2:br=128:mode=1 -af resample=44100,volume=4";
††††††PARAM0="copy";
††††††PARAM1="";
†††elif [ "@h264.checked" == "1" ]; then
††††††EXPAND=""; 
††††††PARAM0="x264 -x264encopts bitrate=$[VBIT]:turbo:subq=6:threads=4"; 
††††††if [ "@fill.checked" == "1" -a "@wide.checked" == "0" ]; then EXPAND=",expand=720:::::4/3 -force-avi-aspect 4/3"; 
††††††elif [ "@fill.checked" == "0" -a "@wide.checked" == "1" ]; then EXPAND=",crop=720:406 -force-avi-aspect 16/9"; fi 
††††††PARAM1="-vf pp=linblenddeint,scale=$HF2:-2,harddup$EXPAND"; 
††††††PARAM2="-of avi"; 
††††††PARAM3="mp3lame -lameopts vbr=2:br=128:mode=1 -af resample=44100,volume=4"; 
††††††FPS="24";
††††††FOT="$($DDK cellText $PL $IN 14)/$($DDK cellText $PL $IN 13)_CNV@pid"; 
†††elif [ "@XVID.checked" == "1" ]; then
††††††EXPAND=""; 
††††††PARAM0="xvid -xvidencopts bitrate=$[VBIT]:turbo:threads=4"; 
††††††if [ "@fill.checked" == "1" -a "@wide.checked" == "0" ]; then EXPAND=",expand=720:::::4/3 -force-avi-aspect 4/3"; 
††††††elif [ "@fill.checked" == "0" -a "@wide.checked" == "1" ]; then EXPAND=",crop=720:406 -force-avi-aspect 16/9"; fi 
††††††PARAM1="-vf pp=linblenddeint,scale=$HF2:-2,harddup$EXPAND"; 
††††††PARAM2="-of avi"; 
††††††PARAM3="mp3lame -lameopts vbr=2:br=128:mode=1 -af resample=44100,volume=4"; 
††††††FPS="24";
††††††FOT="$($DDK cellText $PL $IN 14)/$($DDK cellText $PL $IN 13)_CNV@pid";
†††else
††††††PARAM2="-of mpeg -mpegopts format=dvd:tsaf";
††††††FOT="$($DDK cellText $PL $IN 14)/$($DDK cellText $PL $IN 13)_CNV@pid";
††††††[ @high.checked == 1 ] && HQ=":trell:mbd=2:precmp=2:subcmp=2:cmp=2:dia=-10:predia=-10:cbp:mv0:vqmin=1:lmin=1:dc=10";
††††††if [ @onlycopy.checked == 1 ]; then
†††††††††PARAM3="copy";
†††††††††PARAM0="copy";
†††††††††PARAM1="";
††††††else
†††††††††PARAM3="lavc";
†††††††††PARAM0="lavc";
†††††††††PARAM1="-vf pp=linblenddeint,$EXPAND:0,harddup -srate $SRATE $CH -af resample=$SRATE,volnorm,volume=4,lavcresample=$SRATE -lavcopts vcodec=$VCOD$ILACE:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=$VBIT:keyint=$KEY$HQ:turbo:vstrict=0:acodec=$ACOD:abitrate=$ABIT:aspect=$ASP";
††††††fi
†††fi
†††EXMP="mencoder -noautosub -idx -audio-delay $ADLAY -oac $PARAM3 -ovc $PARAM0$VP_PARAM $PARAM2 $PARAM1 -ofps $FPS -o";
†††EXDA="dvdauthor";
†††$DDK setGlobal L1 "A $($DDK text PP_2)";
†††$DDK execute Timer1;
††††††if [ "@h264.checked" == "1" ]; then
†††case "$FILE" in
†††*.[wW][mM][vV] | *.[rR][mM][vV] | *.[rR][mM][vV][bB] | *.[rR][pP][mM] | *.[fF][lL][vV] | *.[oO][gG][mM])
††††††echo -e "Convertendo: $FILE ... \t \c";
††††††for n in $TWO_STEPS; do
†††††††††if [ "$[n]" == "0" ]; then VP_PARAM=""; OU_PARAM="/tmp/video_tmp@pid.avi";
†††††††††else echo -e "Pass $[n]...\t\c"; VP_PARAM=":vpass=$[n]"; if [ "$[n]" == "1" ]; then OU_PARAM="/dev/null"; else OU_PARAM="/tmp/video_tmp@pid.avi"; fi; fi
†††††††††$EXMP "$OU_PARAM" "$FILE" -aid 0 -subfont-autoscale 2 2>/dev/null 2>&1 &>$DL;
†††††††††END="$?";
†††††††††[ "$END" != "0" ] && break; [ "$END" == "0" -a "$[n]" != "0" ] && $DDK setGlobal L2 "$($DDK text PP_1)";
††††††done
††††††matroska_packer "${FOT}.mkv";
†††;;
†††*.[mM][pP][eE][gG] | *.[mM][pP][gG4] | *.[aA][vV][iI] | *.[vV][oO][bB])
††††††echo -e "Convertendo: $FILE ... \t \c";
††††††for n in $TWO_STEPS; do
†††††††††if [ "$[n]" == "0" ]; then VP_PARAM=""; OU_PARAM="/tmp/video_tmp@pid.avi";
†††††††††else echo -e "Pass $[n]...\t\c"; VP_PARAM=":vpass=$[n]"; if [ "$[n]" == "1" ]; then OU_PARAM="/dev/null"; else OU_PARAM="/tmp/video_tmp@pid.avi"; fi; fi
†††††††††$EXMP "$OU_PARAM" "$FILE" $ALANG $SLANG 2>/dev/null 2>&1 &>$DL;
†††††††††END="$?";
†††††††††[ "$END" != "0" ] && break; [ "$END" == "0" -a "$[n]" != "0" ] && $DDK setGlobal L2 "$($DDK text PP_1)";
††††††done
††††††matroska_packer "${FOT}.mkv";
†††;;
†††*.[mM][kK][vV])
††††††echo -e "Convertendo: $FILE ... \t \c";
††††††for n in $TWO_STEPS; do
†††††††††if [ "$[n]" == "0" ]; then VP_PARAM=""; OU_PARAM="/tmp/video_tmp@pid.avi";
†††††††††else echo -e "Pass $[n]...\t\c"; VP_PARAM=":vpass=$[n]"; if [ "$[n]" == "1" ]; then OU_PARAM="/dev/null"; else OU_PARAM="/tmp/video_tmp@pid.avi"; fi; fi
†††††††††$EXMP "$OU_PARAM" "$FILE" -sid 0 -subfont-autoscale 2 2>/dev/null 2>&1 &>$DL;
†††††††††END="$?";
†††††††††[ "$END" != "0" ] && break; [ "$END" == "0" -a "$[n]" != "0" ] && $DDK setGlobal L2 "$($DDK text PP_1)";
††††††done
††††††matroska_packer "${FOT}.mkv";
†††;;
†††*)
††††††case "$FNAME" in
††††††*.[iI][sS][oO])
†††††††††FILE="$ENDR/$FNAME";
††††††;;
††††††*)
†††††††††mkdir -p $HOME/WORKDVD/ 2>/dev/null;
†††††††††FILE="$ENDR";
†††††††††FOT="$HOME/WORKDVD/${FNAME}_CNV@pid";
††††††;;
††††††esac;
††††††TLE="$(lsdvd "$FILE" 2>/dev/null | awk '/Longest track:/{ print $3 }')";
††††††if [ "@wide.checked" == "0" -a "@fill.checked" == "0" ]; then
†††††††††DVDNCROP="$(mplayer -ss 100 -endpos 1 -vo null -ao null -vf cropdetect dvd://"$TLE" -dvd-device "$FILE" 2>/dev/null 2>&1 | tr -d '().' | awk '/Crop area/{ print $(NF-1) " " $NF }' | sort | uniq)";
††††††fi
††††††if [ "@chaponly.checked" == "1" ]; then
†††††††††mkdir -p "$HOME/WORKDVD/${FNAME}/" 2>/dev/null;
†††††††††endc=""; oldc=""; ON="1";
†††††††††for c in `chaplin -d "$FILE" -t "$TLE" -c 2>/dev/null | awk '/chapter.*begin:/{ print $4 }'`; do 
††††††††††††if [ -n "$oldc" ]; then 
†††††††††††††††echo -e "Convertendo: $FILE [$TITLE] Chapter: $ON ... \t \c";
†††††††††††††††for n in $TWO_STEPS; do
††††††††††††††††††if [ "$[n]" == "0" ]; then VP_PARAM=""; OU_PARAM="/tmp/video_tmp@pid.avi";
††††††††††††††††††else echo -e "Pass $[n]...\t\c"; VP_PARAM=":vpass=$[n]"; if [ "$[n]" == "1" ]; then OU_PARAM="/dev/null"; else OU_PARAM="/tmp/video_tmp@pid.avi"; fi; fi
††††††††††††††††††$EXMP "$OU_PARAM" dvd://"$TLE" -dvd-device "$FILE" $ALANG $DVDNCROP -ss $oldc -endpos `echo "$c-$oldc" | bc -l` 2>/dev/null 2>&1 &>$DL;
††††††††††††††††††END="$?";
††††††††††††††††††[ "$END" != "0" ] && break; [ "$END" == "0" -a "$[n]" != "0" ] && $DDK setGlobal L2 "$($DDK text PP_1)";
†††††††††††††††done
†††††††††††††††matroska_packer "$HOME/WORKDVD/${FNAME}/${FNAME}_CNV@pid$(echo $[10000+ON] | cut -c2-).mkv";
†††††††††††††††ON="$[ON+1]";
††††††††††††fi
††††††††††††oldc="$c"; 
†††††††††done
††††††else
†††††††††echo -e "Convertendo: $FILE [$TITLE] ... \t \c";
†††††††††for n in $TWO_STEPS; do
††††††††††††if [ "$[n]" == "0" ]; then VP_PARAM=""; OU_PARAM="/tmp/video_tmp@pid.avi";
††††††††††††else echo -e "Pass $[n]...\t\c"; VP_PARAM=":vpass=$[n]"; if [ "$[n]" == "1" ]; then OU_PARAM="/dev/null"; else OU_PARAM="/tmp/video_tmp@pid.avi"; fi; fi
††††††††††††$EXMP "$OU_PARAM" dvd://"$TLE" -dvd-device "$FILE" $ALANG $DVDNCROP 2>/dev/null 2>&1 &>$DL;
††††††††††††END="$?";
††††††††††††[ "$END" != "0" ] && break; [ "$END" == "0" -a "$[n]" != "0" ] && $DDK setGlobal L2 "$($DDK text PP_1)";
†††††††††done
†††††††††matroska_packer "${FOT}.mkv";
††††††fi
†††;;
†††esac
††††††elif [ "@XVID.checked" == "1" ]; then
†††case "$FILE" in
†††*.[wW][mM][vV] | *.[rR][mM][vV] | *.[rR][mM][vV][bB] | *.[rR][pP][mM] | *.[fF][lL][vV] | *.[oO][gG][mM])
††††††echo -e "Convertendo: $FILE ... \t \c";
††††††for n in $TWO_STEPS; do
†††††††††if [ "$[n]" == "0" ]; then VP_PARAM=""; OU_PARAM="${FOT}.avi";
†††††††††else echo -e "Pass $[n]...\t\c"; VP_PARAM=":vpass=$[n]"; if [ "$[n]" == "1" ]; then OU_PARAM="/dev/null"; else OU_PARAM="${FOT}.avi"; fi; fi
†††††††††$EXMP "$OU_PARAM" "$FILE" $ALANG $SLANG 2>/dev/null 2>&1 &>$DL;
†††††††††END="$?";
†††††††††[ "$END" != "0" ] && break; [ "$END" == "0" -a "$[n]" != "0" ] && $DDK setGlobal L2 "$($DDK text PP_1)";
††††††done
††††††if [ "$END" == "0" ]; then echo "[Concluido]"; else echo "[Parado]"; $DDK cancel Timer1; break; fi;
†††;;
†††*.[mM][pP][eE][gG] | *.[mM][pP][gG4] | *.[aA][vV][iI] | *.[vV][oO][bB])
††††††echo -e "Convertendo: $FILE ... \t \c";
††††††for n in $TWO_STEPS; do
†††††††††if [ "$[n]" == "0" ]; then VP_PARAM=""; OU_PARAM="${FOT}.avi";
†††††††††else echo -e "Pass $[n]...\t\c"; VP_PARAM=":vpass=$[n]"; if [ "$[n]" == "1" ]; then OU_PARAM="/dev/null"; else OU_PARAM="${FOT}.avi"; fi; fi
†††††††††$EXMP "$OU_PARAM" "$FILE" $ALANG $SLANG 2>/dev/null 2>&1 &>$DL;
†††††††††END="$?";
†††††††††[ "$END" != "0" ] && break; [ "$END" == "0" -a "$[n]" != "0" ] && $DDK setGlobal L2 "$($DDK text PP_1)";
††††††done
††††††if [ "$END" == "0" ]; then echo "[Concluido]"; else echo "[Parado]"; $DDK cancel Timer1; break; fi;
†††;;
†††*.[mM][kK][vV])
††††††echo -e "Convertendo: $FILE ... \t \c";
††††††for n in $TWO_STEPS; do
†††††††††if [ "$[n]" == "0" ]; then VP_PARAM=""; OU_PARAM="${FOT}.avi";
†††††††††else echo -e "Pass $[n]...\t\c"; VP_PARAM=":vpass=$[n]"; if [ "$[n]" == "1" ]; then OU_PARAM="/dev/null"; else OU_PARAM="${FOT}.avi"; fi; fi
†††††††††$EXMP "$OU_PARAM" "$FILE" -sid 0 -subfont-autoscale 2 2>/dev/null 2>&1 &>$DL;
†††††††††END="$?";
†††††††††[ "$END" != "0" ] && break; [ "$END" == "0" -a "$[n]" != "0" ] && $DDK setGlobal L2 "$($DDK text PP_1)";
††††††done
††††††if [ "$END" == "0" ]; then echo "[Concluido]"; else echo "[Parado]"; $DDK cancel Timer1; break; fi;
†††;;
†††*)
††††††case "$FNAME" in
††††††*.[iI][sS][oO])
†††††††††FILE="$ENDR/$FNAME";
††††††;;
††††††*)
†††††††††mkdir -p $HOME/WORKDVD/ 2>/dev/null;
†††††††††FILE="$ENDR";
†††††††††FOT="$HOME/WORKDVD/${FNAME}_CNV@pid";
††††††;;
††††††esac;
††††††TLE="$(lsdvd "$FILE" 2>/dev/null | awk '/Longest track:/{ print $3 }')";
††††††if [ "@wide.checked" == "0" -a "@fill.checked" == "0" ]; then
†††††††††DVDNCROP="$(mplayer -ss 100 -endpos 1 -vo null -ao null -vf cropdetect dvd://"$TLE" -dvd-device "$FILE" 2>/dev/null 2>&1 | tr -d '().' | awk '/Crop area/{ print $(NF-1) " " $NF }' | sort | uniq)";
††††††fi
††††††if [ "@chaponly.checked" == "1" ]; then
†††††††††mkdir -p "$HOME/WORKDVD/${FNAME}/" 2>/dev/null;
†††††††††endc=""; oldc=""; ON="1";
†††††††††for c in `chaplin -d "$FILE" -t "$TLE" -c 2>/dev/null | awk '/chapter.*begin:/{ print $4 }'`; do 
††††††††††††if [ -n "$oldc" ]; then 
†††††††††††††††echo -e "Convertendo: $FILE [$TITLE] Chapter: $ON ... \t \c";
†††††††††††††††for n in $TWO_STEPS; do
††††††††††††††††††if [ "$[n]" == "0" ]; then VP_PARAM=""; OU_PARAM="$HOME/WORKDVD/${FNAME}/${FNAME}_CNV@pid$(echo $[10000+ON] | cut -c2-).avi";
††††††††††††††††††else echo -e "Pass $[n]...\t\c"; VP_PARAM=":vpass=$[n]"; if [ "$[n]" == "1" ]; then OU_PARAM="/dev/null"; else OU_PARAM="$HOME/WORKDVD/${FNAME}/${FNAME}_CNV@pid$(echo $[10000+ON] | cut -c2-).avi"; fi; fi
††††††††††††††††††$EXMP "$OU_PARAM" dvd://"$TLE" -dvd-device "$FILE" $ALANG $DVDNCROP -ss $oldc -endpos `echo "$c-$oldc" | bc -l` 2>/dev/null 2>&1 &>$DL;
††††††††††††††††††END="$?";
††††††††††††††††††[ "$END" != "0" ] && break; [ "$END" == "0" -a "$[n]" != "0" ] && $DDK setGlobal L2 "$($DDK text PP_1)";
†††††††††††††††done
†††††††††††††††ON="$[ON+1]";
†††††††††††††††if [ "$END" == "0" ]; then echo "[Concluido]"; else echo "[Parado]"; $DDK cancel Timer1; break; fi;
††††††††††††fi
††††††††††††oldc="$c"; 
†††††††††done
††††††else
†††††††††echo -e "Convertendo: $FILE [$TITLE] ... \t \c";
†††††††††for n in $TWO_STEPS; do
††††††††††††if [ "$[n]" == "0" ]; then VP_PARAM=""; OU_PARAM="${FOT}.avi";
††††††††††††else echo -e "Pass $[n]...\t\c"; VP_PARAM=":vpass=$[n]"; if [ "$[n]" == "1" ]; then OU_PARAM="/dev/null"; else OU_PARAM="${FOT}.avi"; fi; fi
††††††††††††$EXMP "$OU_PARAM" dvd://"$TLE" -dvd-device "$FILE" $ALANG $DVDNCROP 2>/dev/null 2>&1 &>$DL;
††††††††††††END="$?";
††††††††††††[ "$END" != "0" ] && break; [ "$END" == "0" -a "$[n]" != "0" ] && $DDK setGlobal L2 "$($DDK text PP_1)";
†††††††††done
†††††††††if [ "$END" == "0" ]; then echo "[Concluido]"; else echo "[Parado]"; $DDK cancel Timer1; break; fi;
††††††fi
†††;;
†††esac
††††††else
†††case "$FILE" in
†††*.[wW][mM][vV] | *.[rR][mM][vV] | *.[rR][mM][vV][bB] | *.[rR][pP][mM] | *.[fF][lL][vV] | *.[oO][gG][mM])
††††††echo -e "Convertendo: $FILE ... \t \c";
††††††for n in $TWO_STEPS; do
†††††††††if [ "$[n]" == "0" ]; then VP_PARAM=""; OU_PARAM="${FOT}.mpg";
†††††††††else echo -e "Pass $[n]...\t\c"; VP_PARAM=":vpass=$[n]"; if [ "$[n]" == "1" ]; then OU_PARAM="/dev/null"; else OU_PARAM="${FOT}.mpg"; fi; fi
†††††††††$EXMP "$OU_PARAM" "$FILE" $SLANG 2>/dev/null 2>&1 &>$DL;
†††††††††END="$?";
†††††††††[ "$END" != "0" ] && break; [ "$END" == "0" -a "$[n]" != "0" ] && $DDK setGlobal L2 "$($DDK text PP_1)";
††††††done
††††††result 1 $END;
††††††if [ "$?" == "0" ]; then
††††††††††if [ "@titles.checked" == "1" -a -n "$SPUMUX" -a ! -n "$MP3F" ]; then
†††††††††e

Scripts recomendados

Script para renomear arquivos

Script para atualizar o sistema

FunÁ„o que indica o estado do funcionamento do script

Zsamba 2.0

Remover kernels antigos com zenity


  

ComentŠrios

Nenhum comentŠrio foi encontrado.


Contribuir com comentŠrio




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts