Windows Vista: Audio Signal Processing

ASIO esclude tutto, compreso il volume del kmixer. E' proprio un altro binario. Quindi ciò che invii esternamente è bit-stream. Ma se sei in grado di intervenire sul volume in XP, significa che non stai bypassando completamente il comparto audio del SO, ed il danno è già fatto...
Non sono stato chiaro!
Avevo messo in chiaro che lavorando in ASIO la qualità è assicurata.
La domanda, invece, era relativa al lavorare senza i driver ASIO ma usando un plug-in serio come resampler e usando il volume dell'applicazione e/o dell'ampli tenendo quindi al massimo il volume del kmixer proprio per escluderlo. E' vero che si ha un resampling, che se fatto bene non porta a problemi udibili, ma allo stesso tempo si può scavalcare il resampler di Windows XP e quindi scongiurare decadimenti di qualità udibili.

Per Antani: a pensarci bene anche il mio ampli può avere il volume analogico perchè quando setto l'ingresso multicanale si sentono i click dei relè che probabilmente escludono completamente la sezione digitale.

Ciao.
 
Da quello che ho letto in giro, con XP è comunque possibile avere un bitperfect sotto le seguenti condizioni:

- la tua scheda deve supportare la frequenza di campionamento della registrazione che stai riproducendo (per i CD 44.1 kHz, per i DVD 48 kHz, per i BD....). Ormai tutte le schede supportano frequenze multiple, per cui non dovrebbe essere un gran problema, però è anche necessario che la frequenza corretta venga selezionata dai driver. Io per sicurezza la "blocco" manualmente a 48 per i film e a 44.1 per i CD.
- il volume del kmixer deve essere al 100%. Se anche non lo fosse in linea di principio non avresti un ricampionamento, però avresti un risultato scarso visto che il kmixer lavora solo a 16 bit.
- non riprodurre altri suoni come ad esempio i suoni di sistema. Il kmixer ha appunto il compito di mixare i vari stream audio. Se gli stream hanno diversa risoluzione uno dei due verrà ricampionato.

Non è quindi difficile ottenere un bitperfect in XP, anche senza passare da ASIO.
 
Facendo le prove ad orecchio con le impostazioni che hai detto tu e che sapevo anch'io non ho riscontrato differenze tra riprodurre con e senza driver ASIO.

A dire il vero non ho riscontrato differenze nemmeno usando driver ASIO e ricampionando da 44,1 a 48 KHz con un plug-in VST che uso in Console ed quindi è legittimo pensare che il mio orecchio è un po' fessacchiotto :)

Ciao.
 
antani ha detto:
Confondi un controllo di volume analogico con uno passivo.

Il controllo di volume può avvenire in molti modi. Quelli che conosco io:

- digitale
- potenziometro
- DAC moltiplicatore (quello che uso io sullo stereo)
- chip integrati con OPAMP (quello che uso io sul multicanale)
- reti resistive governate da relay o da commutatori a stato solido
- un mix di quanto sopra

A parte il primo, sono tutti "analogici" nel senso che non convertono il segnale in digitale.
Di gran lunga il più usato è il tipo con chip integrati, che è presente nella stragrande maggioranza dei pre multicanale, anche di alto livello.

Aggiungi:
la regolazione di volume a trasformatore (modificando il rapporto spire)
Molti pre hanno la regolazione con potenziometro a contatti striscianti mosso da un motorino in c.c. (es. alps blu o nero)
 
