Progetto VideoSnaps
Inviato: 03/06/2015, 20:44
Ciao a tutti,
ho il piacere di annunciare che io ed AntoPisa abbiamo dato il via ad un bel progetto per creare i video di anteprima dei giochi sul Mame.
Tutto parte dall'intenzione di includere nel futuro sito ADB anche i video preview di alcuni giochi. Così chiedo l'autorizzazione per pubblicarli ma purtroppo non la ottengo. A quel punto non mi sono arreso ed ho cercato di farli da solo.
Ho provato e subito ho visto i primi problemi: processo lento, perdite di tempo per capire inizio/fine dei video, elaborazioni complicate dal fatto di usare strumenti differenti, opzioni codec complicate da ricordare, ecc.
Il procedimento è spiegato molto bene in un thread di PleasureDome e si capisce subito che richiede un sacco di tempo e che va ripetuto per ogni singolo gioco.
Ho scelto allora di cambiare il sorgente del Mame per adattarlo alle mie esigenze e dopo qualche giorno di prove e compilazioni sbagliate sono riuscito a rendere tutto il processo snello e veloce (senza tra l'altro usare direttamente strumenti di editing video). Il thread con le modifiche fatte al Mame lo avevo aperto su MameItalia.
Il funzionamento è semplice:
- avvio il gioco usando una versione modificata del Mame con l'opzione -record per registrare i file inp
- premo F12 per impostare il marcatore di inizio sequenza di "intro" (nota: non verranno creati gli snapshot)
- premo ancora F12 per marcarne la fine
- ripeto il procedimento per marcare la sequenza "gameplay"
- esco dal Mame
- lancio lo script di conversione video
La generazione del video è automatizzata in base ai file inp che ho nella cartella e viene prima creato il file avi in formato raw a 60fps a risoluzione nativa, circa 1GB per ogni minuto di registrazione. Poi vengono riconosciuti i due pezzi intro e gameplay, vengono tagliati ed assemblati (prima gameplay, poi intro), scalati per avere un aspect ratio corretto ed applicato un effetto fade-in per 50 frame circa. Infine il tutto viene convertito in doppia passata in svariati formati: mp4, avi.
Il processo non richiede il mio intervento ed è gestito da script Linux. L'orientamento viene riconosciuto da una chiamata/servizio al mio sito, quindi vengono segnalati eventuali errori durante i lavori (rom mancante, avi non creato, ecc) e se tutto va bene rimossi i file temporanei.
I vantaggi di questo approccio sono diversi:
- l'utente deve preoccuparsi solo di giocare e delimitare intro e gameplay (4 pressioni del tasto F12)
- l'operazione può essere ripetuta in maniera batch, magari quando trovo opzioni migliori o codec più performanti, oppure se voglio aggiungere un nuovo formato non previsto (tutti i file verrebbero convertiti e generati in maniera batch, io non devo fare nulla se non mandare in play il video finale per controllare che sia buono)
- l'attività dell'utente (record inp) non va più ripetuta
- la risoluzione è quella nativa del gioco
- la qualità dei file mp4 è molto alta, ottenuta con codifiche lente e parametri particolari
E' così che grazie all'aiuto di AntoPisa abbiamo predisposto un ambiente ed un documento con le linee guida da seguire.
Si tratta di un lavoro che inizia oggi, quindi sicuramente non è perfetto e chiunque voglia contribuire o migliorarlo basta che me lo segnali in questo thread.
Chi invece vuole collaborare può farlo in totale libertà (controllate prima il foglio su Google Drive per evitare di fare il lavoro doppio) oppure può scrivermi un messaggio privato e gli riserverò un lotto di rom da completare.
Tutti i file prodotti verranno pubblicati sul mio sito ADB, sul sito di AntoPisa (sotto forma di archivi ed aggiornamenti, ancora da pianificare nel dettaglio) e sullo spazio Mega (come archivi singoli mp4, avi, programmi).
Qualche dettaglio tecnico sui file prodotti:
- AVI: video xvid 1400k doppia passata, audio mp3 stereo 192k
- MP4: video h.264 qualità massima supportata, filtro animation+yuv444 per migliorarne la qualità ed i colori, audio aac stereo 192k
- MP3: audio qualità stereo 192k (è la stessa traccia del file avi esportata, nessuna conversione aggiuntiva)
I video sono a risoluzione nativa a 30fps con aspect ratio 4:3 per i giochi orizzontali e 3:4 per quelli verticali.
Una volta che avete i file inp e inp.timecode, potete spedirmeli che provvederò quanto prima a convertirli e pubblicarli.
Un ultimo appunto riguarda i permessi di utilizzo di questi file: chiunque può scaricarli ed usarli a patto che siano sempre riportati gli indirizzi di questo thread, il mio riferimento, quello di AntoPisa ed i rispettivi siti. Se intendete pubblicarli o includerli in raccolte, prima di farlo avvisatemi via pm. Ovviamente tutto il materiale deve essere fornito gratuitamente.
Una nota importante: gradirei avere dei riscontri di eventuali problemi nell'utilizzo di questi video con i vostri front-end, dei formati riconosciuti o no, di eventuali lentezze durante il play e cose simili. Infatti su pc vecchi non so quanto il codec Xvid sia ottimizzato per reggere il bitrate di 1400k, probabilmente andrà abbassato ad 800-900k perdendo un po' di qualità.
Il formato di riferimento per me è l'mp4 e sarà quello più curato, ma visto che è un processo automatico non ho problemi a creare un avi per i pc meno performanti (es. Pentium 4).
Il formato flv non l'ho gestito perchè lo reputo decisamente antiquato, nel caso fosse importante per alcuni utenti potrei pensare di includerlo.
Mi raccomando, mi aspetto un contributo da tutti
Considerate che per fare una ventina di giochi ci vuole poco più di mezz'ora e si producono 500k di file inp. Per tutto il resto ci penso io: conversione, controllo, pubblicazione, aggiornamento siti e documenti.
Detto questo, mi auguro che il progetto possa diventare sempre più grande grazie al vostro aiuto ed un riferimento per tutti quanti, proprio come lo sono oggi i file extra di ProgettoSnaps
Link al materiale:
- Documento con le linee guida
- Cartella del progetto
- Cartella dei video
- Stato avanzamento lavori sul sito Arcade Database
Documenti vecchi (non più utilizzati):
- Foglio con lo stato avanzamento lavori MAME
EDIT 19/06/2015: Cambio indirizzi per alcuni link Google a Mega.
EDIT 22/09/2015: Su Mega rimarranno solo i file mp4 (raggiunto il limite di 50GB)
EDIT 06/07/2018: Rimozione dei programmi su Mega ed l'unica fonte per i Mame ricompilati diventa Google Drive ADB.
ho il piacere di annunciare che io ed AntoPisa abbiamo dato il via ad un bel progetto per creare i video di anteprima dei giochi sul Mame.
Tutto parte dall'intenzione di includere nel futuro sito ADB anche i video preview di alcuni giochi. Così chiedo l'autorizzazione per pubblicarli ma purtroppo non la ottengo. A quel punto non mi sono arreso ed ho cercato di farli da solo.
Ho provato e subito ho visto i primi problemi: processo lento, perdite di tempo per capire inizio/fine dei video, elaborazioni complicate dal fatto di usare strumenti differenti, opzioni codec complicate da ricordare, ecc.
Il procedimento è spiegato molto bene in un thread di PleasureDome e si capisce subito che richiede un sacco di tempo e che va ripetuto per ogni singolo gioco.
Ho scelto allora di cambiare il sorgente del Mame per adattarlo alle mie esigenze e dopo qualche giorno di prove e compilazioni sbagliate sono riuscito a rendere tutto il processo snello e veloce (senza tra l'altro usare direttamente strumenti di editing video). Il thread con le modifiche fatte al Mame lo avevo aperto su MameItalia.
Il funzionamento è semplice:
- avvio il gioco usando una versione modificata del Mame con l'opzione -record per registrare i file inp
- premo F12 per impostare il marcatore di inizio sequenza di "intro" (nota: non verranno creati gli snapshot)
- premo ancora F12 per marcarne la fine
- ripeto il procedimento per marcare la sequenza "gameplay"
- esco dal Mame
- lancio lo script di conversione video
La generazione del video è automatizzata in base ai file inp che ho nella cartella e viene prima creato il file avi in formato raw a 60fps a risoluzione nativa, circa 1GB per ogni minuto di registrazione. Poi vengono riconosciuti i due pezzi intro e gameplay, vengono tagliati ed assemblati (prima gameplay, poi intro), scalati per avere un aspect ratio corretto ed applicato un effetto fade-in per 50 frame circa. Infine il tutto viene convertito in doppia passata in svariati formati: mp4, avi.
Il processo non richiede il mio intervento ed è gestito da script Linux. L'orientamento viene riconosciuto da una chiamata/servizio al mio sito, quindi vengono segnalati eventuali errori durante i lavori (rom mancante, avi non creato, ecc) e se tutto va bene rimossi i file temporanei.
I vantaggi di questo approccio sono diversi:
- l'utente deve preoccuparsi solo di giocare e delimitare intro e gameplay (4 pressioni del tasto F12)
- l'operazione può essere ripetuta in maniera batch, magari quando trovo opzioni migliori o codec più performanti, oppure se voglio aggiungere un nuovo formato non previsto (tutti i file verrebbero convertiti e generati in maniera batch, io non devo fare nulla se non mandare in play il video finale per controllare che sia buono)
- l'attività dell'utente (record inp) non va più ripetuta
- la risoluzione è quella nativa del gioco
- la qualità dei file mp4 è molto alta, ottenuta con codifiche lente e parametri particolari
E' così che grazie all'aiuto di AntoPisa abbiamo predisposto un ambiente ed un documento con le linee guida da seguire.
Si tratta di un lavoro che inizia oggi, quindi sicuramente non è perfetto e chiunque voglia contribuire o migliorarlo basta che me lo segnali in questo thread.
Chi invece vuole collaborare può farlo in totale libertà (controllate prima il foglio su Google Drive per evitare di fare il lavoro doppio) oppure può scrivermi un messaggio privato e gli riserverò un lotto di rom da completare.
Tutti i file prodotti verranno pubblicati sul mio sito ADB, sul sito di AntoPisa (sotto forma di archivi ed aggiornamenti, ancora da pianificare nel dettaglio) e sullo spazio Mega (come archivi singoli mp4, avi, programmi).
Qualche dettaglio tecnico sui file prodotti:
- AVI: video xvid 1400k doppia passata, audio mp3 stereo 192k
- MP4: video h.264 qualità massima supportata, filtro animation+yuv444 per migliorarne la qualità ed i colori, audio aac stereo 192k
- MP3: audio qualità stereo 192k (è la stessa traccia del file avi esportata, nessuna conversione aggiuntiva)
I video sono a risoluzione nativa a 30fps con aspect ratio 4:3 per i giochi orizzontali e 3:4 per quelli verticali.
Una volta che avete i file inp e inp.timecode, potete spedirmeli che provvederò quanto prima a convertirli e pubblicarli.
Un ultimo appunto riguarda i permessi di utilizzo di questi file: chiunque può scaricarli ed usarli a patto che siano sempre riportati gli indirizzi di questo thread, il mio riferimento, quello di AntoPisa ed i rispettivi siti. Se intendete pubblicarli o includerli in raccolte, prima di farlo avvisatemi via pm. Ovviamente tutto il materiale deve essere fornito gratuitamente.
Una nota importante: gradirei avere dei riscontri di eventuali problemi nell'utilizzo di questi video con i vostri front-end, dei formati riconosciuti o no, di eventuali lentezze durante il play e cose simili. Infatti su pc vecchi non so quanto il codec Xvid sia ottimizzato per reggere il bitrate di 1400k, probabilmente andrà abbassato ad 800-900k perdendo un po' di qualità.
Il formato di riferimento per me è l'mp4 e sarà quello più curato, ma visto che è un processo automatico non ho problemi a creare un avi per i pc meno performanti (es. Pentium 4).
Il formato flv non l'ho gestito perchè lo reputo decisamente antiquato, nel caso fosse importante per alcuni utenti potrei pensare di includerlo.
Mi raccomando, mi aspetto un contributo da tutti

Considerate che per fare una ventina di giochi ci vuole poco più di mezz'ora e si producono 500k di file inp. Per tutto il resto ci penso io: conversione, controllo, pubblicazione, aggiornamento siti e documenti.
Detto questo, mi auguro che il progetto possa diventare sempre più grande grazie al vostro aiuto ed un riferimento per tutti quanti, proprio come lo sono oggi i file extra di ProgettoSnaps


Link al materiale:
- Documento con le linee guida
- Cartella del progetto
- Cartella dei video
- Stato avanzamento lavori sul sito Arcade Database
Documenti vecchi (non più utilizzati):
- Foglio con lo stato avanzamento lavori MAME
EDIT 19/06/2015: Cambio indirizzi per alcuni link Google a Mega.
EDIT 22/09/2015: Su Mega rimarranno solo i file mp4 (raggiunto il limite di 50GB)
EDIT 06/07/2018: Rimozione dei programmi su Mega ed l'unica fonte per i Mame ricompilati diventa Google Drive ADB.