in ,

JPlay for iOS – UPnP Control Point

La gran parte degli streamer e dei DAC/Streamer vengono “telecomandati” mediante app da installare su Smart Device, cioè tablet o telefono. Alcune di queste app sono sviluppate con dedizione e grande dispendio di energie dalle aziende che producono l’hardware sul quale dovranno essere installate; è il caso, ad esempio, dell’ormai defunta AURALiC che per anni ha sviluppato l’eccellente Lightning, o delle app di Linn, Lumin e dCS. Altre aziende preferiscono invece appoggiarsi a software realizzati da sviluppatori esterni come ad esempio Bubble UPnP, mConnect, ecc. JPlay for iOS è la proposta, presentata ormai da diverso tempo e pertanto giunta a piena maturazione, dell’azienda polacca JPlay che da anni realizza l’omonimo programma per Windows, nonché gli apprezzati hardware a marchio JCat che utilizzo con soddisfazione nei miei PC audio.

Inquadramento generale

Inizio premettendo che l’argomento UPnP (Universal Plug and Play) è piuttosto complicato e ben si presta a “scivoloni informativi” da parte di chi – il sottoscritto in questo caso – nel tentativo di rendere comprensibili concetti complessi, potrebbe eccedere con le semplificazioni. Mi perdoneranno quindi i lettori più esperti di questo specifico argomento e dotati di un background tecnico superiore al mio.

UPnP: alcuni brevi cenni

Originariamente creato da Microsoft nell’ottobre 1999 come pacchetto di protocolli, UPnP è stato sviluppato ulteriormente dalla Open Connectivity Foundation (OCF), che dal 2016 ne gestisce gli sviluppi. Nella sua versione AV è a tutt’oggi il protocollo più diffuso nel settore audio video. Questo fondamentalmente spiega perché JPlay for iOS funziona con quasi tutti gli streamer o DAC di rete presenti sul mercato. Prima di entrare nel merito della app, ritengo utile ricordare ancora una volta i concetti di base dello standard UPnP. Una sistema audio digitale basato su questa architettura è composto dai seguenti componenti  lato software: Media Server, Media Renderer e Control Point. I file musicali sono memorizzati sul server multimediale. Il Media Renderer riceve i file musicali dal server e li converte in un flusso di dati audio digitale, che viene quindi inviato al convertitore digitale analogico (DAC). Il Control Point funge da “centro di controllo” tra il server multimediale e il renderer e visualizza i brani musicali memorizzati sul server. In effetti non influisce direttamente sulla qualità della riproduzione audio, poiché i file audio non vengono inviati dal server multimediale al renderer attraverso il Control Point, ma direttamente pur se con la sua intermediazione. Cionondimeno, un Control Point comunica con il server e il renderer tramite l’infrastruttura di rete. Tenete a mente questo aspetto, perché ci torneremo a breve.

UPnP schematics
Nello schema sono posti a confronto una architettura di sistema basta su PC e DAC (via USB) e una basata sul UPnP.

Descrizione

JPlay for iOS è un Control Point compatibile con lo standard UPnP/AV, funzionante tanto su Apple iOS quanto su iPadOS; ciò implica che gli utenti del sistema operativo Android sono tagliati fuori; spiacente, ma è così. A dire il vero funziona anche sui Mac purché dotati di processore M1 o superiore. Sul lato hardware audio la compatibilità è assicurata con la quasi totalità dei network DAC presenti sul mercato. Con questo intendo quei DAC che hanno una porta di rete cablata o WiFi. Nel caso in cui non l’avessero, mi riferisco quindi ai “DAC puri”, si può ricorrere ad un componente esterno che aggiunga tale funzionalità, tipo un WiiM o un Volumio Rivo Plus o un Raspberry opportunamente configurati, tanto per citarne qualcuno. Coerentemente con il suo ruolo di Control Point JPlay scansiona i contenuti presenti su uno o più server UPnP, trova i renderer UPnP presenti sulla stessa rete e – volendo – si collega alle piattaforme  di streaming (Tidal e Qobuz). Al di là di questo c’è da riferire di una bellissima interfaccia grafica mediante la quale si interagisce con la propria collezione musicale. La cosa interessante è che per funzionare JPlay non ha bisogno di un Core (server) come accade, ad esempio, con Roon o con Logitech Media Server.

JPlay - settings
Dettaglio della schermata settings dove troviamo le librerie locali (due NAS con Minimserver nel caso specifico) e le piattaforme Qobuz e TiIDAL. Nella sezione Audio Output sono elencati i Media Renderer trovati sulla LAN.

Contesto della prova

