aggelos87 Δημοσ. 20 Φεβρουαρίου 2021 Δημοσ. 20 Φεβρουαρίου 2021 Συγνώμη αν αυτό είναι το λάθος μέρος που ρωτάω αλλά θεωρώ πως εδώ είναι το πιθανότερο να βρω απάντηση. Έχω ένα synlogy nas που του έχω εγκαταστήσει το ffmpeg ωστε σε mkv αρχεία να μπορεί να μου κάνει μετατροπή το DTS σε AC-3. Την παραπάνω διαδικασία την εκτελώ με την εντολή: Αναφορά σε κείμενο /usr/local/ffmpeg/bin/ffmpeg -i "/volume1/Entertainment/convert/file.mkv" -map 0:v -map 0:a:0 -map 0:a -map 0:s? -c:v copy -c:s copy -c:a copy -c:a:0 ac3 -disposition:a:0 default -disposition:a:1 0 "/volume1/Entertainment/Converted/file.mkv" και λειτουργεί άψογα. Αν θα ήθελα να φτιάξω ένα script που θα έκανε αυτή την μετατροπή σε όλα τα mkv που θα είχε ένας συγκεκριμένος φάκελος πως θα το έκανα; Βρήκα αυτό αλλά δεν λειτουργεί, να υποθέσω πως είναι για windows;; Spoiler $sources = Get-ChildItem -path "/volume1/Entertainment/Convert*" -Recurse -Include *.mkv $ffpath = "/usr/local/ffmpeg/bin/ffmpeg" foreach ($source in $sources) {$DirOut = "/volume1/Entertainment/Converted" $output = Join-Path $DirOut -ChildPath ((Get-Item $source).basename + ".mkv") & $ffpath -i $source -map 0:v -map 0:a:0 -map 0:a -map 0:s? -c:v copy -c:s copy -c:a copy -c:a:0 ac3 -disposition:a:0 default -disposition:a:1 0 $output -loglevel 8 -stats} Το log γράφει: Spoiler sh: =: command not found sh: line 1: =: command not found sh: -c: line 2: syntax error near unexpected token `$source' sh: -c: line 2: `foreach ($source in $sources) ' Έχουμε καμιά ιδέα;;
coffeex Δημοσ. 21 Φεβρουαρίου 2021 Δημοσ. 21 Φεβρουαρίου 2021 (επεξεργασμένο) Ναι είναι για windows. Φτιάξε ένα sh αρχείο και βάλε αυτά cd /volume1/Entertainment/convert/ for i in *.mkv do /usr/local/ffmpeg/bin/ffmpeg -i $i -map 0:v -map 0:a:0 -map 0:a -map 0:s\? -c:v copy -c:s copy -c:a copy -c:a:0 ac3 -disposition:a:0 default -disposition:a:1 0 /volume1/Entertainment/Converted/$i.mkv done Επεξ/σία 21 Φεβρουαρίου 2021 από coffeex 1 1
Oxygene Δημοσ. 21 Φεβρουαρίου 2021 Δημοσ. 21 Φεβρουαρίου 2021 Καλύτερα με την while για να μην έχεις θέμα με τα αρχεία που έχουν κενά στα ονόματα τους: cd /volume1/Entertainment/convert/ ls -1 *.mkv | while read line do /usr/local/ffmpeg/bin/ffmpeg -i "$line" -map 0:v -map 0:a:0 -map 0:a -map 0:s\? -c:v copy -c:s copy -c:a copy -c:a:0 ac3 -disposition:a:0 default -disposition:a:1 0 "/volume1/Entertainment/Converted/$line" done 1 1
aggelos87 Δημοσ. 21 Φεβρουαρίου 2021 Μέλος Δημοσ. 21 Φεβρουαρίου 2021 Ευχαριστώ πολύ για την βοήθεια Το script του Oxygene έκανε την μετατροπή του πρώτου αρχείου στον φάκελο και μετά σταμάτησε, ίσως να έκανα κι εγώ κάποιο λάθος βέβαια γιατί άλλαξα λίγο τους φάκελους Το script του coffeex φαίνεται να λειτουργεί κανονικά
asfodelus Δημοσ. 26 Φεβρουαρίου 2021 Δημοσ. 26 Φεβρουαρίου 2021 Αν ξέρεις πως να το κάνεις απο την γραμμή εντολών, ξέρεις πως να το κάνεις και script https://linux-user.gr/t/mathe-na-ftiachneis-mikra-script-an-esy-den-xereis-kati-tha-to-xerei-to-internet/736 1
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα