Asio => Cliquetis + Fidélité De La Sortie Numérique (1 Viewer)

logan5

New Member
February 18, 2008
4
0
Home Country
France France
J'ai l'impression que le module ASIO est très peu utilisé, je n'ai trouvé que très peu d'informations à son sujet.

Voici mon problème : quand je valide la sortie ASIO (avec le lecteur BASS bien sûr), je n'obtiens plus que des cliquetis et des grésillements quand je lis de la musique. Bizarrement, les petits effets sonores quand on clique sur un menu passent très bien; c'est seulement quand je lis de la musique.

Le driver ASIO derrière est "ASIO4ALL", redirigé vers un DAC USB. A partir d'autres logiciels (notamment le plug-in ASIO de Winamp), tout marche parfaitement bien.

Mon but est d'obtenir une sortie numérique garantie 100% sans modification par rapport à l'original (pas de gestion du volume, des effets etc..) , le tout étant raccordé à une chaine très haute fidélité (je lis essentiellement des .APE et des .FLAC).

J'en profite pour poser une question : si je ne prend pas le module ASIO, mais si je met le volume à 100%, et aucun effet, est-ce que la sortie numérique est 100% fidèle au contenu du .APE et .FLAC (c.a.d chaque échantillon de 16 bits qui sort en PCM rigoureusement égal à celui codé) ? Je pense par exemple à un rééchantillonnage sauvage 44.1=>48Khz comme sur les sorties numériques PC AC97.

Merci à tous ceux qui pourront m'aider à sortir du 100% fidèle de Mediaportal.
 

CCN

New Member
September 24, 2006
3
0
Home Country
France France
la lecture asio n"est pas uniquement pour des sorties analogiques?
Pour ma part je suis sous asio mais en rca.
 

logan5

New Member
February 18, 2008
4
0
Home Country
France France
<div class='quotetop'>CITATION(CCN @ 5 Feb 2008, 09:23 ) <{POST_SNAPBACK}></div>
la lecture asio n"est pas uniquement pour des sorties analogiques?
Pour ma part je suis sous asio mais en rca.[/b]

On peut sélectionner (dans la conf du driver ASIO) quelle sortie de la carte son est concernée par l'ASIO. Cela peut être la sortie analogique, ou la sortie SP/DIF (sur ma carte M-Audio 24/96 par exemple).
Idem dans la conf de ASIO4ALL. En tout cas, cela marche impec sur la sortie numérique avec Winamp/ASIO. Mais pas avec Mediaportal/ASIO.
 

logan5

New Member
February 18, 2008
4
0
Home Country
France France
Je m'auto-répond à mes questions, après avoir consulté le source de Mediaportal (cela pourra peut-être intéresser qqun).

Dans BassAudio.cs, il y a le code suivant :

<div class='quotetop'>CITATION</div>
if (_asioDeviceNumber > -1)
{
// not playing anything via BASS, so don't need an update thread
Bass.BASS_SetConfig(BASSConfig.BASS_CONFIG_UPDATEPERIOD, 0);
// setup BASS - "no sound" device but 48000 (default for ASIO)
initOK = (Bass.BASS_Init(0, 48000, 0, 0, null) && BassAsio.BASS_ASIO_Init(_asioDeviceNumber));

...

else
{
int soundDevice = GetSoundDevice();

initOK = (Bass.BASS_Init(soundDevice, 44100, BASSInit.BASS_DEVICE_DEFAULT | BASSInit.BASS_DEVICE_LATENCY, 0, null));
}[/b]

Mediaportal force le sampling rate (en ASIO) à 48000 (48Khz), alors que les échantillons sont en 44.1.
Hors ASIO, il initialise le moteur en 44.1 (et là ça marche sur la sortie numérique).

Je pense que le problème vient de là. Il faudrait que Mediaportal initialise le driver ASIO en mode "passtrough" plutôt que de forcer un sampling rate particulier.
C'est dommage aussi de forcer un sampling rate en mode non ASIO. Cela veut dire que si on lit un fichier de haute qualité samplé en 96Khz par exemple, sa qualité sera dégradée par BASS.

Il n'y a pas de solution simple au problème car BASS semble être programmé dans l'optique d'un sample rate unique câlé une fois pour toutes, et non d'un sample rate variable en fonction du fichier lu.

Je n'ai pas pu voir (encore) dans le source si BASS touche aux échantillons même si le volume est à 100% et que tous les DSP sont off. Je vais essayer de regarder.
 

Users who are viewing this thread

Top Bottom