la casa di c-3PO e squeezelite-R2

Tag: Logitech media Server

C-3PO LMS Plugin e Squeezelite-R2: obiettivi e limiti del progetto

Come già anticipato,  lo scopo di tutto è poter fare decode in PCM e resampling sul server (Logitech media server) e di conseguenza alimentare il player (Squeezelite-R2) con uno stream già nel formato desiderato, così da renderne realmente leggerissimo il carico.

Questo perchè sono personalmente convinto che è quello che sta vicino all’impianto (il player) a dover essere curato maggiormente in modo da evitare ‘inquinamenti’ di qualsiasi sorta, mentre – sempre a mio avviso – ciò che avviene su un server a decine di metri di distanza, in un’altra stanza e possibilmente alimentato su un’altra linea elettrica è sicuramente ordini di grandezza meno influente, ammesso che lo sia in alcun modo.

Applicando la forma del dialogo con un (nemmeno troppo) ipotetico audiofilo, spero di chiarirne le caratterisiche.

L’audiofilo: Ma… non si poteva già fare?

No, LMS non trasmette ai client informazioni attendibili sullo stream quando il formato è PCM (raw, wav o aif che sia). Squeezelite in versione originale, si adegua e di conseguenza non è in grado di riprodurre correttamente stream ricampionati.

Fino a ieri si era costretti a scegliere:

a. Usare Flac o altri formati non PCM.
b. Lasciare il compito del resampling al client.

La modifica a Squeezelite consente proprio di ‘analizzare’ lo stream in ingresso per determinarne – quando possibile – in autonomia il formato e riprodurlo correttamente.

L’audiofilo: Ma non è una novità, Daphile lo fa gia.

Kimmo, mantainer di Daphile, è stato uno dei primi a capire le potenzialità della modifica ed adottarla. Le versioni di Daphile dal 4 di ottobre in poi la integrano.

L’audiofilo: Non lo sapevo, non lo si legge da nessuna parte

Già, è’ così…

L’audiofilo: E C-3PO, il plugin,  a cosa serve?

Per ‘comandare’ il server era fino ad oggi necessario modificare manualmente alcuni files di configurazione, con risultato spesso catastrofici o almeno non certi (spesso ci si illude di aver modificato il comportamento del server, ma non è così).

ll plugin C-3PO in prima battuta realizza un’interfaccia grafica più intuitiva per impostare i parametri necessari per gestire le operazioni di decodifica e ricampionamento sul server, eliminando la necessità di intervenire a livello di file di configurazione.

Oltre a questo, permette di configurare e metter in atto opzioni di ricampionamento in funzione del formato (non solo il ‘tipo’, ma anche la frequenza di campionamento originale, ad esempio) del file o stream in ingresso, cosa prima non possibile sul server.

L’audiofilo: Anche questo Daphile lo fa gia, usa lo stesso plugin?

Al momento non mi risulta che Daphile sia in grado di fare ricampionamento selettivo sul server, lo ha sempre fatto ma solo usando squeezelite. Usa un meccanismo esterno a Logitech media server e proprietario, non C-3PO plugin, che io sappia.

Chiunque può adottare il mio plugin nel rispetto delle regole imposte dalla licenca GNU GPL v2 che regola l’utilizzo, la modifica, integrazione e distribuzione di Logitech Media Server e Squeezelite (open source / free software), non è lo stesso per le componenti proprietarie di Daphile o altri sistemi.

L’audiofilo: Quali formati sono supportati?

Al momento AIF, FLAC e WAV (pcm), il piano è di aggiungere tuttii formati lossless significativi supportati da LMS, nessuna previsione per i formati lossy, ma non sarebbe un problema farlo.

L’audiofilo: Non supporta DSD?

Esiste già un plugin analogo (DSDPlayer) realizzato da Kimmo Taskinen (Daphile) e modificato da Adrian Smith (Triode, squeezelite) che lo fa, ho ritenuto corretto non sovrappormici, dato che possono tranquillamente convivere. Non ci sono incompatibilità o limiti tecnologici, se si evidenzia una necessità, è fattibile senza problemi.

L’audiofilo: Ma, alla fine, perchè dovrei utilizzare C-3PO e Squeezelite-R2?

Sono strumenti open source, multipiattaforma e perfettamente integrati nell’ecosistema squeezebox, il che abilita alla fruizione di tantissime altre funzionalità che altri hanno reso o renderanno via via disponibili secondo la migliore tradizione della squeezebox community, senza scopi di lucro ne intenti commerciali.

Rispeto a soluzioni proprietarie, sono estremamente più indipendenti da me e dalla mia disponibilità futura di tempo per mantenerli

L’audiofilo: Esiste una ISO da scaricare?

No, si tratta d componenti, non di un sistema completo.

Spero e credo ne saranno rese disponibili a breve, al momento esistono delle ottime guide di riferimento e di installazaione cui fare riferimento.

L’audiofilo: Come faccio ad averli?

Sono gratuiti oltre che liberi, la guida all’installazione riporta i link dove recuperare le versioni necessarie. Il codice sorgente, i termini di licenza e le versioni eseguibili per le diverse piattaforme sono in gitHub. C-3PO si installa direttamente da LMS come qualsiasi altro plugin, fare riferimento alla guida per ulteriori informazioni

Upsampling, ne vale la pena?

In breve,  non lo so.

Quello che però so è che il 99% dei DAC modermi fa upsampling, che è un processo ‘lossy’ non reversibile, che esistono diversi algoritmi per farlo e che se è dubbio porti a benefici è certo che eseguito più volte in cascata degradi rispetto all’applicazione di un filtro unico meglio realizzato.

Tutto questo mi porta a credere che:

sia bene valutare le caratteristiche del proprio DAC prima di fare upsampling esternamente, meglio usare dac NOS nel caso.
sia meglio usare ‘buoni’ algoritmi rispetto ad algoritmi solo ‘mediocri’, quindi la selezione del tool di upsampling e la sua corretta configurazione assume importanza fondamentale.
Ognuno è libero di provare e selezionare i tools che ritiene maggiormente opportuni, ma una volta che li avrà trovati, li deve inserire nella propria catena audio digitale e, visto che parliamo di algortmi che chiedono una discreta capacità elaborativa, non è una buona idea farli fare ad un Pc nelle immediate vicinanze dell’impianto.

Altro punto a favore dell’architettura distribuita.

Da questa considerzione hanno preso il via i progetti più interessanti che conosco, tra cui certamente HQ Player che è considerato una delle migliori soluzioni di upsampling e conversione PCM/DSD, che svolge su un pc ‘server’ remoto rispetto all’impianto, cui si collega con un player minimalista, chiamato Network Audio Player (NAD).

In ambito open source, Logitech media Server e squeezelite hanno le caratteristiche per fare la stessa cosa (la conversione PCM/DSD è ad oggi sperimentale), al netto di un problema che viene risolto da Squeezelite-R2 e C-3PO.

In un prosismo articolo vedremo come farlo.

Powered by WordPress & Theme by Anders Norén