ffmpeg funziona esattamente come lo voglio io. Sono sicuro che quanto segue non è super pulito, ma funziona con un'eccezione: aggiunge semplicemente .mp4 al nome file originale in modo che il nuovo nome file abbia due estensioni.
Ho trascorso giorni a cercare problemi simili su più forum senza un vero aiuto. Ho provato a copiare e incollare suggerimenti con diversi errori. Mi piacerebbe davvero trascinare un file video su questa applet e farlo girare ffmpeg come ho specificato nella parte della shell con il file di output risultante creato nella posizione del file di input ma con un'estensione diversa.
Ho provato il metodo "filesString" e il \ "f \" + "{$ f%. *}" e per qualsiasi motivo non sembra che faccia nulla tranne il terminale aperto con il testo della shell . Altre opzioni danno luogo a un messaggio che afferma che c'è "NO USIT OUTPUT" che ho finalmente capito significa "qualunque cosa tu stia facendo è grandiosa, ma ti darò questo errore fino a che non togli gli spazi dal tuo file nome / cartelle ".
-
Per rilasciare un file e convertirlo in file con gli standard specificati. (Controllo)
-
Il file di output torna alla cartella in cui risiede il file di input. (Controllo)
-
Ma con solo la nuova estensione. (Fail)
-
Un bonus sarebbe quello di modificare lo script in modo tale da poter rilasciare una cartella di file sull'applet e convertirli 1 alla volta. Credo di poter rilasciare una cartella in questo momento ma poi apre più istanze di Terminale e processi contemporaneamente. Mi piacerebbe che i file venissero processati 1 alla volta.
on run {input, parameters}
repeat with file_ in input
tell application "System Events"
set inputFilename to name of (get properties of file_)
end tell
set inputFilePath to quoted form of (POSIX path of file_)
set outputFilePath to quoted form of (POSIX path of file_)
tell application "Terminal"
activate
do script "/usr/local/Cellar/ffmpeg/3.0.2/bin/ffmpeg -i " & inputFilePath & " -aspect 4:3 -vf yadif=0:-1:0,scale=720:486 -acodec libfdk_aac -cutoff 20000 -vcodec libx264 -preset medium -pix_fmt yuv420p " & outputFilePath & ".mp4"
end tell
end repeat
return input
end run