„Build/synOTR.sh“ ändern
This commit is contained in:
parent
7c6250e0ec
commit
b4d6a3cb70
145
Build/synOTR.sh
145
Build/synOTR.sh
|
@ -1,7 +1,6 @@
|
|||
#!/bin/sh
|
||||
# /usr/syno/synoman/webman/3rdparty/synOTR/synOTR.sh
|
||||
|
||||
|
||||
###################################################################################
|
||||
|
||||
echo " -----------------------------------"
|
||||
|
@ -9,7 +8,7 @@
|
|||
echo " -----------------------------------"
|
||||
echo -e
|
||||
|
||||
CLIENTVERSION="4.0.8" # [2018-12-16]
|
||||
CLIENTVERSION="4.0.8" # [2018-12-17]
|
||||
DevChannel="Release" # beta
|
||||
|
||||
# ---------------------------------------------------------------------------------
|
||||
|
@ -30,7 +29,7 @@
|
|||
MP4BOX_DELAY="" # in Millisekunden / Feinabstimmung für den Audio-Video-Sync / Positive Werte verzögern den Ton; negative Werte 'holen den Ton nach vorn'
|
||||
niceness=15 # Die Priorität liegt im Bereich von -20 bis +19 (in ganzzahligen Schritten), wobei -20 die höchste Priorität (=meiste Rechenleistung) und 19 die niedrigste Priorität (=geringste Rechenleistung) ist. Die Standardpriorität ist 0. AUF NEGATIVE WERTE SOLLTE UNBEDINGT VERZICHTET WERDEN!
|
||||
reindex=1 # Standard 1 - einamlige Reindexierung des Zielordners nach dem ersten Programmlauf des Tages
|
||||
needindex=0 # wird bei einem fertigen Film auf 1 gesetzt um den Zielordnerindex für die VideoStation neu zuindexieren
|
||||
needindex=0 # wird bei einem fertigen Film auf 1 gesetzt um den Zielordnerindex für die VideoStation neu zuindexieren
|
||||
DEBUGINFO="on" # ich bin dankbar, wenn der Wert auf 'on' gestellt bleibt - deaktivieren sofern keine anonyme Systeminfo an den Entwickler gesendet werden darf (Installationstrigger beinhaltet folgende anonymen Geräteinfos: DSM-Build / Prüfsumme der MAC-Adresse als Hardware-ID [anonyme Zahlenfolge um Installationen zu zählen] / Architektur / Geräte-Typ)
|
||||
WaitOfCutlist="on" # mit dem weiterverarbeiten eines Filmes wird so lange gewartet, bis eine Cutlist verfügbar ist
|
||||
useallcutlistformat=0 # Cutlits für alternative Formate berücksichtigen
|
||||
|
@ -176,9 +175,9 @@
|
|||
# spezielle Programmpfade / sonstige Variablen anpassen :
|
||||
# ---------------------------------------------------------------------
|
||||
# (oder andere gewünschte Version / nicht benötigte ggfs. auskommentieren)
|
||||
# ffmpeg="${APPDIR}/app/bin/ffmpeg_fdk/ffmpeg"
|
||||
# ffmpeg="${APPDIR}/app/bin/ffmpeg"
|
||||
# ffmpeg=`which ffmpeg` # erstes ffmpeg in PATH
|
||||
# ffmpeg="${APPDIR}/app/bin/ffmpeg_fdk/ffmpeg"
|
||||
# ffmpeg="${APPDIR}/app/bin/ffmpeg"
|
||||
# ffmpeg=`which ffmpeg` # erstes ffmpeg in PATH
|
||||
echo "ffmpeg-Version: $ffmpeg"
|
||||
|
||||
# Konfiguration für LogLevel:
|
||||
|
@ -376,7 +375,6 @@ echo -e ;
|
|||
fi
|
||||
}
|
||||
|
||||
|
||||
TVDB_episodequery()
|
||||
{
|
||||
TVDB_SerieName=` echo "$TVDB_FilmID" | jq '.data[].seriesName' | sed "s/\"//g" | sed -n '1{p;q}' | sed "s/://g ; s/\?//g ; s/\*//g" ` # nur das erste Ergebnis wählen
|
||||
|
@ -510,10 +508,10 @@ elif [ -z "$serieninfo" ] ; then
|
|||
elif [[ "$OTRID" =~ $regInt ]]; then # Ist die OTR-Id eine echte Zahl?
|
||||
if jq -e . >/dev/null 2>&1 <<<"$serieninfo"; then # prüfen, ob korrektes JSON-Format verarbeitet werden kann (https://stackoverflow.com/questions/46954692/check-if-string-is-a-valid-json-with-jq)
|
||||
echo -e "gefunden:"
|
||||
# Zeichenkorrektur:
|
||||
# serieninfo=`echo $serieninfo | sed "s/<!DOCTYPE html>//g" | sed 's/\\\u00e4/ä/g' | sed 's/\\\u00f6/ö/g' | sed 's/\\\u00c4/Ä/g' | sed 's/\\\u00d6/Ö/g' | sed 's/\\\u00fC/ü/g' | sed 's/\\\u00dC/Ü/g' | sed 's/\\\u00dF/ß/g' `
|
||||
# serieninfo=`echo $serieninfo | sed "s/<!DOCTYPE html>//g" | sed -f ${APPDIR}/includes/decode.sed `
|
||||
# OTRID=`echo "$serieninfo" | awk -F, '{print $1}' | awk -F: '{print $2}' | sed "s/\"//g"`
|
||||
# Zeichenkorrektur:
|
||||
# serieninfo=`echo $serieninfo | sed "s/<!DOCTYPE html>//g" | sed 's/\\\u00e4/ä/g' | sed 's/\\\u00f6/ö/g' | sed 's/\\\u00c4/Ä/g' | sed 's/\\\u00d6/Ö/g' | sed 's/\\\u00fC/ü/g' | sed 's/\\\u00dC/Ü/g' | sed 's/\\\u00dF/ß/g' `
|
||||
# serieninfo=`echo $serieninfo | sed "s/<!DOCTYPE html>//g" | sed -f ${APPDIR}/includes/decode.sed `
|
||||
# OTRID=`echo "$serieninfo" | awk -F, '{print $1}' | awk -F: '{print $2}' | sed "s/\"//g"`
|
||||
|
||||
missSeries=0 # Trigger für fehlende Serieninformation in SQLite-DB
|
||||
serietitle=`echo "$serieninfo" | jq -r '.Serie' | sed "s/://g" `
|
||||
|
@ -573,7 +571,7 @@ OTRdecoder()
|
|||
muxingLOG=$(nice -n $niceness $ffmpeg -threads 2 -loglevel $ffloglevel -i "${DECODIR}/${videosourcetitle}.avi" -i "$i" -map 0:0 -map 1:0 -c:a copy -async 1 -c:v copy -sn -y "${DECODIR}/${videosourcetitle}.ac3tmp.avi" 2>&1)
|
||||
|
||||
if [ -f "${DECODIR}/${videosourcetitle}.ac3tmp.avi" ]; then
|
||||
# ------- Original löschen / umbenennen:
|
||||
# Original löschen / umbenennen:
|
||||
if [ $endgueltigloeschen = "on" ] ; then
|
||||
rm "$i"
|
||||
rm "${DECODIR}/${videosourcetitle}.avi"
|
||||
|
@ -708,7 +706,7 @@ OTRautocut()
|
|||
# Diese Funktion schneidet die Filme anhand einer lokalen Cutlist, oder #
|
||||
# einer automatisch auf cutlist.at gefundenen Cutlist #
|
||||
# #
|
||||
# ----------------------------------------------------------------------------------- #
|
||||
# #
|
||||
# #
|
||||
# Die meisten Cut-Funktionen stammen ursprünglich von: #
|
||||
# Author: Daniel Siegmanski #
|
||||
|
@ -808,9 +806,9 @@ if [ $OTRcutactiv = "on" ] ; then
|
|||
# Diese Funktion definiert den Cutlist- und Dateinamen
|
||||
# und üperprüft um welches Dateiformat es sich handelt:
|
||||
# ---------------------------------------------------------------------
|
||||
film="$i" #Der komplette Filmname und gegebenfalls der Pfad
|
||||
film="$i" # Der komplette Filmname und gegebenfalls der Pfad
|
||||
film_ohne_anfang="$i"
|
||||
# CUTLIST=`basename "$film"` #Filmname ohne Pfad
|
||||
# CUTLIST=`basename "$film"` # Filmname ohne Pfad
|
||||
# filmname=$CUTLIST
|
||||
# filmname=`basename "$film"`
|
||||
AC_nameLOG="Überprüfe um welches Aufnahmeformat es sich handelt --> "
|
||||
|
@ -868,11 +866,6 @@ if [ $OTRcutactiv = "on" ] ; then
|
|||
# outputfile="${WORKDIR}$film_ohne_ende.mpg-cut.avi"
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if [ $LOGlevel = "2" ] ; then
|
||||
echo "$AC_nameLOG"
|
||||
fi
|
||||
|
@ -912,8 +905,6 @@ if [ $OTRcutactiv = "on" ] ; then
|
|||
if [ "$vorhanden" == "yes" ]; then #Wenn eine passende Cutlist vorhanden ist
|
||||
goodCount=$(( goodCount + 1 ))
|
||||
namelocal[$arraylocal]="$f"
|
||||
#echo $f
|
||||
#echo ${namelocal[$arrylocal]}
|
||||
arraylocal=$(( arraylocal + 1 ))
|
||||
continue=0
|
||||
else
|
||||
|
@ -1025,7 +1016,6 @@ if [ $OTRcutactiv = "on" ] ; then
|
|||
echo -e "false"
|
||||
echo "Es wurde zwar eine lokale Cutlist gefunden, aber leider wurde ein Fehler festgestellt"
|
||||
continue=1
|
||||
# rm -f "${DECODIR}/_LOGsynOTR/cutlist_${CUTLIST}.tx"
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -1365,7 +1355,7 @@ if [ $OTRcutactiv = "on" ] ; then
|
|||
sqlite3 ${APPDIR}/app/etc/synOTR.sqlite "$sSQL"
|
||||
fi
|
||||
# fi
|
||||
#exit
|
||||
|
||||
}
|
||||
|
||||
AC_time1 ()
|
||||
|
@ -1432,37 +1422,37 @@ if [ $OTRcutactiv = "on" ] ; then
|
|||
while [ $cut_anzahl -gt 0 ]; do
|
||||
#Die Sekunde in der der Cut startet
|
||||
time_seconds_start=$(cat "$tmp/$CUTLIST" | grep "Start=" | cut -d= -f2 | head -n$head1 | tail -n1 | cut -d"." -f1 | /usr/bin/tr -d "\r")
|
||||
ss=$time_seconds_start # Setze die Skunden auf $time_seconds_start
|
||||
mm=0 # Setze die Minuten auf 0
|
||||
hh=0 # Setze die Stunden auf 0
|
||||
while [ $ss -ge "60" ]; do # Wenn die Sekunden >= 60 sind
|
||||
mm=$(( mm + 1)) # Zaehle Minuten um 1 hoch
|
||||
ss=$(( ss - 60)) # Zaehle Sekunden um 60 runter
|
||||
while [ $mm -ge "60" ]; do # Wenn die Minuten >= 60 sind
|
||||
hh=$(( hh + 1 )) # Zaehle Stunden um 1 hoch
|
||||
mm=$(( mm - 60 )) # Zaehle Minuten um 60 runter
|
||||
ss=$time_seconds_start # Setze die Skunden auf $time_seconds_start
|
||||
mm=0 # Setze die Minuten auf 0
|
||||
hh=0 # Setze die Stunden auf 0
|
||||
while [ $ss -ge "60" ]; do # Wenn die Sekunden >= 60 sind
|
||||
mm=$(( mm + 1)) # Zaehle Minuten um 1 hoch
|
||||
ss=$(( ss - 60)) # Zaehle Sekunden um 60 runter
|
||||
while [ $mm -ge "60" ]; do # Wenn die Minuten >= 60 sind
|
||||
hh=$(( hh + 1 )) # Zaehle Stunden um 1 hoch
|
||||
mm=$(( mm - 60 )) # Zaehle Minuten um 60 runter
|
||||
done
|
||||
done
|
||||
time2_start=$hh:$mm:$ss # Bringe die Zeit ins richtige Format
|
||||
time2_start=$hh:$mm:$ss # Bringe die Zeit ins richtige Format
|
||||
echo "Startcut= $time2_start"
|
||||
time="${time}${time2_start}-" # Auflistung aller Zeiten
|
||||
time="${time}${time2_start}-" # Auflistung aller Zeiten
|
||||
#Sekunden wie lange der Cut dauert
|
||||
time_seconds_ende=$(cat "$tmp/$CUTLIST" | grep "Duration=" | cut -d= -f2 | head -n$head1 | tail -n1 | cut -d"." -f1 | /usr/bin/tr -d "\r")
|
||||
time_seconds_ende=$time_seconds_ende+$time_seconds_start #Die Sekunde in der der Cut endet
|
||||
ss=$time_seconds_ende # Setze die Sekunden auf $time_seconds_ende
|
||||
mm=0 #Setze die Minuten auf 0
|
||||
hh=0 #Setze die Stunden auf 0
|
||||
while [ $ss -ge "60" ]; do # Wenn die Sekunden >= 60 sind
|
||||
mm=$(( mm + 1 )) # Zaehle Minuten um 1 hoch
|
||||
ss=$(( ss - 60 )) # Zaehle Sekunden um 60 runter
|
||||
while [ $mm -ge "60" ]; do # Wenn die Minuten >= 60 sind
|
||||
hh=$(( hh + 1 )) # Zaehle Stunden um 1 hoch
|
||||
mm=$(( mm - 60 )) # Zaehle Minuten um 60 runter
|
||||
ss=$time_seconds_ende # Setze die Sekunden auf $time_seconds_ende
|
||||
mm=0 # Setze die Minuten auf 0
|
||||
hh=0 # Setze die Stunden auf 0
|
||||
while [ $ss -ge "60" ]; do # Wenn die Sekunden >= 60 sind
|
||||
mm=$(( mm + 1 )) # Zaehle Minuten um 1 hoch
|
||||
ss=$(( ss - 60 )) # Zaehle Sekunden um 60 runter
|
||||
while [ $mm -ge "60" ]; do # Wenn die Minuten >= 60 sind
|
||||
hh=$(( hh + 1 )) # Zaehle Stunden um 1 hoch
|
||||
mm=$(( mm - 60 )) # Zaehle Minuten um 60 runter
|
||||
done
|
||||
done
|
||||
time2_ende=$hh:$mm:$ss # Bringe die Zeit ins richtige Format
|
||||
time2_ende=$hh:$mm:$ss # Bringe die Zeit ins richtige Format
|
||||
echo "Endcut= $time2_ende"
|
||||
time="${time}${time2_ende}," #Auflistung alles Zeiten
|
||||
time="${time}${time2_ende}," # Auflistung alles Zeiten
|
||||
head1=$(( head1 + 1 ))
|
||||
cut_anzahl=$(( cut_anzahl - 1 ))
|
||||
done
|
||||
|
@ -1470,15 +1460,15 @@ if [ $OTRcutactiv = "on" ] ; then
|
|||
head1=1
|
||||
echo "Es müssen $cut_anzahl Cuts umgerechnet werden"
|
||||
while [ $cut_anzahl -gt 0 ]; do
|
||||
#Der Frame bei dem der Cut beginnt
|
||||
# Der Frame bei dem der Cut beginnt
|
||||
startframe=$(cat "$tmp/$CUTLIST" | grep "StartFrame=" | cut -d= -f2 | head -n$head1 | tail -n1 | /usr/bin/tr -d "\r")
|
||||
echo "Startframe= $startframe"
|
||||
time="${time}$startframe-" #Auflistung der Cuts
|
||||
#Die Frames wie lange der Cut dauert
|
||||
time="${time}$startframe-" # Auflistung der Cuts
|
||||
# Die Frames wie lange der Cut dauert
|
||||
stopframe=$(cat "$tmp/$CUTLIST" | grep "DurationFrames=" | cut -d= -f2 | head -n$head1 | tail -n1 | /usr/bin/tr -d "\r")
|
||||
stopframe=$(( stopframe + startframe)) #Der Frame bei dem der Cut endet
|
||||
stopframe=$(( stopframe + startframe)) # Der Frame bei dem der Cut endet
|
||||
echo "Endframe= $stopframe"
|
||||
time="${time}$stopframe," #Auflistung der Cuts
|
||||
time="${time}$stopframe," # Auflistung der Cuts
|
||||
head1=$(( head1 + 1 ))
|
||||
cut_anzahl=$(( cut_anzahl - 1 ))
|
||||
done
|
||||
|
@ -1492,7 +1482,7 @@ if [ $OTRcutactiv = "on" ] ; then
|
|||
# Hier wird nun die Zeit ins richtige Format für avcut umgerechnet
|
||||
# ---------------------------------------------------------------------
|
||||
time="0 "
|
||||
framediff=$(echo | gawk '{print 1/'${fps}'}') # Zeitdifferenz für genau 1 Frame, da avcut mit Zeitwerten arbeitet
|
||||
framediff=$(echo | gawk '{print 1/'${fps}'}') # Zeitdifferenz für genau 1 Frame, da avcut mit Zeitwerten arbeitet
|
||||
if [ $LOGlevel = "2" ] ; then
|
||||
echo "Zeitdifferenz für genau 1 Frame für die manuelle Cutlistkorrektur für avcut: $framediff"
|
||||
echo "FrameversatzAnfangCut: $FrameversatzAnfangCut"
|
||||
|
@ -1540,7 +1530,7 @@ if [ $OTRcutactiv = "on" ] ; then
|
|||
done
|
||||
fi
|
||||
|
||||
time="${time}- " # Rest des Films verwerfen
|
||||
time="${time}- " # Rest des Films verwerfen
|
||||
echo "---- ENDE ----" ; echo -e
|
||||
sleep 1
|
||||
}
|
||||
|
@ -1553,7 +1543,7 @@ if [ $OTRcutactiv = "on" ] ; then
|
|||
if [ "$SMARTRENDERING" = "on" ]; then
|
||||
echo "> Übergebe die Cuts an avcut"
|
||||
|
||||
# für ARMv7 unterstützt avcut noch nicht die Operanten -i & -o ==> Abhilfe: avcut-0.4 für ARMv7 kompilieren
|
||||
# für ARMv7 unterstützt avcut noch nicht die Operanten -i & -o ==> Abhilfe: avcut-0.4 für ARMv7 kompilieren (ohne Nachteil)
|
||||
if [ $machinetyp = "x86_64" ] || [ $machinetyp = "i686" ]; then
|
||||
AVCUTLOG=$(time nice -n $niceness $avcut -p "${APPDIR}/includes/avcut_otr.profile" -i "$film" -o "$outputfile" $time 2>&1) # Befehl ausführen
|
||||
else
|
||||
|
@ -1695,12 +1685,12 @@ if [ $OTRcutactiv = "on" ] ; then
|
|||
|
||||
# Es gibt zwei Methoden, um auf lokal vorhandene Cutlist zu testen
|
||||
# sollen AC3-Remuxte Filme mit eigener Cutlist geschnitten werden, ist vorzugsweise die Methode 2 zu wählen,
|
||||
# d.h. die Variable "OTRlocalcutlistdir" in den Einstellungen nicht zu setzen
|
||||
# d.h. die Variable "OTRlocalcutlistdir" in den Einstellungen nicht zu setzen (weil sich die Filmgröße geändert hat)
|
||||
echo -n "Suche nach einer lokalen Cutlist ---> "
|
||||
if [ -d "$OTRlocalcutlistdir" ]; then
|
||||
# Methode 1:
|
||||
# hier werden nur Cutlist verwendet wo Filmgröße und Name übereinstimmen
|
||||
# Die Variable OTRlocalcutlistdir mit dem Quellordner der Cutlist muss gesetzt sein
|
||||
# hier werden nur Cutlist verwendet wo Filmgröße und Name übereinstimmen
|
||||
# Die Variable OTRlocalcutlistdir mit dem Quellordner der Cutlist muss gesetzt sein
|
||||
AC_getlocalcutlist_withCheck
|
||||
else
|
||||
# Methode 2:
|
||||
|
@ -1882,8 +1872,8 @@ if [ $OTRavi2mp4active = "on" ] && [ ! -z "$filetest" ] ; then
|
|||
echo "Erkannter Encoder: fdk-aac [1.Wahl]"
|
||||
if [ $normalizeAudio = "on" ] ; then
|
||||
# ------- Audio normalisieren:
|
||||
volumeinfo=$(ffmpeg -i "$audiofile" -af "volumedetect" -f null - 2>&1 | awk '-F: ' '/max_volume/ { gsub(/ .*/, "", $2); print $2 }' | sed 's/-//g') # |grep max_volume | awk -F: '{ print $2 }' | sed 's/ dB//g' | sed 's/ -//g')
|
||||
echo "Lautstärkeanhebung um: $volumeinfo dB"
|
||||
volumeinfo=$(ffmpeg -i "$audiofile" -af "volumedetect" -f null - 2>&1 | awk '-F: ' '/max_volume/ { gsub(/ .*/, "", $2); print $2 }' | sed 's/-//g') # |grep max_volume | awk -F: '{ print $2 }' | sed 's/ dB//g' | sed 's/ -//g')
|
||||
echo "Lautstärkeanhebung um: $volumeinfo dB"
|
||||
convertLOG=$(nice -n $niceness $ffmpeg -threads 2 -loglevel $ffloglevel -i "$audiofile" -c:a libfdk_aac -b:a "${OTRaacqal%k}k" -af "volume=$volumeinfo"dB "$audiofile.m4a" 2>&1)
|
||||
else
|
||||
convertLOG=$(nice -n $niceness $ffmpeg -threads 2 -loglevel $ffloglevel -i "$audiofile" -c:a libfdk_aac -b:a "${OTRaacqal%k}k" "$audiofile.m4a" 2>&1)
|
||||
|
@ -1892,8 +1882,8 @@ if [ $OTRavi2mp4active = "on" ] && [ ! -z "$filetest" ] ; then
|
|||
echo "Erkannter Encoder: nativ (ffmpeg > 3.0) [2.Wahl]"
|
||||
if [ $normalizeAudio = "on_" ] ; then
|
||||
# ------- Audio normalisieren:
|
||||
volumeinfo=$(ffmpeg -i "$audiofile" -af "volumedetect" -f null - 2>&1 | awk '-F: ' '/max_volume/ { gsub(/ .*/, "", $2); print $2 }' | sed 's/-//g') # |grep max_volume | awk -F: '{ print $2 }' | sed 's/ dB//g' | sed 's/ -//g')
|
||||
echo "Lautstärkeanhebung um: $volumeinfo dB"
|
||||
volumeinfo=$(ffmpeg -i "$audiofile" -af "volumedetect" -f null - 2>&1 | awk '-F: ' '/max_volume/ { gsub(/ .*/, "", $2); print $2 }' | sed 's/-//g') # |grep max_volume | awk -F: '{ print $2 }' | sed 's/ dB//g' | sed 's/ -//g')
|
||||
echo "Lautstärkeanhebung um: $volumeinfo dB"
|
||||
convertLOG=$(nice -n $niceness $ffmpeg -loglevel $ffloglevel -threads 2 -i "$audiofile" -c:a aac -strict -2 -b:a "${OTRaacqal%k}k" -af "volume=$volumeinfo"dB "$audiofile.m4a" 2>&1)
|
||||
else
|
||||
convertLOG=$(nice -n $niceness $ffmpeg -loglevel $ffloglevel -threads 2 -i "$audiofile" -c:a aac -strict -2 -b:a "${OTRaacqal%k}k" "$audiofile.m4a" 2>&1)
|
||||
|
@ -1905,8 +1895,8 @@ if [ $OTRavi2mp4active = "on" ] && [ ! -z "$filetest" ] ; then
|
|||
fi
|
||||
if [ $normalizeAudio = "on" ] ; then
|
||||
# ------- Audio normalisieren:
|
||||
volumeinfo=$(ffmpeg -i "$audiofile" -af "volumedetect" -f null - 2>&1 | awk '-F: ' '/max_volume/ { gsub(/ .*/, "", $2); print $2 }' | sed 's/-//g') # |grep max_volume | awk -F: '{ print $2 }' | sed 's/ dB//g' | sed 's/ -//g')
|
||||
echo "Lautstärkeanhebung um: $volumeinfo dB"
|
||||
volumeinfo=$(ffmpeg -i "$audiofile" -af "volumedetect" -f null - 2>&1 | awk '-F: ' '/max_volume/ { gsub(/ .*/, "", $2); print $2 }' | sed 's/-//g') # |grep max_volume | awk -F: '{ print $2 }' | sed 's/ dB//g' | sed 's/ -//g')
|
||||
echo "Lautstärkeanhebung um: $volumeinfo dB"
|
||||
convertLOG=$(nice -n $niceness $ffmpeg -loglevel $ffloglevel -threads 2 -i "$audiofile" -acodec libfaac -ab "${OTRaacqal%k}k" -af "volume=$volumeinfo"dB "$audiofile.m4a" 2>&1)
|
||||
else
|
||||
convertLOG=$(nice -n $niceness $ffmpeg -loglevel $ffloglevel -threads 2 -i "$audiofile" -acodec libfaac -ab "${OTRaacqal%k}k" "$audiofile.m4a" 2>&1)
|
||||
|
@ -1993,8 +1983,6 @@ if [ $OTRavi2mp4active = "on" ] && [ ! -z "$filetest" ] ; then
|
|||
done
|
||||
elif [ $OTRavi2mp4active = "off" ] ; then
|
||||
echo -e ; echo -e ; echo "==> in MP4 konvertieren ist deaktiviert"
|
||||
# else
|
||||
# echo "==> Variable für OTRavi2mp4active falsch gesetzt ==> Wert >OTRavi2mp4active< in den Einstellungen überprüfen!"
|
||||
fi
|
||||
IFS=$OLDIFS
|
||||
sleep 1
|
||||
|
@ -2280,7 +2268,6 @@ for i in $(find "$WORKDIR" -maxdepth 1 -name "*TVOON*avi" -o -name "*TVOON*mp4"
|
|||
|
||||
if [ ! -z "$rowid" ] ; then
|
||||
echo -n "aktualisiere Datensatz $rowid"
|
||||
# sSQL="UPDATE raw SET file_original='$filename', file_rename='$NewNameMask', miss_series='$missSeries', format='$format', titel='$titleMask', datum='$YYYY-$Mo-$DD', zeit='$HH:$Min:00', dauer='$duration', sender='$Channel', otrid='$OTRID', serie_titel='$serietitleMask', serie_season='$season', serie_episode='$episode', serie_episodentitel='$episodetitleMask', serie_episodebeschreibung='$descriptionMask', lastcheckday=$today, checkcount=0, fps='$fps', realdauer='$realduration', scantype='$scantype', pix_height='$height', pix_width='$width', aspect_ratio='$aspect_ratio', v_codec='$v_codec', a_codec='$a_codec' WHERE rowid=$rowid"
|
||||
sSQL="UPDATE raw SET file_rename='$NewNameMask', miss_series='$missSeries', format='$format', titel='$titleMask', datum='$YYYY-$Mo-$DD', zeit='$HH:$Min:00', dauer='$duration', sender='$Channel', otrid='$OTRID', serie_titel='$serietitleMask', serie_season='$season', serie_episode='$episode', serie_episodentitel='$episodetitleMask', serie_episodebeschreibung='$descriptionMask', lastcheckday=$today, checkcount=0, fps='$fps', realdauer='$realduration', scantype='$scantype', pix_height='$height', pix_width='$width', aspect_ratio='$aspect_ratio', v_codec='$v_codec', a_codec='$a_codec' WHERE rowid=$rowid"
|
||||
else
|
||||
echo -n "füge neuen Datensatz ein"
|
||||
|
@ -2330,11 +2317,9 @@ OTRopenrename()
|
|||
IFS=$'\n'; # ==> den 'Internal Field Separator' so verändern, dass Felder nur noch durch Zeilenumbrüche (und nicht [zusätzlich] durch Leerzeichen) getrennt werden.
|
||||
NewName=$NameSyntax # Muster aus Konfiguration laden
|
||||
if [ $OTRrenameactiv = "on" ] && [ $firstrunonday == "1" ] ; then
|
||||
#if [ $OTRserieninfo = "on" ] && [ $firstrunonday == "1" ] ; then
|
||||
echo -e ; echo -e
|
||||
echo "==> OTRopenrename via SQLite [Umbenennungssyntax: $NameSyntax]"
|
||||
echo " [Umbenennungssyntax Serientitel: $NameSyntaxSerientitel]:"
|
||||
#echo -e
|
||||
echo " undefinierte Serien suchen:"
|
||||
|
||||
sSQL="SELECT rowid,file_rename,file_original,checkcount,format,titel,datum,zeit,dauer,sender,fps,realdauer,scantype,pix_height,pix_width,aspect_ratio,v_codec,a_codec FROM raw WHERE miss_series=1 AND NOT lastcheckday=$today AND checkcount<8"
|
||||
|
@ -2417,29 +2402,6 @@ if [ $OTRrenameactiv = "on" ] && [ $firstrunonday == "1" ] ; then
|
|||
# elif [ ! -z "$serieninfo" ] ; then # ist nicht zuverlässig < 2018-06-14
|
||||
elif [[ "$OTRID" =~ $regInt ]]; then # Ist die OTR-Id eine echte Zahl?
|
||||
if jq -e . >/dev/null 2>&1 <<<"$serieninfo"; then # prüfen, ob korrektes JSON-Format verarbeitet werden kann (https://stackoverflow.com/questions/46954692/check-if-string-is-a-valid-json-with-jq)
|
||||
|
||||
# Zeichenkorrektur:
|
||||
#serieninfo=`echo $serieninfo | sed "s/<!DOCTYPE html>//g" | sed 's/\\\u00e4/ä/g' | sed 's/\\\u00f6/ö/g' | sed 's/\\\u00c4/Ä/g' | sed 's/\\\u00d6/Ö/g' | sed 's/\\\u00fC/ü/g' | sed 's/\\\u00dC/Ü/g' | sed 's/\\\u00dF/ß/g' | sed 's/\ & / und /g' | sed 's/\&/ und /g'`
|
||||
#serieninfo=`echo $serieninfo | sed "s/<!DOCTYPE html>//g" | sed -f ${APPDIR}/includes/decode.sed `
|
||||
|
||||
#echo -e; echo "OTR-Serien-Rückgabe:"; echo "$serieninfo"; echo -e
|
||||
|
||||
#OTRID=`echo "$serieninfo" | awk -F, '{print $1}' | awk -F: '{print $2}' | sed "s/\"//g"`
|
||||
|
||||
# if [ ! -z "$OTRID" ] ; then # [[ `echo "$eingabe" | grep -E ^[[:digit:]]+$` ]] # < 2018-06-14
|
||||
# re='^[0-9]+$'
|
||||
# if ! [[ $yournumber =~ $re ]] ; then
|
||||
# if [[ "$OTRID" =~ $regInt ]]; then # Ist die OTR-Id eine echte Zahl?
|
||||
# echo -e "Serverantwort konnte nicht verarbeitet werden (keine OTRID erkannt)"
|
||||
# echo " $serieninfo"
|
||||
# sSQLupdate="UPDATE raw SET lastcheckday=$today, checkcount=$(($checkcount+1)) WHERE rowid=$id"
|
||||
# if [ $LOGlevel = "2" ] ; then
|
||||
# echo " ==> SQLupdate: $sSQLupdate"
|
||||
# fi
|
||||
# sqlite3 ${APPDIR}/app/etc/synOTR.sqlite "$sSQLupdate"
|
||||
# continue
|
||||
# fi
|
||||
|
||||
echo -e "gefunden:"
|
||||
echo "OTRID: $OTRID"
|
||||
serietitle=`echo "$serieninfo" | jq -r '.Serie' | sed "s/://g" ` # jq ist ein Kommandozeilen-JSON-Parser
|
||||
|
@ -2494,7 +2456,6 @@ if [ $OTRrenameactiv = "on" ] && [ $firstrunonday == "1" ] ; then
|
|||
|
||||
NewName="$NewName.$fileextension"
|
||||
echo -e; echo " Neuer Dateiname: $NewName" ; echo -e
|
||||
|
||||
echo " ==> umbenennen:"
|
||||
|
||||
if [ -f "${DESTDIR}/$NewName" ]; then # Prüfen, ob Zielname bereits vorhanden ist
|
||||
|
|
Loading…
Reference in a new issue