Videoumwandlung per Befehlssteuerung

Status
Für weitere Antworten geschlossen.

AndiHeitzer

Benutzer
Sehr erfahren
Mitglied seit
30. Jun 2015
Beiträge
3.214
Punkte für Reaktionen
503
Punkte
174
Ich habe das Script, dass Du oben gepostet hast, mit meinen Variablen 'gefüttert'.
Deinen Fehler kann ich nicht nachvollziehen.

Dafür meckert er bei mir, daß ich keine Ausgabe-Datei angegeben hätte ...

Rich (BBCode):
[root@DS916AH] /volume1/_WARTUNGS-SCRIPTE_ > ./convert_vid-test.sh
MKV-Videodatei vorhanden ...
FFMPEG ist unter /bin/ffmpeg installiert ...
ffmpeg version 2.7.1 Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 4.9.3 (crosstool-NG 1.20.0) 20150311 (prerelease)
  configuration: --prefix=/usr --incdir='${prefix}/include/ffmpeg' --arch=i686 --target-os=linux --cross-prefix=/usr/local/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu- --enable-cross-compile --enable-optimizations --enable-pic --enable-gpl --enable-shared --disable-static --enable-version3 --enable-nonfree --enable-libfaac --enable-encoders --enable-pthreads --disable-bzlib --disable-protocol=rtp --disable-muxer=image2 --disable-muxer=image2pipe --disable-swscale-alpha --disable-ffserver --disable-ffplay --disable-devices --disable-bzlib --disable-altivec --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libmp3lame --disable-vaapi --disable-decoder=amrnb --disable-encoder=zmbv --disable-encoder=dca --disable-encoder=ac3 --disable-encoder=ac3_fixed --disable-encoder=eac3 --disable-decoder=dca --disable-decoder=eac3 --disable-decoder=truehd --cc=/usr/local/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-ccache-gcc --enable-yasm --enable-libx264 --enable-encoder=libx264
  libavutil      54. 27.100 / 54. 27.100
  libavcodec     56. 41.100 / 56. 41.100
  libavformat    56. 36.100 / 56. 36.100
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 16.101 /  5. 16.101
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.100 /  1.  2.100
  libpostproc    53.  3.100 / 53.  3.100
Trailing options were found on the commandline.
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/volume2/MULTIMEDIA/Video.bearbeiten/Ein Münchner im Himmel (1962).mkv':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    encoder         : Lavf56.36.100
  Duration: 00:10:21.44, start: 0.000000, bitrate: 1503 kb/s
    Stream #0:0(und): Video: mpeg4 (Advanced Simple Profile) (mp4v / 0x7634706D), yuv420p, 640x480 [SAR 1:1 DAR 4:3], 1115 kb/s, 25 fps, 25 tbr, 12800 tbn, 25 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(und): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, stereo, fltp, 384 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
    Side data:
      audio service type: main
At least one output file must be specified

Da müsste ich noch suchen gehen und recherchieren, weil ich auch kein 'Linux-Held' bin :rolleyes:

Evtl. liegt das aber daran, dass ich einfach ein mp4-File zu Testzwecken renamed habe ...
 

Hessi30

Benutzer
Mitglied seit
23. Nov 2012
Beiträge
131
Punkte für Reaktionen
2
Punkte
24
Mist jetzt kommen wir beide nicht mehr weiter. bin das Script eben auch nochmals durchgegangen aber ich seh da auch kein Fehler........
 

AndiHeitzer

Benutzer
Sehr erfahren
Mitglied seit
30. Jun 2015
Beiträge
3.214
Punkte für Reaktionen
503
Punkte
174
Ich fand schon was ...

Rich (BBCode):
for FILE in $(find "${WORKPATH}" -maxdepth 1 -name "*.MOV" -type f)
	do
		export DATEIFULL=`basename "${FILE}"`
		export DATEISUFF=`basename --suffix=.MOV "${FILE}"`    #####   Hier stand .mov statt .MOV drin
		export PFAD=`dirname "${FILE}"`
		export FILESIZE=$(du -h "${PFAD}/$DATEIFULL"|cut -f1)
		date +"[%Y%m%d - %H%M%S] Datei mit '${FILESIZE}' wird verarbeitet '${DATEIFULL}'" >>${WORKLOG}
		echo                                                                                      #####
		echo Ausgefuehrt wird folgender Befehl ...                           #####
		echo ${FFMPEGBIN} -i "${FILE}" ${CONVERTPARAM} "${PFAD}/${DATEISUFF}.mp4" #####
		echo                                                                                      #####
		${FFMPEGBIN} -i "${FILE}" ${CONVERTPARAM} "${PFAD}/${DATEISUFF}.mp4" -y
		#echo rm "${FILE}"
		#rm "${FILE}"
	done


Schau mal bei Dir, was bei den Zeilen mit den Rauten dann rauskommt ...
 

Hessi30

Benutzer
Mitglied seit
23. Nov 2012
Beiträge
131
Punkte für Reaktionen
2
Punkte
24
da kommt das selbe raus .... siehe vorgängerpost,

1.PNG
 

AndiHeitzer

