Pagina 1 di 1

Script DVD->divx

Inviato: mer 14 feb 2007, 16:33
da wakkokid
Salve,
Sto lavorando ad uno script per Codificare un DVD in divx con MEncoder.
Lo script è "a wizard", cioè presenta di volta in volta alcune opzioni tra quali l'utente sceglie, e "semigrafico" (grazie al programma "dialog")

http://www.theband.it/carlo/dripper.sh

[Edit:] la versione di riferimento è da ora quella su wikislacky http://www.slacky.it/wikislack/index.ph ... r_dvd2divx

Anche se ancora lo script non è completo, penso di essere giunto a buon punto. Per il momento lo script permette di:

-scegliere la directory di lavoro (controlla se ha i permessi in scritture)
-scegliere la lingua tra quelle che trova nel dvd
-scegliere la risoluzione
-scegliere la dimensione finale
-scegliere il bitrate audio
-scegliere alcune opzioni "più fini" (opzioni v4mv, versione del codec divx o mjpeg, metodo di scaling)
-alzare il volume audio
-trovare automaticamente il cropping migliore e di farlo modificare all'utente
-dividere il file in due parti se il file creato occupa più di 700 MB

inoltre può partire con la codifica immediatamente dopo il wizard o salvare i comandi necessari in un'altro script da eseguire successivamente.

In futuro vorrei aggiungere la possibilità di salvare i sottotitoli e di aggiungere un secondo stream audio al divx (doppio audio)

Vorrei dunque chiedere ai più esperti in codifica di dare un'occhiata a questo script e suggerirmi alcune correzzioni e a Loris il permesso (se lo script passa l'Esame 8) ) di pubblicarlo in wikislacky.

Saluti!
Wakko Kid

Inviato: mer 14 feb 2007, 16:46
da Loris
Intanto ti ho attivato per il wiki.
Ciao Loris

RE: script

Inviato: mer 14 feb 2007, 19:29
da ir0c
Premettendo che non me ne intendo molto di questo argomento causa mancanza di tempo o necessità, ho comunque dato un'occhiatina veloce allo script.

Come prima impressione vorrei specificare che mi sembra già molto buono e sopratutto molto intuitivo per essere una versione beta.

Ti devo dire che io in prima persona apprezzo molto questi lavori, (anche se alcuni possono risultare non perfetti) dal momento che non avrei idea delle direttive da dare MEncoder per la codifica da DVD a divx (o viceversa) causa argomento mai affronato!

Ultime cose:
- Tieni in considerazione che da quello che ho letto, il progetto è molto "ben pensato", nel senso che avendo una semigrafica 'ncurses-like' è completamente utilizzabile da shell remota ad esempio via ssh senza l'ausilio di un server di desktop-remoto (cosa non indifferente sui tempi di latenza).
- Se posso permettermi un consiglio: Ho visto che alla fine di tutte le richieste di input il programma chiede se codificare immediatamente oppure salvare i comandi in un secondo script.
Cosa molto buona anche questa! Sarebbe interessante (nel caso di questa seconda selezione) la possibilita (non obbligatoria) di poter impostare l'orario di partenza "dei lavori".

Ciao e buon lavoro!

Inviato: gio 15 feb 2007, 23:11
da wakkokid
Non ho acora provato, ma penso che così com'è non sia possibile utilizzarlo pienamente da shell remota poichè utilizza mplayer per fare alcune anteprime, ad esempio del cropping o della risoluzione. Si può comunque utilizzarlo da shell remota, però si dove inserire a mano i valori di cropping ecc che non vengono rilevati.

Potrei però modificarlo in maniera tale che, passando un argomento, del tipo
sh dripper.sh -nopreview possa essere agevolemente usato da shell remota... ci lavorerò.

Per il momento sto pensado a l'opzione di impostare l'orario di partenza dei lavori: il comando che intendo usare è at, che uso così:

at -f scriptqualunque ora:minuti


Però lo script viene eseguito in background (in console non viene visualizzato nulla, lo noto dall'occupazione della cpu) Invece per lo script sarebbe utile che venisse eseguito nella console in maniera da poter verificare l'avanzamento della procedura.
Sapete aiutarmi?

Re: Background

Inviato: lun 19 feb 2007, 20:45
da ir0c
Prova ad inserire di tanto in tanto qualche echo del tipo:

printf "Step 1 (acquisizione)... "

<comandi da eseguire>

printf "Complete\n"

printf "Step 2 (codifica)... "

<comandi da eseguire>

printf "Complete\n"

ovviamente il mio era un esempio!


Ciao!

Re: Background

Inviato: ven 23 feb 2007, 12:10
da wakkokid
ir0c ha scritto:Prova ad inserire di tanto in tanto qualche echo del tipo: [cut]
Il problema e' che l'output di mplayer "eliminerebbe" gli echo mandandoli fuori dallo schermo perche' molto prolisso, risultando cosi' inutile.
comunque, visto che non costa niente, li mettero' a programma riveduto e corretto... grazie del suggerimento!

Wakko Kid

Re: mplayer output

Inviato: ven 23 feb 2007, 16:21
da ir0c
Se gli output di mplayer non sono necessari da vedere,
puoi ridirezionarli verso /dev/null

Codice: Seleziona tutto

echo "Start encoding..."
mplayer .... file.avi >> /dev/null 
echo "Finish.."
Altrimenti non saprei!

Inviato: ven 23 feb 2007, 20:44
da wakkokid
Fan vedere la parcentuale di completamento dell'operazione corrente, il tempo rimanente, la dimensione prevista del file i frame al secondo mentre sta encodando... direi che sarebbe uno spreco buttarli nel /dev/null :-)