Ultima modifica:
[ E' vero che teoricamente è possibile utilizzare il PC come pre, ma io non mi fido per nulla di collegarci direttamente un finale. Anzi posso dire che se lo avessi fatto mi sarei sicuramente giocato i diffusori un numero imprecisato di volte.[/QUOTE]

questa affermazione mi sembra particolarmente importante, perche' in qualche modo taglia le gambe a buona parte dei ragionamenti fatti: infatti se si tratta di ottenere da vista tutte le funzionalita' di un pre e dalla soundcard in analogico tutto il resto, stiamo parlando di uno sbattimento mica da ridere, e lo scopo?

1. puro divertimento
2. confrontare il lavoro del pre e quello dell'htpc e dire e' un po' meglio uno, un po' meglio l'altro (per quello che vale)...
3. fare attenzione a che il segnale non venga gestito/convertito 1000 volte, prima dal pc, poi dal pre, poi...
4. rinunciare al pre, risparmiare 2 0 3k € e magari investirli nel resto dell'impianto

ora, mi sembra chiaro che la maggior parte di noi veda nel punto 4. l'obiettivo principale, quindi forse chi ne sa potrebbe fare un elenco dei motivi per i quali e' comunque sconsigliabile rinunciare al pre
 
salierno.f ha detto:
...la regolazione di volume a trasformatore...
Mi era sfuggito. Molto audiofilo :D .

salierno.f ha detto:
...Molti pre hanno la regolazione con potenziometro...
I potenziometri sui pre multicanale sono rarissimi. Oltre al costo, la precisione è troppo scarsa e ti troveresti i canali sbilanciati praticamente a qualunque livello di volume.
 
angel72 ha detto:
...4. rinunciare al pre, risparmiare 2 0 3k € e magari investirli nel resto dell'impianto...

Se serve solo un controllo di volume non hai bisogno di spendere 2-3k €. Si può tranquillamente utilizzare un pre di riciclo, il PC ti garantisce la non obsolescenza (oltre a molti altri vantaggi).
 
red5goahead ha detto:
Mi pare che l'informazione importante di questo thread è che tutto ciò non è realizzato dalla scheda audio ma da Vista in uguale modo su tutte le schede che in qualche modo supportano le Api previste da Microsoft.

stealth82 ha detto:
Perchè non trovo l'impostazione per gli audio enhancements sul mio Vista e cosa posso fare altrimenti?

> CUT

Andate qui: http://www.avsforum.com/avs-vb/showthread.php?p=10321557#post10321557

Che dire, funziona, mi manca il bass management, ma funziona :D

EDIT: Gli enhancements poi variano a seconda di come sono configurati gli speakers a livello di windows. Se 2, 2+1, 5+1 o così via.
Giusto per "mettere ancora più a fuoco", tecnicamente la API messe a disposizione di Microsoft portano ciascun costruttore a differenti sviluppi degli enhancements.
La cosa interessante di questo aspetto è che se venissero seriamente presi in considerazioni non vi sarebbero limiti al DSP. E' pur vero che, al momento, pochi si sono dati da fare sotto questo punto di vista (solo la Realtek ha veramente fatto qualcosa, che sia una roba "forte" poi è un altro discorso) e quindi c'è poca trippa per gatti :D

Microsoft cmq, fornisce una sua implementazione di base che garantisce a qualunque scheda audio con driver Vista compatibili - e per saperlo dovete verificare la presenza della libreria portcls.sys nella finestra "Driver Details" delle proprietà della scheda audio, raggiungibili mediante il "Device Manager", - l'utilizzo di alcuni enhancements.

Qui c'è tutta la documentazioni Microsoft al riguardo: http://msdn.microsoft.com/en-us/library/bb981490.aspx
Vi consiglio di darci un'occhiata ;)

Quindi il trick che ho postato si può provare senza paura - ribadendo, SOLO se avete il portcls.sys - sebbene manchino specificatamente gli enhancements dedicati. Io una prova, prima di fare un cambio scheda, me la farei anche subito. Se riesco ad attivare il room correction ed il bass management posso subito provare la differenza tra S/PDIF e Analog. Devo solo procurarmi i cavi jack/rca per la mia Prodigy e arrivare al pre :rolleyes:
 
Ultima modifica:
antani ha detto:
I potenziometri sui pre multicanale sono rarissimi. Oltre al costo, la precisione è troppo scarsa e ti troveresti i canali sbilanciati praticamente a qualunque livello di volume.

scusami intendevo i pre stereo.
 
Parlando di sAPOs (System Effect Audio Processing Objects)... la Maxx è una di quelle che si è mossa in questo senso e provvede alcuni suoi DSP nei driver Realtek. Sebbene il loro target sia migliorare gli speakers dei notebook ( :asd: ) i concetti ci sono tutti.

Un loro comunicato stampa: http://www.maxx.com/objects/pdf/Waves_Delivers_Bigger_Sound_in_Vista.pdf.
Per comodità ho estratto alcune frasi:

MaxxAudio is a suite of psychoacoustic technologies that enable small loudspeakers, such as those found in notebook PCs, to sound dramatically larger, deeper and more powerful. MaxxAudio PC is a solution for these technologies that utilize the improved audio capability in Windows Vista to support audio plug-ins.

“By utilizing the new audio processing object capability of Windows Vista, Waves MaxxAudio PC solution uses patented psychoacoustic technologies that can compensate for limited dynamic range, frequency response and stereo imaging from these popular notebook PC systems.”

“The ability to support audio processing objects is a major advancement in Windows Vista and extremely valuable to the professional audio community,” said Liron Shaked, director of the
Worldwide Consumer ISV Group at Microsoft Corp. “The improved audio architecture within Windows Vista will provide more choices for pro-audio companies such as Waves, enabling them to offer cutting-edge solutions for customers that will improve audio quality on the PC.”

Maxx solutions are rapidly being adopted by firms such as Sony, Sanyo, Samsung, JVC, NEC, Delphi, Clarion, Altec Lansing and others.

MaxxAudio is a suite of DSP psychoacoustic algorithms that compensates for loudspeaker and acoustic limits for the small speakers found in today’s consumer electronic products such as televisions, multimedia, compact stereos and portable devices. MaxxAudio includes
technologies for frequency range extension (MaxxBass, MaxxTreble, MaxxEQ), dynamic range compensation (MaxxVolume) and image expansion (MaxxStereo). These algorithms are built on Waves’ worldwide leadership in providing audio signal processing technologies to professionals in recording, mixing and mastering for almost 15 years.

Un es. di implementazione dei loro DSP nei driver Realtek

ToshibaRealtek_MaxxAudio.jpg


Fatevi un giro anche su Waves.
 
Ultima modifica:
Ho trovato tutti i default sAPOs di Windows. Per ogni chiave guardate la proprietà FriendlyName per capirci qualcosa :D

Codice:
[HKEY_CLASSES_ROOT\AudioEngine\AudioProcessingObjects]

[HKEY_CLASSES_ROOT\AudioEngine\AudioProcessingObjects\{06587E71-F043-403A-BF49-CB591BA6E103}]
"FriendlyName"="CAudioVolume"
"Copyright"="copyright (c) 2003 microsoft corporation"
"MajorVersion"=dword:00000001
"MinorVersion"=dword:00000000
"Flags"=dword:0000000f
"MinInputConnections"=dword:00000001
"MaxInputConnections"=dword:00000001
"MinOutputConnections"=dword:00000001
"MaxOutputConnections"=dword:00000001
"MaxInstances"=dword:ffffffff
"NumAPOInterfaces"=dword:00000001
"APOInterface0"="{d81229b1-5a43-480c-92f7-be0f7f4eab60}"
"APOInterface1"="{885c7b80-3fa2-4e5a-be07-cf01e1d6e2cd}"

[HKEY_CLASSES_ROOT\AudioEngine\AudioProcessingObjects\{07252659-BB6B-4B79-B78B-623F6699A579}]
"APOInterface0"="{6B54B2B5-45EE-4F11-9935-9EC3183AD534}"
"Copyright"="Copyright (c) 2003 Microsoft Corporation"
"Flags"=dword:0000000e
"FriendlyName"="CAudioConstrictor"
"MajorVersion"=dword:00000001
"MaxInputConnections"=dword:00000001
"MaxOutputConnections"=dword:00000001
"MaxInstances"=dword:ffffffff
"MinInputConnections"=dword:00000001
"MinorVersion"=dword:00000000
"MinOutputConnections"=dword:00000001
"NumAPOInterfaces"=dword:00000001

[HKEY_CLASSES_ROOT\AudioEngine\AudioProcessingObjects\{12DD4DBB-532B-4FCE-8653-74CDB9C8FE5A}]
"FriendlyName"="caudiomixer"
"Copyright"="Copyright (C) 2003 Microsoft Corporation"
"MajorVersion"=dword:00000001
"MinorVersion"=dword:00000000
"Flags"=dword:0000000e
"MinInputConnections"=dword:00000001
"MaxInputConnections"=dword:00000001
"MinOutputConnections"=dword:00000001
"MaxOutputConnections"=dword:00000001
"MaxInstances"=dword:ffffffff
"NumAPOInterfaces"=dword:00000001
"APOInterface0"="{c23bdc7a-47f8-49a1-b750-692c35b532c3}"

[HKEY_CLASSES_ROOT\AudioEngine\AudioProcessingObjects\{27C98999-2895-4829-B080-5A8B65BD3DB0}]
"FriendlyName"="CAudioRateConvertCMPT"
"Copyright"="Copyright (c) 2005 Microsoft Corporation"
"MajorVersion"=dword:00000001
"MinorVersion"=dword:00000000
"Flags"=dword:0000000a
"MinInputConnections"=dword:00000001
"MaxInputConnections"=dword:00000001
"MinOutputConnections"=dword:00000001
"MaxOutputConnections"=dword:00000001
"MaxInstances"=dword:ffffffff
"NumAPOInterfaces"=dword:00000003
"APOInterface0"="{788F7BE2-9C40-41C0-AF05-4393FBF409F9}"
"APOInterface1"="{C78841EF-516F-4516-B591-F04FA93783A9}"
"APOInterface2"="{7BA1DB8F-78AD-49CD-9591-F79D80A17C81}"

[HKEY_CLASSES_ROOT\AudioEngine\AudioProcessingObjects\{3DC09436-7D83-4BA0-ADDC-CD47F996C5BA}]
"FriendlyName"="caudiometer"
"Copyright"="copyright (c) 2003 microsoft corporation"
"MajorVersion"=dword:00000001
"MinorVersion"=dword:00000000
"Flags"=dword:0000000f
"MinInputConnections"=dword:00000001
"MaxInputConnections"=dword:00000001
"MinOutputConnections"=dword:00000000
"MaxOutputConnections"=dword:00000001
"MaxInstances"=dword:ffffffff
"NumAPOInterfaces"=dword:00000001
"APOInterface0"="{419b26e3-fa99-4408-83de-cc1276efa489}"

[HKEY_CLASSES_ROOT\AudioEngine\AudioProcessingObjects\{3FD7F233-A716-472E-8F2F-C25954F34E96}]
"FriendlyName"="caudioformatconvert"
"Copyright"="copyright (c) 2003 microsoft corporation"
"MajorVersion"=dword:00000001
"MinorVersion"=dword:00000000
"Flags"=dword:00000006
"MinInputConnections"=dword:00000001
"MaxInputConnections"=dword:00000001
"MinOutputConnections"=dword:00000001
"MaxOutputConnections"=dword:00000001
"MaxInstances"=dword:ffffffff
"NumAPOInterfaces"=dword:00000002
"APOInterface0"="{fc7dff56-6b8d-45a9-b4ca-266f9ac21693}"
"APOInterface1"="{6bb6a944-7352-4327-ab91-d92607b25656}"

[HKEY_CLASSES_ROOT\AudioEngine\AudioProcessingObjects\{541987EE-0E02-411E-9A85-1FC6156E7F4B}]
"FriendlyName"="caudiomatrix"
"Copyright"="copyright (c) 2003 microsoft corporation"
"MajorVersion"=dword:00000001
"MinorVersion"=dword:00000000
"Flags"=dword:0000000c
"MinInputConnections"=dword:00000001
"MaxInputConnections"=dword:00000001
"MinOutputConnections"=dword:00000001
"MaxOutputConnections"=dword:00000001
"MaxInstances"=dword:ffffffff
"NumAPOInterfaces"=dword:00000001
"APOInterface0"="{bb8b2f5d-2af0-473f-bd94-f55a77587d3f}"

[HKEY_CLASSES_ROOT\AudioEngine\AudioProcessingObjects\{62DC1A93-AE24-464C-A43E-452F824C4250}]
"FriendlyName"="WM audio LFX APO"
"Copyright"="Copyright Microsoft"
"MajorVersion"=dword:00000001
"MinorVersion"=dword:00000001
"Flags"=dword:0000000d
"MinInputConnections"=dword:00000001
"MaxInputConnections"=dword:00000001
"MinOutputConnections"=dword:00000001
"MaxOutputConnections"=dword:00000001
"MaxInstances"=dword:ffffffff
"NumAPOInterfaces"=dword:00000001
"APOInterface0"="{FD7F2B29-24D0-4B5C-B177-592C39F9CA10}"

[HKEY_CLASSES_ROOT\AudioEngine\AudioProcessingObjects\{637C490D-EEE3-4C0A-973F-371958802DA2}]
"FriendlyName"="WM audio GFX APO"
"Copyright"="Copyright Microsoft"
"MajorVersion"=dword:00000001
"MinorVersion"=dword:00000001
"Flags"=dword:0000000d
"MinInputConnections"=dword:00000001
"MaxInputConnections"=dword:00000001
"MinOutputConnections"=dword:00000001
"MaxOutputConnections"=dword:00000001
"MaxInstances"=dword:ffffffff
"NumAPOInterfaces"=dword:00000001
"APOInterface0"="{FD7F2B29-24D0-4B5C-B177-592C39F9CA10}"

[HKEY_CLASSES_ROOT\AudioEngine\AudioProcessingObjects\{C58BD103-E87F-4B78-A0FA-7A5C95970EE2}]
"FriendlyName"="caudiorateconvert"
"Copyright"="copyright (c) 2003 microsoft corporation"
"MajorVersion"=dword:00000001
"MinorVersion"=dword:00000000
"Flags"=dword:0000000a
"MinInputConnections"=dword:00000001
"MaxInputConnections"=dword:00000001
"MinOutputConnections"=dword:00000001
"MaxOutputConnections"=dword:00000001
"MaxInstances"=dword:ffffffff
"NumAPOInterfaces"=dword:00000003
"APOInterface0"="{788f7be2-9c40-41c0-af05-4393fbf409f9}"
"APOInterface1"="{c78841ef-516f-4516-b591-f04fa93783a9}"
"APOInterface2"="{7ba1db8f-78ad-49cd-9591-f79d80a17c81}"

[HKEY_CLASSES_ROOT\AudioEngine\AudioProcessingObjects\{D69E0717-DD4B-4B25-997A-DA813833B8AC}]
"FriendlyName"="CAudioLimiter"
"Copyright"="Copyright (c) 2003 Microsoft Corporation"
"MajorVersion"=dword:00000001
"MinorVersion"=dword:00000000
"Flags"=dword:0000000e
"MinInputConnections"=dword:00000001
"MaxInputConnections"=dword:00000001
"MinOutputConnections"=dword:00000001
"MaxOutputConnections"=dword:00000001
"MaxInstances"=dword:ffffffff
"NumAPOInterfaces"=dword:00000001
"APOInterface0"="{7DF8824C-AEC7-4119-9425-E6979172A8AE}"

[HKEY_CLASSES_ROOT\AudioEngine\AudioProcessingObjects\{E916B6B2-22BD-4AFC-B337-D3D9FB27670E}]
"FriendlyName"="caudiocopy"
"Copyright"="copyright (c) 2003 microsoft corporation"
"MajorVersion"=dword:00000001
"MinorVersion"=dword:00000000
"Flags"=dword:0000000e
"MinInputConnections"=dword:00000001
"MaxInputConnections"=dword:00000001
"MinOutputConnections"=dword:00000001
"MaxOutputConnections"=dword:00000001
"MaxInstances"=dword:ffffffff
"NumAPOInterfaces"=dword:00000001
"APOInterface0"="{adf7583d-f947-4311-83fb-066ad4e5e7c2}"

Se voi non li avete è perchè non avete registrato la .dll (dal post dove ho linkato la procedura).
 
Ultima modifica:
stealth82 ha detto:
Per ogni chiave guardate la proprietà FriendlyName per capirci qualcosa :D

Solo leggendoli gia' il suono e' migliorato.
Ho provato con la Terratec Aureon space a fare lo smanazzo e mi e' apparso l'Enhancements tab con solo tre voci pero'.
Ho idea che manca un sacco di roba :)
 
