mencoder [input file] -o [output file] -oac pcm -ovc lavc -lavcopts vcodec=libx264:vpass=2:vbitrate=1800 -fps 24000/1001 -ofps 24000/1001 -sub [file sottotitolo] -utf8 -subfont [path al font] -subfont-autoscale 1
Dove l’originale è un .mov codificato in H264 con l’audio in MPEG-4 AAC Stereo a 48000 kHz.
Dunque:
-oac pcm
trasforma l’audio in Wave. “copy” non è consentito con l’audio di questo file e “mp3lame” causava uno sfasamento audio/video che non riesco a spiegarmi. “lavc” stessa cosa, usando poi libmp3lame nel parametro acodec.
-ovc lavc
adopera la libreria di codec libavcodec, quella di default e consigliata.
-lavcopts
indica che seguono i parametri di encoding, separati da due punti (o da virgole, credo vadano bene uguale).
vcodec=libx264
codifica il video usando il Codec x264 H.264/AVC MPEG-4 Part 10.
vpass=2
esegue la codifica a doppia passata.
vbitrate=1800
setta il bitrate, credo costante, del video in output espresso in kbit/s.
-fps 24000/1001
specifica il Frame Rate del video di input, ossia 23.976 in questo caso. Se fosse stato 29.97 si sarebbe specificato scritto 30000/1001.
-ofps 24000/1001
stessa cosa, ma determina il FR del video codificato. In questo caso non cambia, quindi presumo che entrambe le opzioni sia inutili.
-sub [file sottotitolo]
specifica il file contente i sottotitoli da renderizzare.
-utf8
informa che i sottotitoli sono in formato Unicode 8. (Dipende, in questo caso lo erano, altrimenti va specificato l’esatto formato pena la comparsa di caratteri assurdi).
-subfont [path al font]
Il font da usare per i sottotitoli, un truetype credo sia il solo ad andar bene.
-subfont-autoscale 1
adatta la dimensione dei sottotitoli in proporzione all’altezza del video. Era l’unica ad andare bene, ma non sono riuscito a capire come specificare l’altezza del font in pixel o punti. Le altri opzioni sono 0 (no autoscale, viene piccolissimo), 2 (in proporzione alla larghezza, troppo grande) e 3 (in proporzione alla diagonale, troppo grande).
Il file di output era 36 MB, ovviamente causa audio PCM. Ricomprimendolo con lamemp3 da mencoder continua a sfasare l’audio. Ricodificandolo in AAC con Avidemux, ottengo un file perfetto di soli 600KB più grande dell’originale.