Come riprogrammare FLAC Hi-Res in Linux

Immagine di intestazione Hi-Res Flac Sox Resample 00

I file FLAC Hi-Res rappresentano uno dei vertici dell’esperienza audio Hi-Fi. Tuttavia, se estrai il tuo CD in file FLAC, potresti scoprire che spesso sono difficili da riprodurre al di fuori dell’attrezzatura per cui sono stati creati. Questo può essere un problema per gli utenti che possiedono tracce audio ad alta risoluzione ma non hanno gli strumenti per riprodurle correttamente.

Un modo per risolvere questo problema è usare sox per riprogrammare i tuoi file FLAC Hi-Res. Questo tutorial insegna le basi di sox e come usarlo per riprogrammare i file FLAC in Linux.

Suggerimenti: se sei confuso sui diversi formati audio, dai un’occhiata a questa guida per capire le differenze tra MP3, AAC, FLAC e molti altri formati.

Indice dei contenuti

  • Che cos’è Sox e come funziona la riprogrammazione?
  • Riprogrammare un file FLAC Hi-Res utilizzando sox
  • Automatizzare il processo di riprogrammazione
  • Domande frequenti

Che cos’è Sox e come funziona la riprogrammazione?

In sostanza, sox è un programma di elaborazione audio da riga di comando. A differenza di Audacity, consente di manipolare i file audio direttamente dal terminale. Ciò rende sox utile per coloro che desiderano effettuare modifiche semplici o automatizzare un incarico audio complesso.

Schermata di aiuto Sox Hi-Res Flac Riprogramma 02

La riprogrammazione, d’altra parte, è il processo di utilizzo di algoritmi complessi per trasformare un segnale ad alta fedeltà in uno a bassa fedeltà. Questo approccio mantiene la qualità di una traccia audio riducendo la quantità di dati che si memorizza nel computer.

A parte questo, la riprogrammazione consente anche di riprodurre i tuoi file FLAC Hi-Res su dispositivi di fascia bassa. Un iPod Video Rockbox, per esempio, laggherà e singhiozzerà mentre riproduce un file audio a 24 bit.

Schermata di caricamento Rockbox Hi-Res Flac Riprogramma 04

Alternativa: oltre a sox, puoi anche utilizzare flac2all per ricodificare i file FLAC in altri formati audio moderni.

Riprogrammare un file FLAC Hi-Res utilizzando sox

Nota: i passaggi seguenti sono per Ubuntu, ma l’uso rimane lo stesso indipendentemente dalla distribuzione Linux che stai utilizzando.

Il primo passaggio per riprogrammare i file FLAC è installare sia l’utilità sox che le sue dipendenze. Esegui il seguente comando in Debian e Ubuntu:

sudo apt install sox flac ffmpeg

Installazione Sox Hi-Res Flac Riprogramma 05

Controlla se è installato correttamente: sox --version.

Controlla la versione di Sox Hi-Res Flac Riprogramma 06

Trova sia la profondità di bit che la frequenza di campionamento del tuo file FLAC utilizzando il programma file integrato per stampare questi dettagli nel terminale:

file sample.flac

Nel mio caso, il mio file FLAC ha una profondità di bit di 24 bit e una frequenza di campionamento di 96 kHz.

Controlla la profondità di bit e la frequenza di campionamento Flac Hi-Res Riprogramma 07

Trovare la giusta frequenza di riprogrammazione per sox

Trova la giusta frequenza di riprogrammazione per il tuo file FLAC. La regola generale nella riprogrammazione è che la frequenza di riprogrammazione target dovrebbe essere divisibile alla frequenza di campionamento originale per 2 o 4.

Frequenze di campionamento divisibili Hi-Res Flac Riprogramma 08

Dovresti riprogrammare un file FLAC a 192 kHz solo a 96 o 48 kHz per garantire che l’algoritmo di riprogrammazione possa trasformare il segnale originale con il minor disturbo possibile.