Benutzer
Sehr erfahren
Mitglied seit
30. Jun 2015
Beiträge
3.214
Punkte für Reaktionen
503
Punkte
174
Hab Dir ne PN geschickt ...
 

AndiHeitzer

Benutzer
Sehr erfahren
Mitglied seit
30. Jun 2015
Beiträge
3.214
Punkte für Reaktionen
503
Punkte
174
Nachdem wir das gerade per TeamViewer in Augenscheingenommen haben ... :)

Folgende Zeile:
Rich (BBCode):
export CONVERTPARAM="-c:v mpeg4 -r 25 -b:v 16000 -c:a mp2 -ac 2 -ar 48000 -b:a 192k"

braucht noch ein Leerzeichen ...
Rich (BBCode):
export CONVERTPARAM= -c:v mpeg4 -r 25 -b:v 16000 -c:a mp2 -ac 2 -ar 48000 -b:a 192k
                    ^

Bitte schau nochmal, ob das laufen täte.
Bei meinen Sparparametern hat das schonmal geklappt :cool:
Achso und nur ohne die Gänsefüsschen (") bitte.
 

Hessi30

Benutzer
Mitglied seit
23. Nov 2012
Beiträge
131
Punkte für Reaktionen
2
Punkte
24
Perfekt, das läuft 1A!!! vielen lieben Dank an alle die mich unterstützt haben!!! großartig!
 

AndiHeitzer

Benutzer
Sehr erfahren
Mitglied seit
30. Jun 2015
Beiträge
3.214
Punkte für Reaktionen
503
Punkte
174
Guten Morgen Hessi30

So, und nun als Fleissaufgabe gedacht, kannst mal Dein ursprüngliches Script mit dem vergleichen, was nun ordentlich rennt. :)
Und das mit der Sprachverbindung mit TeamViewer muss ich auch noch üben ...
 

Hessi30

Benutzer
Mitglied seit
23. Nov 2012
Beiträge
131
Punkte für Reaktionen
2
Punkte
24
Mache ich bei Gelegenheit. Eine Verständnisfrage habe ich noch:

Die Definition WORKPATH="/volume1/photo/01-Photo-Backup/Videos/" ist dafür gedacht, dass das Script schaut wo die Videodateien ggf. liegen oder?
Wo kann ich definieren, dass er die umgewandelten Videodateien in einem anderen Ort/Pfad speichert?
 

PsychoHH

Benutzer
Mitglied seit
03. Jul 2013
Beiträge
2.967
Punkte für Reaktionen
4
Punkte
78
Würde da PFAD ändern und den Ort angeben, aber $FILE beibelassen.
 

AndiHeitzer

Benutzer
Sehr erfahren
Mitglied seit
30. Jun 2015
Beiträge
3.214
Punkte für Reaktionen
503
Punkte
174
Die Definition WORKPATH="/volume1/photo/01-Photo-Backup/Videos/" ist dafür gedacht, dass das Script schaut wo die Videodateien ggf. liegen oder?

Ja, so habe ich das bei mir vorgesehen :)

Wo kann ich definieren, dass er die umgewandelten Videodateien in einem anderen Ort/Pfad speichert?

Du könntest oben eine weitere Variable definieren, die den Zielpfad beinhaltet und diese Variable in der Konvertierungszeile einbauen:

Rich (BBCode):
##### Variablen vorbereiten
export LOGFILE=/volume1/_WARTUNGS-LOGS_/aktuelle_aufgabe_ablauf.txt
export dateiname=$(basename "$0")
date +"[%Y%m%d - %H%M%S] ${dateiname} - BEGINN">>$LOGFILE
export WORKLOG=/volume1/_WARTUNGS-LOGS_/convert_vid2mp4_automatisch.txt
export WORKPATH="/volume2/MULTIMEDIA/Video.bearbeiten/testconvert/"
export ZIELPFAD="/volume2/MULTIMEDIA/Video.bearbeiten/konvertiert/"
export WORKTIMESTART=$(date +%Y%m%d-%H%M%S)
export CONVERTPARAM= -c:v mpeg4 -r 25 -b:v 16000 -c:a mp2 -ac 2 -ar 48000 -b:a 192k
export FFMPEGBIN=/bin/ffmpeg


.
.
.

       ${FFMPEGBIN} -i "${FILE}" ${CONVERTPARAM} "${ZIELPFAD}/${DATEISUFF}.mp4" -y
 

Hessi30

Benutzer
Mitglied seit
23. Nov 2012
Beiträge
131
Punkte für Reaktionen
2
Punkte
24
Wo im Script haben wir nochmals definiert, dass er nach der Konvertierung die Original Datei löschen soll?
Ich muss da irgendwas geändert haben, da bei Ausführung des Scriptes die Originaldatei immer stehen bleibt und somit wird immer auf neue konvertiert obwohl es nicht nötig ist.
 

AndiHeitzer

Benutzer
Sehr erfahren
Mitglied seit
30. Jun 2015
Beiträge
3.214
Punkte für Reaktionen
503
Punkte
174
Im Posting NR 23 (KLICK) ist das die Zeile vor dem 'done'.
Dort ist der Löschbefehl mit dem #-Zeichen auskommentiert.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat