Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Multimedia/Audio/FFmpeg/Dpg"
Differenze tra le versioni 2 e 14 (in 12 versioni)
Versione 2 del 08/06/2012 21.01.10
Dimensione: 2091
Commento:
Versione 14 del 28/02/2026 18.29.27
Dimensione: 5829
Autore: ivantu
Commento: +revisione guida
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
## page was renamed from CristianBattistel/Prova3
Linea 4: Linea 5:
<<Informazioni(forum="http://forum.ubuntu-it.org/index.php/topic,346297.0.html"; rilasci="11.10 12.04")>> <<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=346297"; rilasci="24.04 22.04 12.04 11.10")>>
Linea 9: Linea 10:

= Pacchetti necessari =
Linea 10: Linea 14:

= Preparativi =

Prima di cominciare è necessario creare uno script `perl` per la generazione automatica del file header.

{{{#!wiki note
Lo script può essere posizionato ed eseguito da qualsiasi posizione; tuttavia, per praticità, è consigliabile spostarlo nella cartella contenente i video da convertire.
}}}

 0. Aprire un [[Ufficio/EditorDiTesto|editor di testo]] e incollare il seguente contenuto:{{{
#!/usr/bin/perl

if($#ARGV!=6){
   print "usage: mkheader.pl <totalframes> <fps> <samplerate> <channels> <audiosize> <videosize> <filename>\n";
   exit;
}

open(f,">@ARGV[6]");
binmode(f);
print f pack(a4ixCxxiiiiii,
            'DPG0', # magic
            @ARGV[0], # frames
            @ARGV[1], # fps
            @ARGV[2], # samplerate
            @ARGV[3], # channels (0x00 for mp2, 0x0n for n-channel wave)
            36, # audio pos (starts right after header)
            @ARGV[4], # length of audio data
            36+@ARGV[4], # video pos (starts after audio data)
            @ARGV[5] # length of video data
           );
close(f);
 }}} Salvare il documento nominandolo `headermaker` e chiudere l'editor di testo.
 0. Rendere lo [[Programmazione/Script|script eseguibile]] digitando in un [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
chmod +x headermaker
 }}} avendo cura di sostituire `headermaker` con il nome scelto per lo script.
Linea 13: Linea 52:
 * Per estrarre la traccia audio direttamente nel formato compatibile, digitare il seguente comando in una finestra di [[AmministrazioneSistema/RigaDiComando|terminale]]: {{{ Per estrarre la traccia audio direttamente nel formato compatibile, digitare in un [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
ffmpeg -i input.avi -vn -c:a mp2 -b:a BITRATE -ar AUDIO_SAMPLING_RATE output.mp2
}}} sostituire `BITRATE` con il valore di bitrate audio e `AUDIO_SAMPLING_RATE` con la frequenza di campionamento.
Linea 15: Linea 56:
ffmpeg -i input.avi -vn -ab BITRATE -ar AUDIO_SAMPLING_RATE output.mp2 {{{#!wiki tip
In caso di dubbi sui valori da utilizzare, è consigliato impostare il bitrate a `160k` e il sampling rate a `32000`.
Linea 18: Linea 60:
avendo cura di sostituire a `BITRATE` il corretto valore di audio bitrate e a `AUDIO_SAMPLING_RATE` il corretto valore di sample rate. {{{#!wiki tip
Le dimensioni esatte in byte sono recuperabili cliccando con il tasto destro sui file e selezionando '''Proprietà''', oppure digitando nel [[AmministrazioneSistema/Terminale|terminale]] il comando `stat -c%s output.mp2`.
}}}
Linea 20: Linea 64:
Se non si è sicuri è possibile utilizzare questi valori standard:
||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Grandi/info.png,,center)>> ||<style="padding:0.5em; border:none;">Se non si è sicuri dei valori da utilizzare è possibile utilizzare questi: bitrate=160k samplig rate=32000||
= Estrarre la traccia video =
Linea 23: Linea 66:
Per estrarre la traccia video direttamente nel formato compatibile, digitare in un [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
ffmpeg -i input.avi -c:v mpeg1video -b:v BITRATE -aspect 16:9 -s 256x144 -an output.m1v
}}} sostituire `BITRATE` con il valore di bitrate video.
Linea 24: Linea 70:
DPG0 {{{#!wiki tip
Il valore massimo di bitrate supportato supera gli `800k`, tuttavia `256k` risulta sufficiente per mantenere una buona qualità riducendo il peso del file.
}}}
Linea 26: Linea 74:
Mono audio was used
DPG1
{{{#!wiki tip
Le dimensioni esatte in byte sono recuperabili cliccando con il tasto destro sui file e selezionando '''Proprietà''', oppure digitando nel [[AmministrazioneSistema/Terminale|terminale]] il comando `stat -c%s output.m1v`.<<BR>>I frame totali e i frame al secondo possono essere ricavati digitando il comando `ffprobe output.m1v`.
}}}
Linea 29: Linea 78:
Added stereo sound
DPG2
= Creazione headers =
Linea 32: Linea 80:
GOP List added for faster seeking
DPG3
 0. Per creare l'header è necessario ricavare alcune informazioni sui file appena generati.
  * Annotare le seguenti proprietà:
   * Frame totali del file video.
   * Frame al secondo (FPS) del file video.
   * Dimensioni del file audio in byte.
   * Dimensioni del file video in byte.
 0. Creare il file di intestazione digitando nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
./headermaker FRAME_TOTALI FPS SAMPLERATE CANALI DIMENSIONI_AUDIO DIMENSIONI_VIDEO output.bin
 }}} sostituire i parametri seguendo le indicazioni della tabella sottostante:
Linea 35: Linea 90:
Ability to choose OGG as audio format.
Better video Quality
DPG4 (MoonShell 2.00)
 ||||||<tablestyle="width:80%;">'''Parametri'''||
 || '''Sigla''' || '''Valore''' ||
 || FRAME_TOTALI || Frame totali del file video. ||
 || FPS || Frame al secondo del file video. ||
 || SAMPLERATE || Il sampling rate scelto in precedenza per il file audio. ||
 || CANALI || Il numero dei canali audio (per una traccia stereo inserire `0x00`). ||
 || DIMENSIONI_AUDIO || Le dimensioni del file audio in byte. ||
 || DIMENSIONI_VIDEO || Le dimensioni del file video in byte. ||
Linea 39: Linea 99:
Audio bitrate is 160KB/s
Video Quality is slightly improved (TESTED: Video bitrate at 800+KB/s without skipping).
= Creazione file .dpg =
Linea 42: Linea 101:
= Ulteriori risorse = Creare il file video finale unendo le tracce, digitando nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
cat output.bin output.mp2 output.m1v > output.dpg
}}}

{{{#!wiki important
I file devono essere uniti rigorosamente nel seguente ordine `.bin`, `.mp2`, `.m1v`.
}}}

##= Ulteriori risorse =

## * [[http://dpg.software.informer.com/wiki/|Wiki dpg in lingua inglese]]
## * [[http://mdxonline.dyndns.org/|Pagina ufficiale di Moonshell in cinese/inglese]]
Linea 45: Linea 115:
CategoryMultimedia

Guida verificata con Ubuntu: 22.04 24.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Il lettore multimediale per consolle Nintendo DS MoonShell è in grado di riprodurre esclusivamente video in formato .dpg. Tale formato non è altro che la fusione di una traccia video mpeg1, una traccia audio mpeg2 ed un file header con le informazioni per la corretta riproduzione dello streaming. Date queste peculiarità risulta impossibile convertire in maniera diretta e automatica un filmato tramite i principali strumenti di conversione audio/video.

Pacchetti necessari

Questa guida contiene passo passo le operazioni necessarie per l'ottenimento di un file .dpg correttamente eseguibile utilizzando FFmpeg e le informazioni necessarie per ottenere lo stesso risultato con qualsiasi altro strumento di conversione.

Preparativi

Prima di cominciare è necessario creare uno script perl per la generazione automatica del file header.