Di seguito descriverò il contesto nel quale utilizzo abitualmente JPlay for iOS e nel quale si è svolta la mia prova. Questo a solo titolo di esempio e con il fine di fornire elementi utili a capire come, eventualmente, questa app potrebbe integrarsi nel vostro scenario d’uso ed nella vostra architettura di sistema:

  • JPlay in esecuzione su iPad o iPhone;
  • Musica locale memorizzata su due (vetusti) NAS della QNAP sui quali gira MinimServer 2;
  • Musica in streaming da Qobuz;
  • PC audio Intel based con Sistema Operativo AudioLinux (MPD+UPNP DCLI) come media renderer UPnP con uscita audio USB (scheda audio PCI JCat USB XE);
  • DAC Aqua La Scala MKII che riceve il segnale audio tramite l’ingresso USB.

In alternativa agli ultimi due elementi:

  • Interfaccia di rete Playback Design STREAM – IF (dotata di porta Ethernet e UPnP compatibile);
  • DAC Playback Design MPD-8 collegato in fibra ottica (protocollo P Link) alla STREAM – IF;

O ancora:

Tecnica

Prima di riferirvi in merito all’interfaccia e all’usabilità della app vorrei scrivere qualcosa rispetto alla sua ratio tecnica, sintetizzando quanto mi è stato riferito da Marcin Ostapowicz, ovvero lo sviluppatore nonché titolare di JPlay/JCat. Tipicamente un control point UPnP genera parecchio traffico sulla rete, comunicando costantemente con il server, i renderer, le piattaforme di streaming e altre entità (es. switch, router, ecc.). L’obiettivo di JPlay è quello di ridurre al minimo indispensabile il traffico proveniente dal Control Point. A tal fine, nella pagina dei settaggi, troviamo il parametro “Update Time” che serve a regolare la cadenza con cui JPlay effettua il controllo dello stato di avanzamento della riproduzione. L’intervallo del parametro va da 1 a 12000 – ignoro l’unità di misura alla quale il numero fa riferimento – e lo sviluppatore invita ad usare un valore prossimo, ma antecedente, al punto nel quale JPlay perde il controllo della riproduzione.

JPlay for iOS - settings
Nell'immagine è posto in evidenza il parametro "Update Time" discusso nel testo.

Le mie limitate competenze informatiche non mi permettono di argomentare in merito a quanto tale parametro possa essere determinate rispetto alla qualità della riproduzione. Mi limito a riferire che JPlay ha surclassato in termini di pura qualità sonica il mio riferimento abituale in questo ambito, vale a dire mConnect. Quanto a Roon, la cui qualità sonica è a mio parere relativamente incostante tra le varie versioni, solo con gli ultimi aggiornamenti si può dire che vi sia stata una certa competizione. Trasparenza, dettaglio, equilibrio timbrico, ricchezza armonica, tutto in JPlay for iOS è a livelli di eccellenza. La “vera competizione”, ammesso che di questo si possa parlare, c’è solo con HQPlayer che però richiede un hardware dedicato che può comunque essere in qualche modo integrato da JPlay come vedremo in seguito.

Interfaccia utente

Le mie esperienze d’uso con i control point citati in apertura di questo articolo sono contrastanti: pur apprezzandone la semplicità d’uso – ammesso che tutto funzioni regolarmente, altrimenti in men che non si dica si passa dall’ascolto al troubleshooting informatico – e la compatibilità con l’hardware più vario, non possono tuttavia in alcun modo competere con la completezza dell’interfaccia dei migliori software quali, come ovvio esempio, Roon. JPlay segue un’altra traiettoria: sintetizzo il concetto riferendo che, nella maggior parte dei casi, gli amici che mi hanno visto utilizzarlo pensavano fosse Roon. Ed in effetti non si può negare che il riferimento sia proprio quello. Il che, per il sottoscritto, è il complimento più grande che potessi fare, visto che continuo a considerare Roon un riferimento per quanto riguarda l’interfaccia utente, la  capacità di ricerca e l’usabilità. JPlay for iOS brilla per qualità della grafica, razionale organizzazione dei contenuti, ricchezza degli stessi con note biografiche riferite agli artisti, testi delle canzoni, riferimenti incrociati, insomma una ricchezza che davvero non ti aspetteresti da un “semplice” Control Point UPnP.

JPlay - Mini Player
Particolarmente comoda è la modalità di visualizzazione Mini Player