Sì, è quello che stavo cercando di capire. Siccome l'hacking è stato fatto per una Meridian probabilmente solo alcuni filtri soono stati impostati. Ho un'idea, vaga, di come interagiscano le chiami per richiamare gli enhancements ma volevo trovare qualcosa di più sicuro nelle rete prima di procedere alla sperimentazione :D
 
Non è una strada facile quella che ho mostrato. Non sappiamo neanche se funzioni realmente, anche se tu hai detto che solo leggendo il nome il suono è migliorato ( :D ), perchè l'hacking abilita alcune chiavi ma che poi questi si interfaccino realmente è un altro discorso.

Certo sarebbe bello se quelli che scrivono i driver implementassero almeno i filtri base invece di non proporli proprio :rolleyes: . Io volevo scrivere qualcosa alla Audiotrak ma quelli a scrittura di driver stan fermi dove sta fermo Andrew di TheaterTek :D
 
Al contrario di Terratec che invece e' ferma all'Arca di Noe' :)
Ho lanciato la correzione ambientale , a parte il microfono che dovevo collegare , la procedura e' andata avanti per un po' ... poi ha fatto una barra verde ... poi mi ha lasciato li' come un fico.
Saranno anche belle queste cose ... ma come dici tu se la "casa" non li supporta nativamente non ho mica voglia di impazzire.
 