Ottimizzare la riprogrammazione nel tuo file FLAC Hi-Res

Una volta che conosci la giusta frequenza di riprogrammazione da usare, puoi eseguire sox per riprogrammare il tuo file FLAC. Nel mio caso, sto riprogrammando un file a 96 kHz, quindi eseguo il seguente comando:

sox -S sample.flac -b 16 resample.flac rate -v -L 48000 dither
  • L’opzione -b dice a sox di impostare una nuova profondità di bit per il file di output. Ad esempio, un valore di 16 imposterà la nuova profondità di bit a 16 bit.
  • D’altra parte, l’opzione rate dice a sox di impostare una nuova frequenza di campionamento per il file di output.
  • L’opzione -v costringe sox a utilizzare l’algoritmo di riprogrammazione “Di Altissima Qualità”.
  • L’opzione -L costringe anche sox a utilizzare una risposta a “Fase Lineare” durante la riprogrammazione. Questo è un filtro che cerca di neutralizzare eventuali “echo del segnale” nel file FLAC.
  • Infine, l’opzione dither genera una piccola quantità di rumore lungo tutto il brano. Questo funge da maschera che nasconderà eventuali imperfezioni nel processo di riprogrammazione.

Lavoro di riprogrammazione singolo Hi-Res Flac Riprogramma 09

Automatizzare il processo di riprogrammazione

Sebbene sia possibile utilizzare sox su base per file, è anche possibile automatizzare l’intero processo utilizzando la shell. (Dai un’occhiata alla guida per principianti alla programmazione shell.) Questo è utile se hai intenzione di riprogrammare un intero album di tracce FLAC Hi-Res.

Uno dei modi più rapidi per automatizzare il processo di riprogrammazione è utilizzare un ciclo Bash. Ad esempio, puoi eseguire le seguenti righe di codice per riprogrammare un’intera cartella di file FLAC:

mkdir -p ./flac-dir/resample && cd ./flac-dir  
for flac in *.flac; do sox -S "${flac}" -b 16 resample/"${flac}" rate -v -L 48000 dither; done

Il primo comando creerà la cartella di output per i nuovi file FLAC e cambierà anche la directory di lavoro corrente. Il secondo comando ciclerà attraverso ogni file nella cartella corrente e lo riprogrammerà utilizzando sox.

Lavoro di riprogrammazione in loop Hi-Res Flac Riprogramma 10

Domande frequenti

È possibile riprogrammare un file MP3 utilizzando sox?

Il comando rate per sox non funziona con i formati lossless, quindi non può essere utilizzato per riprogrammare un file MP3.

Ricevo un errore “nessun gestore per il tipo di file rilevato”. Sox è rotto?

No! Questo accade ogni volta che sox non riesce a leggere e decodificare il tuo file FLAC ad alta risoluzione. Le cause più comuni di questo problema sono una libreria di sistema mancante e un flag del compilatore mancante.

Per risolvere la libreria di sistema mancante, esegui il seguente comando: sudo apt install libsox-fmt-all. Risolvere il flag del compilatore mancante richiederà di disinstallare il pacchetto sox attuale e compilarlo da sorgente.

Sox riporta che il mio file FLAC Hi-Res è in clipping. La mia riprogrammazione è fallita?

È normale che un file FLAC ad alta risoluzione abbia il clipping durante una riprogrammazione, poiché il processo di riprogrammazione ometterà gran parte dei dati sulle frequenze più elevate e inaudibili di un file FLAC.

Nonostante ciò, è comunque possibile dire a sox di compensare il possibile clipping durante la riprogrammazione. Per farlo, aggiungi il flag -G al tuo comando sox: sox -S sample.flac -G -b 16 resample.flac rate -v -L 48000 dither.

Credito immagine: Unsplash. Tutte le modifiche e gli screenshot di Ramces Red.