Correzione ambientale, C-3PO e SOX

Visualizzazione dei risultati da 1 a 10 su 21

Hybrid View

Messaggio precedente Messaggio precedente   Prossimo messaggio Prossimo messaggio
  1. #1
    tebibyte L'avatar di bigtube
    Registrato
    May 2012
    Località
    cagliari
    Età
    69
    Messaggi
    2,258
    configurazione

    Predefinito

    Molto interessante Marco.
    Sto gia' cominciando a provare quanto hai suggerito per Sox.....giusto per capire .
    Ne riparliamo quando avro' capito meglio l'effetto prodotto nel mio sistema....
    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

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

    Predefinito

    Un aggiornamento sull'uso di SOX e BruteFir in C-3PO per la correzione ambientale.

    Chi non si accontenta dei controlli di tono parametrici (bass e treble) giò descritti, può usare un equalizzatore parametrico, con ottimi risultati, ad esempio:

    equalizer 40 5q -10.1 equalizer 63 5q -3.1...

    dove il primo parametro è la frequenza in Hz, il secondo è la larghezza di banda espressa come rapporto tra, appunto, la larghezza di banda e la frequenza centrale. Es a 40Hz 5q significa 8Hz di larghezza di banda. Si può esprimere anche in ottave, per comodità.

    Se ancora non bastasse e si volessero usare filtri FIR, è possibile usare il comando:


    fie. nomefiltro.txt

    il filtro può essere prodotto in vari modi, io uso REW + rePhase, ma i può usare anche DRC, volendo.


    Tutti i metodi descritti funzionano benissimo e producono ottimi risultati, certamente migliori di quelli che a suo tempo avevo ottenuto con Inguz plugin, ma hanno un limite, o meglio, un discrimine:

    In real time non è possibile usare filtri differenziati per canale. Ci ho speso tantissimo tempo, anche collaborando con amici in diversi forum, ma alla fine abbiamo dovuto gettare le armi, dato che la sintassi da usare (realmente complicata) la abbiamo identificata, ma mentre funziona usata per produrre files statici, in real time provoca la perdita del sincronismo tra i due canali, quindi non va bene.

    Bisogna dire che il caso d'uso è limitato, solo se si ha una stanza molto asimmetrica ha senso. La mia lo è, quindi ho provato a battere strade alternative, ma vi anticipo che al momento uso un unico filtro in SOX.

    In Linux un'opzione è BruteFir, usato anche da Daphile. Il suo uso 'normale' prevede la dichiarazione di device virtuale che andrà poi selezionato come scheda audio in squeezelite, questo device, in realtà altro non farà che applicare la convoluzione sul flusso in ingresso, uscendo sul 'vero' device alsa.

    Così fa Daphile, ma deve essere fatto sul player, non sul server e sapete che ciò non mi piace. Oltre a questo, il profilo di convoluzione è 'statico' quindi bisogna necessariamente uscire SEMPRE allo stesso sample rate, indipendentemente dal file in ingresso, il massimo sample rate è 96KHz,
    DSD non è supportato, non c'è possibilità di applicare dithering.

    Con LMS è facile inserire la convoluzione mediante brutefir nel convert.conf con una riga del tipo:

    codice:
    
    
    codice:
    flc pcm * 00:e0:4c:68:ce:77# I noArgs, F noArgs
    [flac] -dcs --force-raw-format --endian=little --sign=signed -- $FILE$ |HOME=/home/squeezeboxserver /usr/bin/brutefir /home/brutefir/brutefir.cfg 2> /var/log/squeezeboxserver/brutefir.log | [sox] -t raw -c 2 -b 24 -e signed-integer -r 44100 - -t wav -
    


    dovrei modificare C-3PO per poterla integrare, ma è roba da poco, in alternativa basterebbe aprire in scrittura la directory di lavoro di squeezebox server, ma il vero problema è che rompe il gapeless, introducendo un brevissimo ma fastidioso glitch ad ogni cambio di traccia, che non sono riuscito a togliere, ma magari si potrebbe investigare meglio.

    Funziona anche questo molto bene, applicando lo stesso filtro usato con sox su entrambi i canali, non avverto differenze rispetto, appunto, a SOX, tranne il glitch al cambio di traccia.

    Il vantaggio è che in questo modo la convoluzione è applicata 'in ingresso', quindi risulta molto più leggera ed in uscita è possibile selezionare il formato ed il sample rate desiderato.

    Non ho provato se il gapeless è rispettato con Daphile o meno, ma indipendentemente da questo, il vantaggio della maggiore 'precisione' nella definizione dei filtri per canale si è rivelata, almeno nel mio caso, più teorico che reale, dato che lo sweet spot diventa realmente piccolo, cioè al di fuori dello (stretto) punto di ascolto il suono diventa realmente pessimo.

    Ho (al momento) concluso utilizzando SOX come convolver a partire da un filtro disegnato con REW e linearizzato in fase con rePhase. Credo che lavorerò su C-3PO in modo da poter selezionare il filtro da applicare in funzione di un tag apposito, così da poter differenziare - volendo - l'equalizzazione in funzione del genere musicale, la qualità dell'incisione o altro, che è senz'altro utile.

    Spero sia utile, nel caso chiedete ed approfondiamo.












    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

  3. #3
    nibble
    Registrato
    Dec 2010
    Messaggi
    93

    Predefinito

    molto interessante!! In particolare sto decidendo se acquistare una coppia di casse, che mi piace molto, ma che necessita di una aggiustata in basso (oppure della aggiunta di un sub).
    Altra cosa...LMS potrebbe essere in grado di gestire un crossover software?
    ciao

Informazioni Thread

Users Browsing this Thread

Ci sono attualmente 1 utenti che stanno visualizzando questa discussione. (0 utenti e 1 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