Su questo non c'è dubbio. Era solo per capire le potenzialità - inespresse a questo punto :( - di Vista. Vorrei però che quelli che hanno a che fare con queste cose fossero più reattivi. Invece ci troviamo sempre con le pezze e frustrati perchè non sappiamo a chi dire queste cose che richiederebbero veramente poco per essere implementate... vedi ArcSoft, Asus etc...

Poi, se anche qualcuno tenta, tenta sempre in maniera da scrivere le cose a suo modo senza avvalersi del SO. Stavo guardando il manuale della Xonar che salierno.f mi ha gentilmente spedito. In sintesi, non che la Xonar non abbia sviluppato alcuna cosa in tal senso, ma si preferisce personalizzare mediante i propri pannelli di controllo, le proprie applicazioni etc. Un sistema di bass management ce l'ha (taglio crossover ed impostazioni range altoparlanti) così come di speaker fill e loudness equalization. Niente DRC però :(

Per dire, tutta la documentazione che ho raccolto, a parte i due interventi del blogger Greg Plummer, sono datati anno 2006 :eek:
Cioè 2 anni e non vedo la sfida raccolta dai produttori nell'implementare enhacements. Ma è possibile?
 
Ultima modifica:
Io ho una Terratec moddata in Audiotrak, e degli enhancement nemmeno l'ombra. Stasera provo l'hacking.

Quelli della Waves sono tosti, se si muovono loro si può ben sperare, anche se quello che hanno fatto finora è poca cosa e non molto interessante per un HTPC.

In realtà basterebbe introdurre un VST host all'interno dei driver della scheda per avere ogni possibile elaborazione audio. Audiotrak l'aveva promesso anni fa, peccato credo stia chiudendo, almeno a giudicare dall'evoluzione dei driver.
 
Che vuoi che ti dica , scrivere software costa e probabilmente gli interessati non sono poi cosi' tanti.
Che ci sia un po' di babilonia e' fuori di dubbio.
Poi sulle cose "normali" se ti guardi la disposizione casse 5.1/7.1 di Microsoft rispetto a Dolby ... secondo me' succedono casini.
Guarda caso TMT mi inverte le posteriori con le back , mentre Powerdvd con l'ultima sembra di no'.
E' anche vero che uno mi puo' dire ... che te ne fai di un 7.1 ... avevo due casse li' a far niente :)
Poi perche' voglio il Bitstream ;)
 
Ultima modifica:
Top