Come unire tanti video mp4 con FFMPEG, in pochi secondi

Mi sono trovato con un video spezzettato in tantissimi file, ognuno lungo solo 5 minuti. Avevo solo due opzioni: o perdevo 30 minuti a inserirli a mano in un programma a finestre, o perdevo 2 ore per capire come risolvere il problema con la riga di comando.

Ovviamente ho scelto la seconda opzione, così in futuro la conversione sarà più immediata, basterà seguire questo post 😉

Prima di tutto bisogna creare un file di testo che contenga la lista dei file da convertire. Lo facciamo fare al computer. Supponendo che tutti i file da unire siano tutti posizionati nella stessa directory e siano file *.mp4, bisogna scrivere:

find *.mp4 | sed 's:\ :\\\ :g'| sed 's/^/file /' > lista.txt

In questo modo viene creato un file di testo chiamato lista.txt che contiene il nome del file (preceduto dalla keyword file).

Poi, si passa la lista dei file da unire a FFMPEG, con il comando:

ffmpeg -safe 0 -f concat -i lista.txt -c copy video-unito.mp4

Fatto!

Recentemente ho acquistato un abbonamento VPN presso Fastest VPN, con lo scopo di usarla su Linux, via SSH, solo ed esclusivamente da riga di comando. Loro non offrono nulla di speciale riguardo Linux e la linea di comando, semplicemente usano OpenVPN.

Come funziona: semplicemente si installa OpenVPN (per esempio con sudo apt install openvpn), poi si scarica i file di configurazione (per esempio, questi sono i file per Fastest VPN) e basta scrivere sudo openvpn nomeserver.ovpn per collegarsi.

Ma c’è un grosso problema: ogni volta bisogna scrivere la password a mano! Intollerabile, specialmente con una password complessa. Per fortuna che c’è una scorciatoia.

Si può creare un file con le credenziali. In una directory accessibile solo a voi, create un file chiamato login.conf e all’interno inserite, su due righe, username e password, così:

Username
Password

A questo punto modifichiamo i file *.ovpn della configurazione. Per esempio apriamo Luxembourg-UDP.ovpn e vediamo la voce auth-user-pass. La rimpiazziamo con auth-user-pass login.conf, così quando carichiamo la configurazione con openvpn, vengono autoimmesse le nostre credenziali. Ora però, qua ci sono 50 file, uno per ogni server. Apriamo i file uno per uno e li modifichiamo a mano? Neanche per scherzo! sed è stato inventato apposta.

Basta scrivere:

sed -i 's/auth-user-pass/auth-user-pass login.conf/g' *.ovpn

e in automatico tutte le righe con auth-user-pass saranno variate con auth-user-pass login.conf. Così, quando scarichiamo le configurazioni dei server aggiornati, continueranno a funzionare a perfezione!

Fino a oggi utilizzavo GitKraken per i miei progetti personali. Purtroppo, da qualche mese hanno deciso che la versione gratuita non può più aprire i repository locali, solo l’edizione Enterprise può farlo (a partire da 999 euro l’anno… LOL).

Ovviamente aggiornamento automatico e quindi ora non mi si apre più, anche se i miei progetti erano 100% non commerciali…

Quindi, disinstallato e sono tornato a usare Git da linea di comando.

Alcuni dei miei progetti però erano veramente vecchissimi, non mi ricordavo più se avevo mai impostato una copia online su Github/Gitlab/Bitbucket.

Per visualizzarlo velocemente basta scrivere:

git remote -v

Il testo di default “Disponibile su ordinazione” di WooCommerce confonde un po’ i clienti, non è immediatamente chiaro che l’articolo non è disponibile a magazzino e che deve quindi essere ordinato dal produttore.

Anche se nelle impostazioni non c’è nessuna opzione per cambiarlo, Woosnip ci offre una soluzione facile.

Basta aggiungere nel file functions.php del proprio tema:

function change_backorder_message( $text, $product ){
    if ( $product->managing_stock() && $product->is_on_backorder( 1 ) ) {
        $text = __( 'Disponibilità incerta - Questa frase la puoi cambiare come ti pare', 'your-textdomain' );
    }
    return $text;                                                                                                                                                                                                                                                              }                                                                                                                                                                                                                                                                              
add_filter( 'woocommerce_get_availability_text', 'change_backorder_message', 10, 2 );

Anni fa, avevo scritto una guida su dove trovare il dominio .it più economico. Adesso però è diventata obsoleta: Euweb pare che non accetti nuovi clienti, OVH ha aumentato senza motivo il costo dei domini .it (ma non degli altri, quindi non si spiega). Scrivo qui la nuova classifica.

Il dominio più economico di tutti in assoluto è sempre Tophost, a € 5,99, ma rimane la solita grossa limitazione di non poter cambiare i name server. Non è quindi compatibile con Cloudflare. Un gran peccato, non è nemmeno possibile impostare SSL. Quindi, come prima, rimangono perfetti solo per pagine “under construction” o “redirect”. In compenso, però, viene fornita una casella email.

Una new entry è GiDiNet, con i domini .it a € 6,70. La cosa bella è che all’aumentare del numero di domini registrati, diminuisce il costo di rinnovo.

Si parte da € 6,70 l’anno, se si fanno acquisti da 100 a 500 euro, il rinnovo viene scontato a € 6,35, se si spende più di 500 si scende a € 6,00, se si spende di più si scende fino a € 5,35.

GiDiNet offre però esclusivamente il servizio DNS, niente pagina di cortesia, niente redirect, niente casella email. Tutti i servizi devono essere forniti da voi. Volendo però è possibile anche aggiungere hosting, database e email. In particolare, anche se lo spazio a disposizione è poco la loro offerta hosting Windows Server 2016 ha prezzi molto aggressivi.

Infine, MisterDomain.eu non ha aumentato i prezzi, e il rinnovo rimane a € 6,99. Qui viene inclusa la pagina di cortesia e eventuale redirect.