Lo script può essere posizionato ed eseguito da qualsiasi posizione; tuttavia, per praticità, è consigliabile spostarlo nella cartella contenente i video da convertire.

  1. Aprire un editor di testo e incollare il seguente contenuto:

    if($#ARGV!=6){
       print "usage: mkheader.pl <totalframes> <fps> <samplerate> <channels> <audiosize> <videosize> <filename>\n";
       exit;
    }
    
    open(f,">@ARGV[6]");
    binmode(f);
    print f pack(a4ixCxxiiiiii,
                'DPG0',        # magic
                @ARGV[0],      # frames
                @ARGV[1],      # fps
                @ARGV[2],      # samplerate
                @ARGV[3],      # channels (0x00 for mp2, 0x0n for n-channel wave)
                36,            # audio pos (starts right after header)
                @ARGV[4],      # length of audio data
                36+@ARGV[4],   # video pos (starts after audio data)
                @ARGV[5]       # length of video data
               );
    close(f);

    Salvare il documento nominandolo headermaker e chiudere l'editor di testo.

  2. Rendere lo script eseguibile digitando in un terminale il seguente comando:

    chmod +x headermaker

    avendo cura di sostituire headermaker con il nome scelto per lo script.

Estrarre la traccia audio

Per estrarre la traccia audio direttamente nel formato compatibile, digitare in un terminale il seguente comando:

ffmpeg -i input.avi -vn -c:a mp2 -b:a BITRATE -ar AUDIO_SAMPLING_RATE output.mp2

sostituire BITRATE con il valore di bitrate audio e AUDIO_SAMPLING_RATE con la frequenza di campionamento.

In caso di dubbi sui valori da utilizzare, è consigliato impostare il bitrate a 160k e il sampling rate a 32000.

Le dimensioni esatte in byte sono recuperabili cliccando con il tasto destro sui file e selezionando Proprietà, oppure digitando nel terminale il comando stat -c%s output.mp2.

Estrarre la traccia video

Per estrarre la traccia video direttamente nel formato compatibile, digitare in un terminale il seguente comando:

ffmpeg -i input.avi -c:v mpeg1video -b:v BITRATE -aspect 16:9 -s 256x144 -an output.m1v

sostituire BITRATE con il valore di bitrate video.

Il valore massimo di bitrate supportato supera gli 800k, tuttavia 256k risulta sufficiente per mantenere una buona qualità riducendo il peso del file.

Le dimensioni esatte in byte sono recuperabili cliccando con il tasto destro sui file e selezionando Proprietà, oppure digitando nel terminale il comando stat -c%s output.m1v.
I frame totali e i frame al secondo possono essere ricavati digitando il comando ffprobe output.m1v.

Creazione headers

  1. Per creare l'header è necessario ricavare alcune informazioni sui file appena generati.
    • Annotare le seguenti proprietà:
      • Frame totali del file video.
      • Frame al secondo (FPS) del file video.
      • Dimensioni del file audio in byte.
      • Dimensioni del file video in byte.
  2. Creare il file di intestazione digitando nel terminale il seguente comando:

    ./headermaker FRAME_TOTALI FPS SAMPLERATE CANALI DIMENSIONI_AUDIO DIMENSIONI_VIDEO output.bin
    sostituire i parametri seguendo le indicazioni della tabella sottostante:

    Parametri

    Sigla

    Valore

    FRAME_TOTALI

    Frame totali del file video.

    FPS

    Frame al secondo del file video.

    SAMPLERATE

    Il sampling rate scelto in precedenza per il file audio.

    CANALI

    Il numero dei canali audio (per una traccia stereo inserire 0x00).

    DIMENSIONI_AUDIO

    Le dimensioni del file audio in byte.

    DIMENSIONI_VIDEO

    Le dimensioni del file video in byte.

Creazione file .dpg

Creare il file video finale unendo le tracce, digitando nel terminale il seguente comando:

cat output.bin output.mp2 output.m1v > output.dpg

I file devono essere uniti rigorosamente nel seguente ordine .bin, .mp2, .m1v.


CategoryMultimedia