Merge from X250
This commit is contained in:
Executable
+54
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
INPUT="$1"
|
||||
DURATION=$(ffprobe -v error -select_streams v:0 -show_entries stream=duration -of default=noprint_wrappers=1:nokey=1 "$INPUT");
|
||||
SECS=$(echo $DURATION | awk -F'.' '{print $1}')
|
||||
FRAG=$(echo $DURATION | awk -F'.' '{print $2}')
|
||||
NO_OF_SEGMENTS=$(($SECS/60))
|
||||
echo total duration "$SECS.$FRAG"s
|
||||
echo number of segments $NO_OF_SEGMENTS
|
||||
REST=$(( $SECS % 60 )).$FRAG
|
||||
MINS=0
|
||||
HOS=0
|
||||
|
||||
|
||||
rm -rf /mnt/central/TEMP_KRYSTOF/parallel/*
|
||||
echo "" > /tmp/jobs
|
||||
echo "" > /tmp/files
|
||||
|
||||
SCOUNT=0
|
||||
LOOP_NO=0
|
||||
|
||||
while [[ $SCOUNT -le $SECS ]];
|
||||
do
|
||||
TIME=`printf "%02d" $HOS`:`printf "%02d" $MINS`:00
|
||||
|
||||
SEGMENT=60
|
||||
if [ $LOOP_NO -eq $NO_OF_SEGMENTS ]
|
||||
then
|
||||
SEGMENT=$REST
|
||||
fi
|
||||
|
||||
#echo $TIME $SEGMENT
|
||||
|
||||
OUTPUT=/tmp/$(echo `basename $INPUT` | awk -F'.' '{print $1}')_$TIME.mp4
|
||||
|
||||
echo "ffmpeg -loglevel panic -ss $TIME -i $INPUT -t $SEGMENT -c:v h264 -pix_fmt yuv420p -crf 22 -preset ultrafast -threads 1 -c:a aac -y $OUTPUT" >> /tmp/jobs
|
||||
echo file $OUTPUT >> /tmp/files
|
||||
|
||||
SCOUNT=$(( SCOUNT + 60 ))
|
||||
MINS=$(( $MINS + 1 ))
|
||||
|
||||
if [ $MINS -ge 59 ]
|
||||
then
|
||||
MINS=0
|
||||
HOS=$(( $HOS + 1 ))
|
||||
fi
|
||||
LOOP_NO=$(( $LOOP_NO + 1 ))
|
||||
done
|
||||
|
||||
#parallel --eta --progress -S "32/nfaRender,32/nfaDTL01,8/:,8/nfaProjekce,8/nfaAdela" < /tmp/jobs
|
||||
#parallel --eta --progress -S "8/nfaRender,8/nfaDTL01,4/nfaAdela,8/:,8/nfaProjekce" < /tmp/jobs
|
||||
#parallel --eta --progress -S "4/nfaRender,4/nfaAdela,4/:,16/nfaProjekce" < /tmp/jobs
|
||||
parallel --eta --progress -S "4/:" < /tmp/jobs
|
||||
FIN="$(echo `basename $INPUT` | awk -F'.' '{print $1}')".mp4
|
||||
ffmpeg -f concat -safe 0 -i /tmp/files -c:v copy -c:a copy -y $FIN
|
||||
Reference in New Issue
Block a user