upsampling (universo LMS/Squeezelite/Squeezeplay)

Pagina 1 di 2 1 2 ultimo
Visualizzazione dei risultati da 1 a 10 su 874

Hybrid View

Messaggio precedente Messaggio precedente   Prossimo messaggio Prossimo messaggio
  1. #1
    pebibyte L'avatar di marcoc1712
    Registrato
    Jan 2013
    Messaggi
    5,254
    configurazione

    Predefinito

    A rilento (c'è il sole ed il beach tennis chiama...) continuo con le mie indagini e, purtroppo, ho già trovato più di un punto in cui l'upsampling da wav 'inciampa' in piccole ma fastidiose scorciatoie.

    E' evidente che LMS non è stato pensato per fare upsamplig, ma piuttosto per fare eventualmente downsampling e limitare il bitrate in fase di trasmissione, d'altronde è figlio del suo tempo.

    Comunque, con poche modifiche (a puro scopo di test) sono riuscito a 'far veder' a squeezelite lo stream al samplerate corretto, ma continuo ad adottenere 'rumore bianco' quindi qualche altro parametro non viene interpretato correttamente, in particolare mi lascia perplesso il fatto che squeezelite riconosca lo stream in ingresso come audio-L16 e non pcm, può essere un semplice effetto estetico, ma le coincidenze...

    Come prossimo passo mi scaricherò il sorgente di Squeezelite e proverò a verificare cosa si aspetta di diverso rispeto a quello che ottiene, anche se ai fini pratici, non credo sia ipotizzabile a breve una soluzione diversa di quella individuata passando da flac per l'upsampling. Le modifiche che ho individuato le ho segnalate, ma capisco che lo sforzo per verificarne il corretto funzionamento in ogni possibile situazione è grande e non credo sia prioritario.
    Ciao, Marco.

    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction."
    — E. F. Schumacher (mis-attributed to A. Einstein)
    ________________________________________________________________________________
    Autore della patch R2 per Squeezelite e del plugin C-3PO. note libere
    Logitech media Server 7.9 > miniPc + squeezelite-R2 / SB+ > "Lu Scalmentu" NOS R2R DAC by TubeOne/ AudioResearch DAC 1-20 >
    Klimo Merlino Gold TPS > DIS Interconnect > Kent Gold > Reference > Monitor Audio Studio 20 SE

  2. #2
    tebibyte L'avatar di bigtube
    Registrato
    May 2012
    Località
    cagliari
    Età
    70
    Messaggi
    2,258
    configurazione

    Predefinito

    Originariamente inviato da marcoc1712
    A rilento (c'è il sole ed il beach tennis chiama...) continuo con le mie indagini e, purtroppo, ho già trovato più di un punto in cui l'upsampling da wav 'inciampa' in piccole ma fastidiose scorciatoie.

    E' evidente che LMS non è stato pensato per fare upsamplig, ma piuttosto per fare eventualmente downsampling e limitare il bitrate in fase di trasmissione, d'altronde è figlio del suo tempo.

    Comunque, con poche modifiche (a puro scopo di test) sono riuscito a 'far veder' a squeezelite lo stream al samplerate corretto, ma continuo ad adottenere 'rumore bianco' quindi qualche altro parametro non viene interpretato correttamente, in particolare mi lascia perplesso il fatto che squeezelite riconosca lo stream in ingresso come audio-L16 e non pcm, può essere un semplice effetto estetico, ma le coincidenze...

    Come prossimo passo mi scaricherò il sorgente di Squeezelite e proverò a verificare cosa si aspetta di diverso rispeto a quello che ottiene, anche se ai fini pratici, non credo sia ipotizzabile a breve una soluzione diversa di quella individuata passando da flac per l'upsampling. Le modifiche che ho individuato le ho segnalate, ma capisco che lo sforzo per verificarne il corretto funzionamento in ogni possibile situazione è grande e non credo sia prioritario.
    Un richiamo ben piu' interessante dopo un inverno sotto la pioggia!!! Te credo.....comunque qui continuiamo ad apprezzare il tuo sforzo stanne certo.....ma questi sorgenti non si potrebbero ricompilare????
    L'ho detta grossa eh.....
    player1:thin client+voyage - player2:futros450+Debian > Usb Transport: I2soverUSB + DAC (6x1704+I/V a tubi) - Attenuatore passivo Lightspeed
    Ampli finale: OTL 6C33 - MyRef Fremen Ed. - Diff.: Diapason Adamantes II - Guida LMS+Squeezelite - B

  3. #3
    pebibyte L'avatar di marcoc1712
    Registrato
    Jan 2013
    Messaggi
    5,254
    configurazione

    Predefinito

    Originariamente inviato da bigtube
    Un richiamo ben piu' interessante dopo un inverno sotto la pioggia!!! Te credo.....comunque qui continuiamo ad apprezzare il tuo sforzo stanne certo.....ma questi sorgenti non si potrebbero ricompilare????
    L'ho detta grossa eh.....
    .

    No, non l'hai detta grossa, a parte che - tecnicamente - il perl non è compilato ma interpretato, è certamente possibile ricostruire la distribuzione per i diversi ambienti e metterla in 'ordine di marcia' (capisco che intendevi dire questo) ma:

    a. è complicato e time consuming.
    b. diventeresti 'dipendente' dalla mia capacità/volontà/disponibilità per ottenere gli aggioramenti.
    c. diventerei di fatto il mantainer di una versione alternativa, cosa che vorrei evitare e che se dovessi mai arrivare a fare cercherei di progettare edorganizzare al meglio, altrimenti diventa un impegno insostenibile (...sia mai che me ne vada a fare un viaggio in Tibet...).

    Visto che comunque (almeno al momento) le modifiche che ho provato non sono risolutive, lo sconsiglio in assoluto, ma se proprio proprio vuoi provarle, allora puoi clonarti in locale il mio repository (che è disponibile in github) ed eseguire LMS da sorgente, avendo cura di selezionare di volta in volta il branch standard o quello di test.

    Sembra più difficile di quello che in realtà è, ma ripeto che al momento a mio avviso non ne vale la pena, dovessi individuare la soluzione 'definitiva' (o almeno completamente funzionante) allora forse...

    p.s.

    Sotto la pioggia? Ma tu non vivi in quel fantastico pezzo di paradiso dove le precipitazioni si misurano in micron?
    Ciao, Marco.

    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction."
    — E. F. Schumacher (mis-attributed to A. Einstein)
    ________________________________________________________________________________
    Autore della patch R2 per Squeezelite e del plugin C-3PO. note libere
    Logitech media Server 7.9 > miniPc + squeezelite-R2 / SB+ > "Lu Scalmentu" NOS R2R DAC by TubeOne/ AudioResearch DAC 1-20 >
    Klimo Merlino Gold TPS > DIS Interconnect > Kent Gold > Reference > Monitor Audio Studio 20 SE

  4. #4
    tebibyte L'avatar di bigtube
    Registrato
    May 2012
    Località
    cagliari
    Età
    70
    Messaggi
    2,258
    configurazione

    Predefinito

    Originariamente inviato da marcoc1712
    .

    No, non l'hai detta grossa, a parte che - tecnicamente - il perl non è compilato ma interpretato, è certamente possibile ricostruire la distribuzione per i diversi ambienti e metterla in 'ordine di marcia' (capisco che intendevi dire questo) ma:

    a. è complicato e time consuming.
    b. diventeresti 'dipendente' dalla mia capacità/volontà/disponibilità per ottenere gli aggioramenti.
    c. diventerei di fatto il mantainer di una versione alternativa, cosa che vorrei evitare e che se dovessi mai arrivare a fare cercherei di progettare edorganizzare al meglio, altrimenti diventa un impegno insostenibile (...sia mai che me ne vada a fare un viaggio in Tibet...).

    Visto che comunque (almeno al momento) le modifiche che ho provato non sono risolutive, lo sconsiglio in assoluto, ma se proprio proprio vuoi provarle, allora puoi clonarti in locale il mio repository (che è disponibile in github) ed eseguire LMS da sorgente, avendo cura di selezionare di volta in volta il branch standard o quello di test.

    Sembra più difficile di quello che in realtà è, ma ripeto che al momento a mio avviso non ne vale la pena, dovessi individuare la soluzione 'definitiva' (o almeno completamente funzionante) allora forse...

    p.s.

    Sotto la pioggia? Ma tu non vivi in quel fantastico pezzo di paradiso dove le precipitazioni si misurano in micron?
    Marco guarda..... faccio prima a seguire il tuo consiglio....lassamo perde....sto benissimo cosi

    Anche in paradiso piove...zzo se piove....dove sto io (in pratica in campagna) a qualcuno l'alluvione gli ha devastato tutto e anch'io ho avuto qualche danno (tanta fortuna).
    Per non dire di quello che è successo a Olbia...you remember....una catastrofe quasi biblica...poveretti....e povere le vittime che hanno perso la vita....mica poco
    player1:thin client+voyage - player2:futros450+Debian > Usb Transport: I2soverUSB + DAC (6x1704+I/V a tubi) - Attenuatore passivo Lightspeed
    Ampli finale: OTL 6C33 - MyRef Fremen Ed. - Diff.: Diapason Adamantes II - Guida LMS+Squeezelite - B

  5. #5
    pebibyte L'avatar di marcoc1712
    Registrato
    Jan 2013
    Messaggi
    5,254
    configurazione

    Predefinito

    Originariamente inviato da bigtube
    Marco guarda..... faccio prima a seguire il tuo consiglio....lassamo perde....sto benissimo cosi

    Anche in paradiso piove...zzo se piove....dove sto io (in pratica in campagna) a qualcuno l'alluvione gli ha devastato tutto e anch'io ho avuto qualche danno (tanta fortuna).
    Per non dire di quello che è successo a Olbia...you remember....una catastrofe quasi biblica...poveretti....e povere le vittime che hanno perso la vita....mica poco
    Hai ragione, è stata una vera catastrofe.
    Ciao, Marco.

    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction."
    — E. F. Schumacher (mis-attributed to A. Einstein)
    ________________________________________________________________________________
    Autore della patch R2 per Squeezelite e del plugin C-3PO. note libere
    Logitech media Server 7.9 > miniPc + squeezelite-R2 / SB+ > "Lu Scalmentu" NOS R2R DAC by TubeOne/ AudioResearch DAC 1-20 >
    Klimo Merlino Gold TPS > DIS Interconnect > Kent Gold > Reference > Monitor Audio Studio 20 SE

  6. #6
    pebibyte L'avatar di marcoc1712
    Registrato
    Jan 2013
    Messaggi
    5,254
    configurazione

    Predefinito

    Originariamente inviato da marcoc1712
    ...Come prossimo passo mi scaricherò il sorgente di Squeezelite e proverò a verificare cosa si aspetta di diverso rispeto a quello che ottiene, anche se ai fini pratici, non credo sia ipotizzabile a breve una soluzione diversa di quella individuata passando da flac per l'upsampling. Le modifiche che ho individuato le ho segnalate, ma capisco che lo sforzo per verificarne il corretto funzionamento in ogni possibile situazione è grande e non credo sia prioritario.
    Notizia positiva: per far si che LMS trasmetta le informazioni correttamente, basta fare qualche passo indietro e modificare i comandi conversione di custom-conver.conf come segue:

    codice:
    wav pcm * *
    	# FT:{START=--skip=%t}U:{END=--until=%v}
    	[flac] -cs  $START$ $END$ -- $FILE$ |[sox] -q -t flac - -t raw -r 192000 -c 2 -3 -s -L - gain -3 rate -v 192000
    Che è quello che stavo sperimentando su mac prima dell'intervento di Paolo, che ha evidenziato quelli che lui ha definito 'errori' nel comando SOX - probabilmente con buona ragione - ma sta di fatto che così LMS esce con uno stream corredato delle corrette informazioni, quindi lascio ad altri l'ottimizzazione del comando, ma questa è (sarebbe) la strada da percorrere.

    NOTA BENE: -t raw è essenziale, -t wav non funziona.

    Notizia negativa: Squeezelite, nel caso di pcm, riverifica l'header del file originario , quindi prova ad aprire lo stream (192K/24) a 44.1/16, ovviamente con risultati disastrosi...

    Francamente non ho capito perchè lo faccia con pcm e non con flac, forse qualcuno più esperto di me (Paolo) può spiegarcene le motivazioni sottostanti, ma stanti così le cose non c'è verso. Proverò a segnalare la cosa, ma ho poche speranze...

    CONCLUSIONI: Se volete fare upsampling in LMS dovete necessariamente passare da FLAC (o presumibilmente altri formati lossless diversi da PCM).

    Giovanni riporta che questa configurazione ha vantaggi qualitativi rispetto all'upsampling su Squeezelite, quindi giudicate voi.

    Sarebbe interessante sperimentare (ad esempio su daphile, ma va bene qualsiasi LMS + Localplayer plugin) se le differenze sonore tra l'upsampling eseguito da LMS o da Squeezelite sussistono anche in configurazione 'local player' (cioè sulla stessa macchina).
    Ciao, Marco.

    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction."
    — E. F. Schumacher (mis-attributed to A. Einstein)
    ________________________________________________________________________________
    Autore della patch R2 per Squeezelite e del plugin C-3PO. note libere
    Logitech media Server 7.9 > miniPc + squeezelite-R2 / SB+ > "Lu Scalmentu" NOS R2R DAC by TubeOne/ AudioResearch DAC 1-20 >
    Klimo Merlino Gold TPS > DIS Interconnect > Kent Gold > Reference > Monitor Audio Studio 20 SE

  7. #7
    tebibyte L'avatar di bigtube
    Registrato
    May 2012
    Località
    cagliari
    Età
    70
    Messaggi
    2,258
    configurazione

    Predefinito

    Originariamente inviato da marcoc1712
    CONCLUSIONI: Se volete fare upsampling in LMS dovete necessariamente passare da FLAC (o presumibilmente altri formati lossless diversi da PCM).

    Giovanni riporta che questa configurazione ha vantaggi qualitativi rispetto all'upsampling su Squeezelite, quindi giudicate voi.


    Sarebbe interessante sperimentare (ad esempio su daphile, ma va bene qualsiasi LMS + Localplayer plugin) se le differenze sonore tra l'upsampling eseguito da LMS o da Squeezelite sussistono anche in configurazione 'local player' (cioè sulla stessa macchina).
    Mi pare che anche Filippo(antonellocaroli) abbia riportato le mie stesse impressioni. Quindi siamo almeno in due. Non ho capito se Giorgio possa
    esprimere un giudizio.
    In generale se qualcuno vuole fare l'esperienza puo' usare Daphile sul PC headless in pratica con risultati omogenei rispetto a cio' che ho fatto io
    L'unica variante è che io uso un sistema tutto Linux.....del quale sono veramente soddisfatto . Tuttavia non credo che con Windows ci siano differenze
    significative, rimanendo coi piedi per terra. Non sarebbe male se anche altri sperimentassero.....io lo consiglierei fortemente visti o sentiti i risultati.
    player1:thin client+voyage - player2:futros450+Debian > Usb Transport: I2soverUSB + DAC (6x1704+I/V a tubi) - Attenuatore passivo Lightspeed
    Ampli finale: OTL 6C33 - MyRef Fremen Ed. - Diff.: Diapason Adamantes II - Guida LMS+Squeezelite - B

  8. #8
    tebibyte
    Registrato
    Aug 2011
    Età
    51
    Messaggi
    2,928
    configurazione

    Predefinito

    Originariamente inviato da bigtube
    Mi pare che anche Filippo(antonellocaroli) abbia riportato le mie stesse impressioni. Quindi siamo almeno in due. Non ho capito se Giorgio possa
    esprimere un giudizio.
    Si anche io ero giunto alle stesse....
    ma siamo in pochi qua per giudicar...

  9. #9
    gibibyte L'avatar di DacPassion
    Registrato
    Jul 2014
    Messaggi
    1,250

    Predefinito

    Originariamente inviato da bigtube
    Mi pare che anche Filippo(antonellocaroli) abbia riportato le mie stesse impressioni. Quindi siamo almeno in due. Non ho capito se Giorgio possa
    esprimere un giudizio.
    In generale.
    Giovanni, purtroppo ora sono "bloccato" ...di fare prove semiserie se ne riparla a fine maggio
    Clearaudio Emotion + Satisfy + Grado Gold1 > Phono D3A DIY
    Futro S450 + Daphile / Amanero + Buffalo 2 (trident) uscita a TU Cinemag 15/15B DIY / Jlsounds + Lector Digicode TDA1541 S1
    Monoblocchi D3A 2A3 (electrolytich free!!) DIY / Coral Beta8 in BLH DIY

  10. #10
    tebibyte L'avatar di UnixMan
    Registrato
    Sep 2013
    Messaggi
    2,529
    configurazione

    Predefinito

    Originariamente inviato da marcoc1712
    Notizia positiva: per far si che LMS trasmetta le informazioni correttamente, basta fare qualche passo indietro e modificare i comandi conversione di custom-conver.conf come segue:

    codice:
    wav pcm * *
    	# FT:{START=--skip=%t}U:{END=--until=%v}
    	[flac] -cs  $START$ $END$ -- $FILE$ |[sox] -q -t flac - -t raw -r 192000 -c 2 -3 -s -L - gain -3 rate -v 192000
    come dicevo tempo addietro, uno stream (o un file) non è che una sequenza di bit. Che potrebbe rappresentare qualsiasi cosa: un brano musicale, una immagine, un filmato... o l'eseguibile di un programma.

    Se non ho una "chiave di lettura" che mi dica esattamente come devo "raggruppare" ed interpretare i bit che compongono lo stream (o il file), quei bit non sono altro che quello: una sequenza di numeri binari del tutto priva di senso. Non ho assolutamente nessun modo per capire che cosa rappresentino!

    Anche sapendo a priori che quello stream (o quel file) rappresenta uno stream PCM, l'informazione è incompleta ed assolutamente insufficiente: uno stream PCM "raw" (headerless) a 192K è del tutto indistinguibile da uno a 44.1K. Così come è altrettanto impossibile capire se si ha a che fare con uno stream composto da uno, due o più canali, se i campioni sono a 16 piuttosto che a 24 o 32 bit, se questi sono codificati come numeri interi o "reali" (floating point), big-endian o little-endian, ecc, ecc.

    Anziché chiamare flac e/o sox, in quella riga di comando potrei anche metterci un bel "cat /dev/random", ed anche quello (uno stream composto da una sequenza casuale di bit) sarebbe del tutto indistinguibile da uno stream audio PCM raw!

    La domanda quindi è: come accidenti fa LMS a sapere qual è il formato dei dati che gli vengono mandati indietro dai comandi esterni? (ad es. dopo l'upsampling?)

    Le uniche cose sensate che LMS potrebbe fare avendo a che fare con uno stream PCM "raw" (headerless) sono:

    1) imporre che gli stream che riceve "di ritorno" dai comandi esterni (se PCM) abbiano tutti, sempre e solo un ben preciso formato (predeterminato).

    2) assumere che lo stream in uscita abbia sempre esattamente lo stesso formato dello stream in ingresso.

    In entrambi i casi, per ovvi motivi ciò escluderebbe qualsiasi possibilità di fare resampling (o qualsiasi altra elaborazione che alteri il formato dello stream).

    Oppure... oppure, c'è solo un'altra possibilità. Brutta, sporca, oscena, limitata e limitante, portatrice di bug e di problemi infiniti... in una parola semplicemente indecente:

    3) che LMS interpreti le righe di comando (dei comandi esterni) che vengono inserite nel suo file di configurazione e ricavi da quelle il formato da utilizzare! :o

    Se così fosse, si spiegherebbe come ha fatto a funzionarti... ed al tempo stesso perché i comandi esterni sembrano funzionare solo con ben determinate righe di comando e non con altre, pur perfettamente lecite (e magari anche più "logiche").

    (ma mi rifiuto di crederlo. Se così fosse... non avrei parole: LMS non sarebbe un software decente, ma solo uno sporco "hack", semplicemente osceno e indecente, che non avrebbe mai dovuto essere distribuito. Tanto meno come prodotto commerciale o giù di li).

    Originariamente inviato da marcoc1712
    Notizia negativa: Squeezelite, nel caso di pcm, riverifica l'header del file originario , quindi prova ad aprire lo stream (192K/24) a 44.1/16, ovviamente con risultati disastrosi...
    ecco, questo ha molto senso... e tende ad avvalorare la seconda ipotesi di cui sopra.


    Originariamente inviato da marcoc1712
    Francamente non ho capito perchè lo faccia con pcm e non con flac
    Azz, Marco, ma è OVVIO!

    Per il motivo di cui sopra: PCM (raw) non ha header, per cui LMS semplicemente NON ha nessun modo per sapere quale sia il formato dei dati che gli "ritornano" dal comando esterno!
    Ultima modifica di UnixMan : 13-04-2015 a 17:16
    Ciao, Paolo.

    «Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee.»

Pagina 1 di 2 1 2 ultimo

Informazioni Thread

Users Browsing this Thread

Ci sono attualmente 2 utenti che stanno visualizzando questa discussione. (0 utenti e 2 ospiti)

Regole d'invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
nexthardware.com - © 2002-2022