Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente bannato
    Registrato dal
    Mar 2001
    Messaggi
    423

    [mencoder]Creare un Divx con audio ogg- Pico Howto

    Questa non vuole essere una guida completa, è soltanto imho il miglior modo per creare un divx partendo da un dvd usando mencoder, commenterò soltanto le funzioni principali, indispensabili alla buona riuscita, chi volesse più informazione può consultare questi siti:
    http://xoomer.virgilio.it/marvigog/g...ipping_cmdline
    http://digilander.libero.it/w1llcoyote/
    http://digilander.libero.it/w1llcoyote/ex2.html
    http://www.infocom.it/dvd2ogm/#compressione-video
    (Ho preso praticamente tutto dagli ultimi due links)

    1 - Inserire il dvd nel lettore
    2 - mencoder -o -ovc copy -oac copy -aid 129 -dvd 1

    Estrae e decodifica il dvd nel file test.avi, annotarsi la durata del film in secondi, nel mio caso sono 5814, le opzioni degne di nota sono:
    -aid 129 Serve a selezionare la lingua, il numero varia per ogni dvd quindi bisogna cercare quello giusto, al suo posto si può usare anche -alang it ma solo per i dvd con una sola traccia in italiano (e comunque non funziona sempre).
    -dvd 1 Dice a mencoder di estrarre il primo title, in genere il film è quello, ma non sempre, anche qua bisogna provare.

    3 - mencoder -ovc frameno -oac pcm -o frameno.avi test.avi

    Serve a creare il file frameno.avi contenente l'audio, serve a mencoder per operazioni future

    4 - mplayer -vc dummy -vo null -hardframedrop -ao pcm -aofile test.wav test.avi

    Estrae l'audio in wav dal file avi.

    5 - oggenc -q3 -o test.ogg test.wav

    Converte l'audio in ogg, -q3 è la qualità, 3 imho va bene, si può aumentare ma aumenterebbero anche le dimansioni finali e ne risentirebbe la qualità del video, annotarsi la dimensione del file audio generato, nel mio caso 62.6 Mb

    6 - mplayer -vop cropdetect test.avi

    Serve a calcolare le "vere" dimensioni del filmato, tagliando le bande nere ai lati, quando parte il filmato bisogna attendere una scena "chiara" se la scena è scura mencoder potrebbe sbagliare, si otterrà un output simile a questo:

    crop area: X: 2..719 Y: 9..564 (-vop crop=718:554:2:10)15% 0,8% 0 0 49%
    A noi interessano: 718, 554, 2, 10 annotarseli

    7 - bitrate=(dimensionefinale x 1048576)-(dimensioneaudio x 1048576)x8/1.0115/temposec/1000

    Serve a calcolare il bitrate del video, nel mio caso (700 x 1048576)-(62.6 x 1048576) x 8 / 1.0115 / 5814 /1000 = 909
    Ho scelto 700 perchè è la dimensione del cd dove masterizzerò il divx, 909 è il risultato approssimato per difetto.

    8 - calcbpp.pl risoluzione 16/9 bitrate 25

    Tramite lo script calcbpp.pl (che allego) si calcola da dimensione ottimale in pixel del nostro divx.
    Risoluzione: quella ottenuta da "mplayer -vop cropdetect test.avi", nel mio caso 718x554
    16/9 In genere i dvd sono in 16/9 ma potrebbero anche essere in 4/3.
    bitrate: quello calcolato con l'equazione al punto 7
    25: Numero di frame al secondo del filmato, sinceramente non so dire di più, i dvd credo siano sempre con 25 Frame/s, ma altri tipi di filmati potrebbero avere un framerate diverso.
    L'output sarà simile a questo:
    calcbpp.pl 718x554 16/9 909 25
    Prescaled picture: 1021x554, AR 1.84
    720x384, diff 7, new AR 1.88, AR error 1.69% scale=720:384 bpp: 0.132
    704x384, diff -2, new AR 1.83, AR error 0.54% scale=704:384 bpp: 0.134
    688x368, diff 5, new AR 1.87, AR error 1.41% scale=688:368 bpp: 0.144
    672x368, diff -3, new AR 1.83, AR error 0.94% scale=672:368 bpp: 0.147
    656x352, diff 4, new AR 1.86, AR error 1.09% scale=656:352 bpp: 0.157
    640x352, diff -5, new AR 1.82, AR error 1.38% scale=640:352 bpp: 0.161
    624x336, diff 3, new AR 1.86, AR error 0.75% scale=624:336 bpp: 0.173
    608x336, diff -6, new AR 1.81, AR error 1.86% scale=608:336 bpp: 0.178
    592x320, diff 1, new AR 1.85, AR error 0.37% scale=592:320 bpp: 0.192
    576x320, diff -8, new AR 1.80, AR error 2.40% scale=576:320 bpp: 0.197
    560x304, diff 0, new AR 1.84, AR error 0.06% scale=560:304 bpp: 0.214
    544x288, diff 7, new AR 1.89, AR error 2.42% scale=544:288 bpp: 0.232
    528x288, diff -2, new AR 1.83, AR error 0.54% scale=528:288 bpp: 0.239
    512x272, diff 6, new AR 1.88, AR error 2.08% scale=512:272 bpp: 0.261
    496x272, diff -3, new AR 1.82, AR error 1.08% scale=496:272 bpp: 0.270
    480x256, diff 4, new AR 1.88, AR error 1.69% scale=480:256 bpp: 0.296
    464x256, diff -4, new AR 1.81, AR error 1.70% scale=464:256 bpp: 0.306
    448x240, diff 3, new AR 1.87, AR error 1.25% scale=448:240 bpp: 0.338
    432x240, diff -6, new AR 1.80, AR error 2.40% scale=432:240 bpp: 0.351
    416x224, diff 2, new AR 1.86, AR error 0.75% scale=416:224 bpp: 0.390
    400x224, diff -7, new AR 1.79, AR error 3.22% scale=400:224 bpp: 0.406
    384x208, diff 0, new AR 1.85, AR error 0.16% scale=384:208 bpp: 0.455
    368x192, diff 8, new AR 1.92, AR error 3.83% scale=368:192 bpp: 0.515
    352x192, diff -1, new AR 1.83, AR error 0.54% scale=352:192 bpp: 0.538
    336x176, diff 6, new AR 1.91, AR error 3.45% scale=336:176 bpp: 0.615
    320x176, diff -2, new AR 1.82, AR error 1.38% scale=320:176 bpp: 0.646


    Bisogna controllare l'ultimo valore di ogni riga e si sceglierà quello più simile a 0.24 , nel mio caso:
    528x288, diff -2, new AR 1.83, AR error 0.54% scale=528:288 bpp: 0.239
    La risoluzione del mio filmato sarà 528x288

    9 - mencoder -v -o /dev/null -oac copy -ovc lavc -vop scale=528:288,crop=718:554:2:10 -lavcopts vcodec=mpeg4:vbitrate=909:vhq:vqscale=2:vqmin=2:v4 mv:vpass=1 -sws 2 test.avi

    Primo passaggio, creerà il file divx2pass.log contenente informazioni per il secondo passaggio:
    -vop scale=528:288 la risoluzione ottenuta con calcbpp.pl al punto 8
    crop=718:554:2:10 I valori ottenuti con "mplayer -vop cropdetect test.avi" al punto 6
    vbitrate=909 Il bitrate del video ottenuto con l'equazione al punto 7

    10 - mencoder -v -o test.divx -oac copy -ovc lavc -vop scale=528:288,crop=718:554:2:10 -lavcopts vcodec=mpeg4:vbitrate=909:vhq:vqmin=2:v4mv:vpass=2 -sws 2 test.avi
    Secondo passaggio, genera i file nostro divx contenente l'audio non compresso

    11 - ogmmerge -o titolo.ogm -A test.divx test.ogg
    Genera il nostro file contenente il video e l'audio compressi, lasciare l'estensione ogm altrimenti mplayer si impalla.

    Sicuramente questo metodo si può migliorare, sono ben accetti consigli da chi ne sa più di me.
    Un mio amico che usa winzozz ha sbavato quando ha visto un divx che ho creato con questo metodo, ora mi tocca andargli ad installare Gentoo
    Marco Ugolini

  2. #2
    Utente bannato
    Registrato dal
    Mar 2001
    Messaggi
    423
    Ho dimenticato calcbpp.pl
    Eccolo:
    #!/usr/bin/perl -w

    use POSIX;

    sub round {
    my $v = shift;

    return floor($v + 0.5) != floor($v) ?
    floor($v + 0.5) :
    floor($v);
    }

    $raw_aspect = 720/576;

    if (scalar(@ARGV) < 4) {
    print("Please provide a) the cropped but unscaled resolution (e.g. " .
    "716x524), b) the aspect ratio (either 4/3 or 16/9 for most DVDs), " .
    "c) the video bitrate in kbps (e.g. 800) and d) the movie's fps.\n");
    print("If your DVD is not encoded at 720x576 then change the \$raw_aspect" .
    "variable at the beginning of this script.\n");
    exit(1);
    }

    ($unscaled_width, $unscaled_height) = split('x', $ARGV[0]);
    $encoded_at = $ARGV[1];
    if ($encoded_at =~ /\//) {
    my @a = split(/\//, $encoded_at);
    $encoded_at = $a[0] / $a[1];
    }
    $scaled_width = $unscaled_width * ($encoded_at / ($raw_aspect));
    $scaled_height = $unscaled_height;
    $picture_ar = $scaled_width / $scaled_height;
    ($bps, $fps) = @ARGV[2, 3];

    printf("Prescaled picture: %dx%d, AR %.2f\n", $scaled_width, $scaled_height,
    $picture_ar);
    for ($width = 720; $width >= 320; $width -= 16) {
    $height = 16 * round($width / $picture_ar / 16);
    $diff = round($width / $picture_ar - $height);
    $new_ar = $width / $height;
    $picture_ar_error = abs(100 - $picture_ar / $new_ar * 100);
    printf("${width}x${height}, diff % 3d, new AR %.2f, AR error %.2f%% " .
    "scale=%d:%d bpp: %.3f\n", $diff, $new_ar, $picture_ar_error, $width,
    $height, ($bps * 1000) / ($width * $height * $fps));

  3. #3
    ehm, mi space, ma non posoo essere un tester valido per il tuo howto, guarda qui:

    /home# mencoder -o -ovc copy -oac copy -aid 129 -dvd 1
    MEncoder 1.0pre2-3.3.2 (C) 2000-2003 MPlayer Team

    CPU: Advanced Micro Devices Athlon Thunderbird 1335 MHz (Family: 6, Stepping: 2)Detected cache-line size is 64 bytes
    MMX2 supported but disabled
    CPUflags: Type: 6 MMX: 1 MMX2: 0 3DNow: 1 3DNow2: 1 SSE: 0 SSE2: 0
    Compiled for x86 CPU with extensions: MMX 3DNow 3DNowEx SSE

    Reading /root/.mplayer/mencoder_codecs.conf: Can't open '/root/.mplayer/mencoder_codecs.conf': No such file or directory
    Reading /etc/mplayer/mencoder_codecs.conf: 61 audio & 157 video codecs
    File not found: 'frameno.avi'
    Failed to open frameno.avi
    Reading config file /root/.mplayer/mencoder: No such file or directory
    -dvd N is deprecated, use dvd://N instead.



  4. #4
    Utente bannato
    Registrato dal
    Mar 2001
    Messaggi
    423
    Io se fossi in te disinstallerei mplayer e mencoder e li installerei dai sorgenti
    Prova anche a farlo da utente invece che da root

  5. #5
    Originariamente inviato da arcobalenos
    Io se fossi in te disinstallerei mplayer e mencoder e li installerei dai sorgenti
    mi pare osirix diceva l'altro giorno che con la nuova versione di mplayer al posto di
    mplayer -dvd
    bisognasse scrivere
    mplayer ://dvd

  6. #6
    Utente di HTML.it L'avatar di gigyz
    Registrato dal
    Oct 2003
    Messaggi
    1,443
    esatto con le nuovi versioni a sintassi è cambiata.
    al posto di mplayer -vc dummy -vo null -hardframedrop -ao pcm -aofile test.wav test.avi
    io uso:
    mplayer -vc null -vo null -ao pcm -aofile test.wav -aop list=volnorm test.avi
    perchè molto spesso il volume dell'audio dei DVD è basso
    poi io in genere copio l'audio sei canali del dvd e estraggo l'audio in inglese convertendolo in ogg come hai fatto tu quindi con ogmmerge metto il video l'audio 6 canali italiano e l'audio in inglese in oggVorbis
    poi faccio anche i sottotitoli sempre durante la compressione usando -vobsubout sottotitoli -vobsuboutid it -vobuboutindex 0
    e naturalmente cambiando id e index faccio anche quelli in inglese. Tanto per sfizio tempo fa ho fatto su 2 cd un film con 9 sototitoli e tre lingue in OggVorbis.

  7. #7
    Utente di HTML.it L'avatar di osiryx
    Registrato dal
    Dec 2002
    Messaggi
    1,021
    Originariamente inviato da almafer
    mi pare osirix diceva l'altro giorno che con la nuova versione di mplayer al posto di
    mplayer -dvd
    bisognasse scrivere
    mplayer ://dvd
    mplayer dvd://1
    Avevo una ragazza, dovevamo sposarci, ma c'era un conflitto religioso.
    Lei era atea ed io agnostico. Non sapevamo *senza* quale religione
    educare i figli.
    -- Woody Allen

  8. #8
    scusatemi, forse dovrei aprire un 3d. ma provo prima con voi.
    Seguendo il consiglio di arcobalenos, ho installato i sorgenti di mplayer, precisamente MPlayer-0.92
    Ecco, se lo faccio partire devo riavviare, s'impalla tutto. tutto nero.....Perchè?? sinceramente non mi interessa. Quello che vorrei sapere è come eliminare questa installazione andata a pessimo fine, perche non posso reinstallare con apt il mio "vecchio" mplayer funzionante se prima non tolgo questo.
    che comnado devo usare?

  9. #9
    Utente di HTML.it L'avatar di osiryx
    Registrato dal
    Dec 2002
    Messaggi
    1,021
    apt-get remove mplayer
    Avevo una ragazza, dovevamo sposarci, ma c'era un conflitto religioso.
    Lei era atea ed io agnostico. Non sapevamo *senza* quale religione
    educare i figli.
    -- Woody Allen

  10. #10
    prova a spostarti nella cartella dove hai scompattato mplayer e dare
    make unistal
    se non funziona devi rimuovere a mano le varie voci

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.