Popolare di contenuti il database di JPlay for iOS è molto semplice: fondamentalmente si tratta di selezionare uno o più media server dalla pagina dei Settings, e/o fare login sul proprio account di TIDAL o Qobuz (o entrambi) qualora si disponga di un abbonamento ad essi. A quel punto sarà JPlay a scaricare l’elenco dei contenuti (solo l’elenco, non i file stessi) ed indicizzarlo. Il primo aspetto che voglio portare alla vostra attenzione è che JPLAY integra in un’unica interfaccia i servizi di streaming ed i contenuti locali. Ciò consente una navigazione ed una ricerca assai più efficace e semplice rispetto ai player che dividono in modo drastico le sorgenti. Purtuttavia per gli utenti più tradizionalisti – ne conosco tanti – è sempre possibile abilitare la navigazione basata sulla gerarchia delle cartelle presenti sul server. Una gerarchia che, specialmente alcuni utenti particolarmente esigenti rispetto a tale aspetto, impiegano anni per mettere a punto.

La schermata home mostra in alto il numero totale di: album, tracce, artisti, compositori e playlist presenti. Con un clic su ognuno dei riquadri ci si porta nelle rispettive pagine di visualizzazioni ad elenco. Molto comodo. Sempre nella home page, la lista delle ultime tracce suonate, dei Top Album e playlist di Qobuz, degli album e tracce preferiti nonché degli ultimi album caricati. Per ogni elemento una piccola icona ne identifica la provenienza, cioè se da server locale o da piattaforma di streaming. Voglio precisare che i contenuti della home testé citati possono comunque essere modificati e/o riordinati dalla pagina delle impostazioni. In pratica dunque si può adattare JPlay alle proprie esigenze, ritagliandosi in modo “sartoriale” la sua interfaccia.

JPlay for iOS - Home
La home page può essere configurata dall'utente a suo piacimento. Qui abbiamo messo le tracce ascoltate di recente e i Top Album di Qobuz. In basso la traccia in esecuzione da Minimserver ed infine, in alto, i contatori generali.

Spostandoci nella pagina di visualizzazione degli album è possibile accedere alla funzione di filtraggio che si è rivelata davvero ben fatta: non solo si possono eseguire ricerche per artista e compositore, ma anche impostare ricerche multicriterio riferite a diversi parametri – anche tecnici – del file. Ad esempio: “Trova i file in formato DSD, genere Classico, periodo 1900”. Il funzionamento dei filtri può essere in qualche modo personalizzato anche grazie alle impostazioni che si possono applicare alla gestione dei metadati dalla apposita pagina dei settaggi.

 

Mediante la pagina Focus si possono eseguire complesse ricerche multicriterio grazie ai TAG associati ad ogni traccia audio.

JPlay supporta la ricerca automatica contestuale, ciò significa che se sto ascoltando un album di Miles Davies mi verranno proposti altri album dell’artista, oppure versioni diverse dello stesso album, finanche suggerimenti di album di artisti diversi ma in qualche modo correlati a Miles Davies.

 

JPlay for iOS - album page
La pagina dell'album in riproduzione riporta, oltre alle tracce, le informazioni sul formato e la provenienza del file in esecuzione.

La pagina dell’album in ascolto, oltre all’elenco delle tracce, riporta le utili informazioni riguardanti le caratteristiche tecniche del file in esecuzione, nonché la sua provenienza (server o piattaforma di streaming). Con un clic sul nome dell’artista si apre poi (qualora disponibile) una pagina con le relative note biografiche, discografia e quant’altro.

 

JPlay for iOS - Artist page
Pagina di approfondimento sull'artista (orchestra in questo caso).

Anche se non mi capita di utilizzarla con regolarità devo segnalare la presenza dell’opzione JPLAY Radio che si fa carico di continuare a cercare musica coerente con quella che stavamo ascoltando al termine di una traccia, album o playlist. Questa opzione, molta comoda allorquando  si ascolta musica di sottofondo, ha proposto tracce “coerenti” con le precedenti e con i miei interessi musicali che, nel corso della prova, ha in qualche modo saputo apprendere.

Da quando ho ricevuto la versione test, alla quale ha fatto seguito l’acquisto di una licenza, ho usato per tantissimo tempo JPLAY nel mio sistema e in sistemi altrui, e ha sempre funzionato in modo assolutamente impeccabile, senza blocchi o tentennamenti. Lo sviluppatore inoltre aggiorna costantemente la app correndone i bug ed aggiungendo/perfezionando funzionalità. Anche la riproduzione Gapless, tipicamente uno degli aspetti sui quali molti sistemi di riproduzione vanno in crisi, si è rivelata perfetta sia che si tratti di un file 24/192 proveniente da Qobuz sia che si tratti di uno proveniente del mio NAS QNap che esegue MinimServer. Mi piace infine ricordare come JPlay abbia da poco iniziato un programma di certificazione con alcune aziende partner così da poter dare certezza assoluta in merito alla compatibilità della app con diversi hardware. Sarà un percorso lungo ma mi pare un approccio serio al problema.

