zkk / Jellyfin come Netflix



Copia DVD

Per copiare il DVD utilizzo il programma Hand Brake:

Verifica file

Spesso il file gestisce le tracce audio come segue:

Il seguente comando imposta l’italiano come prima traccia predefinita e l’inglese come seconda traccia:

ffmpeg -i <movie.mp4> -map 0:v:0 -map 0:a:1 -map 0:a:0 -metadata:s:a:0 language=ita -metadata:s:a:1 language=eng -disposition:a:0 default -c copy <movie-ok.mp4>

Registrazione TV

Decoder DIGIQuest

La registrazione tramite il decoder DIGIQuest produce un file in formato .ts ogni 2 ore di registrazione. Ad esempio, la registrazione di 3 ore di televisione produce:

Conversione in mp4

La prima cosa da fare è verificare la presenza di una o più lingue nella registrazione. Ipotizzando 2 lingue (generalmente italiano e inglese) presenti rispettivamente sul primo e secondo stream audio avremo il seguente comando ffmpeg:

ffmpeg -i 000.ts -map 0:v:0 -map 0:a:0 -map 0:a:1 -metadata:s:a:0 language=ita -metadata:s:a:1 language=eng -disposition:a:0 default 000.mp4

Dove i parametri hanno i seguenti significati:

Togliere pubblicità

Tramite Avidemux.

Concatena files

rm list.txt
for i in 0*.mp4; do echo "file '$i'" >> list.txt; done
ffmpeg -safe 0 -f concat -i list.txt -c copy movie.mp4
ffmpeg -f concat -i list.txt -map 0:v -map 0:a -c:a copy -c:v copy movie.mp4

Jellyfin

Nome file con ID

Cerco di identificare il nome del file all’interno di uno dei 2 database seguenti consultabili online:

Il nomne del file può quindi essere nel seguente formato:

Inserisco il file nella cartella repository di Jellyfin.

Nome file senza ID

Nel caso il file sia stato inserito nel repository senza il numero reperito dal database come nel punto precedente, se Jellyfin non dovesse riconoscere il film posso farlo manualmente selezionando tra le opzioni del film la scelta Identify ed inserendo il codice del film dei relativi cataloghi online (vedi punto che precede).

Comandi ffmpeg

Conversione formato con 2 lingue

ffmpeg -i <movie>.mpg -map 0:v:0 -map 0:a:0 -map 0:a:1 -metadata:s:a:0 language=ita -metadata:s:a:1 language=eng -disposition:a:0 default <movie>.mp4

Descrizione parametro -map 0:v:0, da sinistra:

Analogo discorso per, ad esempio, -map 0:a:1, sempre da sinistra:

Il parametro (esempio) -metadata:s:a:0 language=ita indica che il primo stram audio (s:a:0) corrisponde alla lingua italiana.

Infine -disposition:a:0 default determina la lingua di default del video.

Conversione formato con 1 lingua

Analogamente a quanto visto sopra, ad esemmpio:

ffmpeg -i <movie>.mpg -map 0:v:0 -map 0:a:1 -metadata:s:a:0 language=ita <movie>.mp4

Si prende la seconda traccia audio del file in input (-map 0:a:1) e le si attribuisce la sigla della lingua italiana (-metadata:s:a:0 language=ita).

Stesso formato gestisce le lingue

ffmpeg -i <movie>.mp4 -map 0:v:0 -map 0:a:1 -map 0:a:0 -metadata:s:a:0 language=ita -metadata:s:a:1 language=eng -disposition:a:0 default -c copy <movie>.mp4

Il discorso è identico alla conversione con 2 lingue o con 1 lingua salvo il fatto che il parametro -c copy non effettua nessuna conversione.

Sincronizzazione con Google Drive

rclone

rclone sync --progress ~/hdd/videos_movies drive:hdd/videos_movies