Stránka 1 z 1

Automator a HandbrakaCLI

PříspěvekNapsal: úte bře 04, 2014 9:05 pm
od Saddako
Jak by měla vypadat service pro překódování filmu do mp4?

Mám nastaveno že služba přijímá soubory filmu ve finderu. Shell je /bin/bash a předat vstup jako argumenty. Samotný příkaz pak vypadá asi takto. Aplikace HandBrakeCLI je v cestě a není proto (snad) potřeba její plnou cestu. Výstup do souboru TXT mám proto abych jej mohl použít jako součást GeekTools. Service se mi ukáže, ale nic nedělá... Kde je chyba? Jak by měla vypadat?

for xx in "$@"
do
HandBrakeCLI -i "$xx" -o ~/Desktop/"$xx".mp4 --preset="Normal" > HandBrake-log.txt
done

Pokud by šlo příkaz ještě obohatit o to aby během překódovávání nešel Mac spát, ale až po skončení práce, tak by to bylo dokonalý.

Re: Automator a HandbrakaCLI

PříspěvekNapsal: úte bře 04, 2014 11:41 pm
od ls8
Ten log vznikne? Je v něm něco?

Re: Automator a HandbrakaCLI

PříspěvekNapsal: stř bře 05, 2014 2:57 pm
od Saddako
Tak už jsem se dostal dál.

Service funguje pokud udělám

Kód: Vybrat vše
for f in "$@"
do HandBrakeCLI -i $f -o ~/Desktop/export.mp4
done


Tento příkaz funguje, ale nedokážu udělat aby výstupní jméno bylo stejné (nebo modifikované) jméno původní. Běžící proces lze případně z lišty "sestřelit".

S výstupem do soboru to funguje

Kód: Vybrat vše
for f in "$@"
do HandBrakeCLI -i $f -o ~/Desktop/export.mp4 > ~/Documents/HBlog.txt
done


Na ploše je vidět že se přepočítává, ale není to tak efektní jak bych si představoval. Probíhající službu pak již jde sestřelit pouze přes Monitor Aktivity.

Re: Automator a HandbrakaCLI

PříspěvekNapsal: stř bře 05, 2014 3:02 pm
od ls8
Ono ve $xx asi bude celá cesta, a ne jenom název souboru. Zkus pro parametr výstupu dát

Kód: Vybrat vše
-o "~/Desktop/$(basename $xx).mp4"

Re: Automator a HandbrakaCLI

PříspěvekNapsal: stř bře 05, 2014 3:05 pm
od Saddako
Super :D Díky je to ono.

Re: Automator a HandbrakaCLI

PříspěvekNapsal: stř bře 05, 2014 3:09 pm
od ls8
Do spánku ho můžeš na konci poslat příkazem

Kód: Vybrat vše
osascript -e 'tell application "System Events" to sleep'

Re: Automator a HandbrakaCLI

PříspěvekNapsal: stř bře 05, 2014 3:18 pm
od Saddako
A jaký příkaz lze použít aby neusnul během kódování? Mám pocit, že v normální situaci je schopný usnout i během kódování.

Re: Automator a HandbrakaCLI

PříspěvekNapsal: stř bře 05, 2014 3:31 pm
od ls8
To nevím, já mám automatické usínání vypnuté.

Re: Automator a HandbrakaCLI

PříspěvekNapsal: stř bře 05, 2014 3:35 pm
od DD_
http://reviews.cnet.com/8301-13727_7-57 ... p-in-os-x/

caffeinate by melo delat to co chces.

Re: Automator a HandbrakaCLI

PříspěvekNapsal: stř bře 05, 2014 3:56 pm
od Saddako
Nebo by možná šlo použít nějakou alternativu příkazu "pmset".

Re: Automator a HandbrakaCLI

PříspěvekNapsal: pát lis 28, 2014 9:48 am
od Saddako
Poradí někdo jakým přepínačem vynutím v HandBrakeCLI výstup do 16:9? Mám nějaké video, které je 16:9, ale běží zdrcnuté do 4:3 :/

Re: Automator a HandbrakaCLI

PříspěvekNapsal: pát lis 28, 2014 1:45 pm
od ls8
Nepoužívá to video anamorfní nastavení? Pak je záležitostí přehrávače, aby to zobrazil správně. Pokud chceš výstup s přesně definovaným rozlišením, jsou to přepínače --width a --height, hodnoty se zadávají v pixelech.

Re: Automator a HandbrakaCLI

PříspěvekNapsal: úte pro 02, 2014 12:20 pm
od Saddako
Tohle video má prostě blbý formát. Sice to na TV jde roztáhnout do 16:9, ale raději bych tomu filmu vnutil správný poměr stran tak aby to fungovalo všude. Výška a šířka tomu nepomohou.

Re: Automator a HandbrakaCLI

PříspěvekNapsal: úte pro 02, 2014 2:36 pm
od ls8
Takže když to video překóduješ s přesně nastaveným rozlišením, tak se stejně přehrává jinak?
Zkus přidat ještě parametr --pixel-aspect 1:1

Re: Automator a HandbrakaCLI

PříspěvekNapsal: úte pro 02, 2014 11:26 pm
od Saddako
Když dám překódovat s nastavením výšky a délky tak to stejně převezme aspect ratio z originálního (poblbanýho) originálu. Zkusím ještě ten pixel-aspect. Díky

Re: Automator a HandbrakaCLI

PříspěvekNapsal: stř pro 03, 2014 9:39 am
od ls8
Kdyžtak pošli celý příkazový řádek, kterým to kóduješ, asi tam budeš mít nejaký parametr, který to dělá.