JPlay for iOS e HQPlayer

A partire dall’aggiornamento di dicembre 2024, HQPlayer di Signalyst è direttamente integrato in JPlay for iOS, consentendo agli utenti di intervenire sui flussi dati di Qobuz, Tidal e sui i file audio memorizzati localmente. Questo, ovviamente, a condizione che vi sia una istanza di HQPlayer in esecuzione sulla stessa rete nella quale si trova JPlay. Nel mio caso tale condizione è soddisfatta perché uno dei due nuclei di calcolo presenti all’interno del server Antipodes Audio K30 è dedicato a tale funzione. Tuttavia, per maggiore completezza della prova, ho configurato un Raspberry Pi 4 con AudioLinux sul quale girava HQPlayer embedded e tutto ha funzionato alla perfezione. La cosa bella è che la app JPlay consente un’integrazione senza soluzione di continuità e il controllo remoto di HQPlayer che altrimenti dovrebbe essere gestito mediante la sua criptica e poco comprensibile interfaccia web. Per chi non ne avesse mai sentito parlare HQPlayer permette un upsampling avanzato e un filtraggio di livello audiophile, elevando la qualità della riproduzione ad altissimi livelli. In combinazione con l’ intuitiva interfaccia di JPlay, gli utenti possono ora sperimentare le potenti funzionalità di HQPlayer in modo più semplice che mai

JPlay - HQPlayer integration
La complessa interfaccia di HQPlayer è accessibile in forma semplificata da JPlay for iOS

JPlay for iOS e Minimserver

Come si può evincere dalle immagini allegate e come scritto in precedenza, sui miei due NAS QNAP c’è in esecuzione Minimserver, un ultra collaudato software che opera in ambiente UPnP con funzione di Media Server. Ritengo utile precisare che nel sito di JPlay vi è una apposita sezione (Metadata and Sync Options) che illustra come deve essere configurato Minimserver in modo da trasmettere a JPlay i vari metadati nel modo migliore, così da poterne sfruttare al meglio alcune chiavi di ricerca. Una tra queste è il TAG Label che consente la ricerca delle tracce per etichetta discografica, oppure una lunga serie di TAG tipicamente riferiti all’ambito della musica Classica quali Direttore d’Orchestra, Nome dell’Orchestra, Movimento, nome del Movimento, Data e Lugo di registrazione, ecc. Dovrebbe essere del tutto evidente però che, laddove tali metadati siano mancanti, le ricerche tramite essi saranno impossibili. In tal caso mostrano la loro utilità soluzioni software quali SongKong o Bliss che sono in grado di integrare i metadati mancanti alla vostra raccolta di file così come farebbe Roon in modo automatico e “dietro le quinte”.

JPlay for iOS - Minimserver sync options
Particolare della schermata di configurazione delle opzioni di sincronizzazione con Minimserver.

Conclusioni

Per quanto mi riguarda JPlay for iOS è il Control Point UPnP definitivo. Sfogliare ed ascoltare la propria libreria musicale senza dover pensare ai tecnicismi informatici è un vero piacere. L’interfaccia è completa, elegante e priva di inutili orpelli. Mi conforta sapere che molti tra gli amici ai quali ho segnalato JPlay hanno avuto le mie stesse impressioni procedendo senza indugio all’acquisto. Giova in tal senso ricordare come sia possibile provare la app per un periodo di 15 giorni prima di decidere se acquistarla o meno, così da poterne verificare in prima persona le prestazioni. Ricordo ancora che JPlay prevede un canone di abbonamento annuale pari ad 49,99 USD da pagare in un unica soluzione. L’abbonamento viene rinnovato automaticamente, ma può essere disdetto in qualsiasi momento sino ad un giorno prima della scadenza annuale. Vi è inoltre la possibilità di acquistare una licenza Lifetime per 199 USD.Se il vostro sistema vi permette di utilizzarlo vi invito calorosamente ad approfittare della Trail gratuita di 15 giorni per provarlo e giudicare voi stessi. Secondo me, in questa categoria di app, non c’è nulla che gli si avvicini sia in termini di qualità sonica che di interfaccia utente, entrambe a livelli superbi su JPlay for iOS.

Giulio Salvioni

 

Scritto da Giulio Salvioni

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

GIPHY App Key not set. Please check settings

    Rega Brio MK VII

    Rega Brio MK VII

    Douk Audio Q-11

    Douk Audio Q-11 DAC con doppio chip