Audiyofan.org
http://www.audiyofan.org/forum/

OverSampling "à la source"
http://www.audiyofan.org/forum/viewtopic.php?f=4&t=8639
Page 5 sur 7

Auteur:  philbob [ Mer 28 Déc 2011, 11:37 ]
Sujet du message:  Re: OverSampling "à la source"

Bonjour,

@hervediy

Pourquoi Beark ? :?:

Et surtout je ne vois pas bien comment faire autrement.
A ma connaissance, c'est ce qui est fait dans tous les lecteurs CD.
Idem pour les cartes son de PC.

Au retour de partout, que ce soit avec du DSP, du FPGA ou autre, on
en revient au même schéma de principe.

Auteur:  P BEN [ Mer 28 Déc 2011, 11:39 ]
Sujet du message:  Re: OverSampling "à la source"

philbob a écrit:
Bonjour,



Ca n'avance pas beaucoup. J'ai de gros soucis de convergence du modèle.
Un temps de calcul bien trop long pour un résultat bien trop mauvais. tub20
Le modèle n'est sans doute pas idiot, mais c'est mon solveur qui
est totalement inadapté. Il faut que je reprenne l'analyse en y mettant
plus de "physique" afin de trouver une résolution plus astucieuse.
Bref, c'est pas pour demain.... :roll:


J'ai un pb du même genre :( avec mon solveur perso. Il converge avec des triodes et pas avec des pentodes. çà aurait peut être quelque chose à voir avec la monotonie et le signe de la dérivée dIa / dVa .... :?:

Auteur:  P BEN [ Mer 28 Déc 2011, 11:43 ]
Sujet du message:  Re: OverSampling "à la source"

philbob a écrit:
Bonjour,


Au retour de partout, que ce soit avec du DSP, du FPGA ou autre, on
en revient au même schéma de principe.


Tiens, peut être tu saurais faire un schéma boitologique .....des principales solutions :
PC avec USB : Du Fichier FLAC ou truc à l'ampli BF
Lecteur CD : Du Fichier CD à l'ampli BF

et si tu peux mettre la ref des flux entre boite, on ferait un grand pas (au moins moi).. :mrgreen:

Auteur:  P BEN [ Mer 28 Déc 2011, 11:47 ]
Sujet du message:  Re: OverSampling "à la source"

J'ai cru comprendre aussi que dans les DACs BB (TI) il y avait un mécanisme de filtrage numérique utilisant un suréchantillonnage musclé....mais pas vraiment décrit dans la doc (secret industriel ???). Les 27xx et 29xx semblent avoir le même fonctionnement en mode DAC, je me trompe ?

Auteur:  Yves07 [ Mer 28 Déc 2011, 12:05 ]
Sujet du message:  Re: OverSampling "à la source"

Oui, en mode DAC.
Par contre je ne pense pas que la sortie SPDIF subisse cette sorte de traitement . . .
En tous cas, je n'ai rien remarqué lors de mes diverses manips.

Auteur:  Totof [ Mer 28 Déc 2011, 12:24 ]
Sujet du message:  Re: OverSampling "à la source"

Salut

Pour répondre simplement à Pascal et faire simple à la limite
"KISS"

2 voies , la "PC" et la "CD"

1° PC

Flux audio usuel ( Flac Wav Ape M4a et j'en passe ) stocké sur le média de stockage ( DD , clé USB etc ) ==> lecture avec player universel ( Vapkse en a déjà bien débattu )
sortie via USB sur PCM2706 par exemple ===> sortie du flux directement en I2S acceptable par un TDA1543 et ton I/V à base de BC547
sortie analogique du TDA1543 ===> ampli BF du système

à la limite "KISS"

Flux audio usuel ( Flac Wav Ape M4a et j'en passe ) stocké sur le média de stockage ( DD , clé USB etc ) ==> lecture avec player universel ( Vapkse en a déjà bien débattu )
sortie via USB sur PCM2906 par exemple ===> sortie du flux sur les DAC internes du PCM
sortie analogique du PCM2906 ==> directement sur ampli BF du système


2° Flux audio CD ==> sortie SPdiff
sortie Spdiff ==> entrée décodeur Spdiff ( CS8412,DIR9001, etc ) ==> sortie décodeur flux I2S
flux I2S ==> TDA1543 ==> sortie analogique du TDA1543
sortie analogique du TDA1543 ===> ampli BF du système

à la limite "KISS"

Flux audio CD ==> sortie I2S interne du décodeur du lecteur ( SAA7310 etc )
flux I2S ==> TDA1543 sous forme de carte additionnelle ==> sortie analogique du TDA1543
sortie analogique du TDA1543 ===> ampli BF du système

Bon appétit

Auteur:  hervediy [ Mer 28 Déc 2011, 12:46 ]
Sujet du message:  Re: OverSampling "à la source"

oui on peut faire autrement.

des arguments objectifs?

Copyright Management (PCM2906)

hervé.

Auteur:  philbob [ Mer 28 Déc 2011, 19:08 ]
Sujet du message:  Re: OverSampling "à la source"

Bonjour,

@hervediy

On peut faire autrement ?

Si tu peux nous en dire plus, je suis preneur car, comme je l'ai
déjà dit, je ne suis pas électronicien et bien entendu, je ne connais
pas tout. Pour avoir fait le tour de la question, il me semblait que
la méthode évoquée se retrouvait dans les différentes solutions vues
sur la toile.

Auteur:  hervediy [ Mer 28 Déc 2011, 22:08 ]
Sujet du message:  Re: OverSampling "à la source"

les platines cd sont commercialisées depuis de nombreuses années, les players avec des dac séparés depuis un peu moins longtemps,et les solutions basées sur des PC sont les plus récentes.

le flux numérique peut être utilisé sans transformation ou on peut lui appliquer des traitements mathématiques.

pour appliquer des calculs, il faut appliquer une transformée de fourrier.

en gros d'une série de points, on veut en faire une ligne.
donc on essaye de trouver la ligne la plus probable qui passe par ces points.

comme ce sont des signaux périodiques, on ne va pas prendre des segments de droite pour approximer le signal mais une somme de sinusoïdes se rapprochant le plus.

en gros c'est comme de passer d'une image raster à une image vecteur.
dans le meilleur des cas le vecteur est la copie conforme du signal original.

mais si on ne fait pas de traitement numérique, on ne prend aucun risque qu'il y est la moindre différence.

bonne nuit à demain pour la suite..

Auteur:  philbob [ Mer 28 Déc 2011, 23:34 ]
Sujet du message:  Re: OverSampling "à la source"

Bonjour,

Du pareil au même !

Je ne parle pas des techniques d'échantillonnage ni de la prise de son.
Je parle uniquement de la restitution d'un signal numérique échantillonné à 44.1 kHz

La méthode consiste bien à recréer une information qui n'existe pas dans l'unique
but de repousser Fe afin de pouvoir filtrer passe bas facilement.

Le choix de l'algo d'interpolation est une autre affaire. Que ce soit une
interpolation linéaire, sinus cardinal ou toute autre fonction, on ne fait
qu'inventer du signal qui sera de toute façon filtré par la suite.
Imaginer que le signal suit une droite ou un sinus entre deux échantillons est
dans les deux cas une vue de l'esprit.

Dire que le signal doit être périodique sur la période d'analyse est une erreur.
Ce n'est pas parce que la FFT utilise des signaux périodiques comme fonction analysante
que le signal analysé doit l'être également sur la période d'analyse.
De toute manière, le signal sera périodisé à la fondamentale par la FFT.

Le traitement de fourier peut s'appliquer aussi bien en fréquentiel qu'en temporel.
C'est d'ailleurs le cas du filtre FIR dont les coefficients se calculent par FFT
mais dont le traitement est temporel.

La technique employée dans les lecteurs CD est mathématiquement parfaitement identique
à un traitement par FFT. La seule différence est que ce traitement est fait en temps réel.

A titre indicatif, un FIR réalise la convolution du signal par les coefficients du filtre.
Cette convolution peut se faire en temporel ou en fréquentiel.
En fréquentiel par le produit de la FFT de l'échantillon temporel avec le conjugué du filtre.
Le signal temporel filtré étant obtenu par la FFT-1 du précédant produit.

Les DAC audio ont étés créés pour recevoir un flux à 44.1 kHz et les fabricants
ont dû régler le problème du filtrage de la Fe. Jusqu'à présent, les
solutions trouvées tournent autour du sur-échantillonnage et filtrage FIR.
C'était déjà le cas pour le TDA1541, c'est encore le cas pour le PCM2906B.

Mais on peut tout à fait faire la même chose en soft: A partir d'un signal
à 44.1 kHz, on sur-échantillonne, on filtre passe bas et on envoie cela sur un DAC rapide.
Et puis on refiltre encore pour virer les éventuels restes de Fe.

Pour moi les deux techniques sont identiques.

Auteur:  hervediy [ Jeu 29 Déc 2011, 08:47 ]
Sujet du message:  Re: OverSampling "à la source"

philbob a écrit:
Que ce soit une
interpolation linéaire, sinus cardinal ou toute autre fonction, on ne fait
qu'inventer du signal qui sera de toute façon filtré par la suite.


salut, phil.

je ne comprend pas ce qui te permet d'affirmer que ce qui est inventé entre deux échantillons à 44.1 kHz est nécessairement d'une fréquence supérieure à 20 kHz.

philbob a écrit:
Les DAC audio ont étés créés pour recevoir un flux à 44.1 kHz et les fabricants
ont dû régler le problème du filtrage de la Fe. Jusqu'à présent, les
solutions trouvées tournent autour du sur-échantillonnage et filtrage FIR.
C'était déjà le cas pour le TDA1541, c'est encore le cas pour le PCM2906B.

Mais on peut tout à fait faire la même chose en soft: A partir d'un signal
à 44.1 kHz, on sur-échantillonne, on filtre passe bas et on envoie cela sur un DAC rapide.
Et puis on refiltre encore pour virer les éventuels restes de Fe.

Pour moi les deux techniques sont identiques.


dans la solution par "soft" comment tu fais pour envoyer cela à un dac rapide si les fabricants brident volontairement les sorties en invoquant des raisons de copyright.

hervé.

Auteur:  philbob [ Jeu 29 Déc 2011, 10:25 ]
Sujet du message:  Re: OverSampling "à la source"

Bonjour,


Contenu > 20kHz
---------------

Plusieurs raisons:

1) Si la prise de son est correctement réalisée, le signal analogique a été filtré
passe bas à Fe/2 avant d'être numérisé, sinon repliement spectral.
Donc pas de contenu fréquentiel > à Fe/2.

2) La bande passante instantanée d'un signal est comprise entre deux bornes:
La basse fréquence définie par l'inverse de la durée totale du signal.
La haute fréquence définie par la moitié de l'inverse de la période d'échantillonnage.
C'est Joseph Fourier et Claude Shannon qui le disent.
Un signal échantillonné à Fe est incapable de traduire des variations > Fe/2.
D'ailleurs, si le signal échantillonné à Fe possède un contenu spectral Fsignal > Fe/2,
celui ci apparaitra à Fsignal - Fe/2. C'est le fameux repliement.

3) Fourier dit que sur une période fondamentale Tfond, un signal peut se décomposer
en une somme infinie de sinus et cosinus de période Tfond, Tfond/2, Tfond/3,...., Tfond/inf
En pratique, on ne décompose pas à l'infini, on se limite à 1/Fe.
Donc, si on sur-échantillonne mettons d'un facteur 2, le couple sinus cosinus qui viendra
en plus traduira un signal à 2 fois la période de la nouvelle Fe, les autres couples
sinus cosinus restant inchangés.

Solution soft
-------------

Les raisons sont, je pense, historiques et mathématiques.

Historiques car à l'époque de la création du CD, les constructeurs ont dû mettre au
point des doubles DAC 16 bits galopant à au moins 40kHz (voir + si sur-échantillonnage).
C'était le compromis entre la bande passante (20kHz pour l'oreille), la capacité de stockage
sur CD, la techno des DAC et la fidélité du signal.
Du coup, tout un pan de l'industrie s'est acharné à produire des composants compatibles
de ces caractéristiques. C'est finalement devenu un standard et c'est pourquoi on retrouve
ces familles de produits de nos jours.

Mathématiques car, si on postule que l'oreille humaine n'entend pas au delà de 20kHz,
l'échantillonnage à Fe > 40kHz est suffisant pour traduire sans erreur un signal dont
le contenu fréquentiel ne dépasse pas 20kHz.

Maintenant, rien n'empêche de faire plus. C'est d'ailleurs l'objectif du SACD qui échantillonne
à 2.8MHz (64 fois + que le CD) sur des mots de 1 bit (c'est une sorte de PWM).
Il existe nombre de DAC rapides, pas forcément destinés à l'audio, qui peuvent êtres employés.

Après, c'est affaire de cohérence: Rien ne sert de numériser sur 24 bits (dynamique 144 db,
lsb 60 pico volt) alors qu'une enceinte ne dépasse pas une dynamique de 70 db et que
je serais bien surpris qu'un ampli (surtout à tubes) soit capable d'extraire 60 pV du bruit.

Auteur:  hervediy [ Jeu 29 Déc 2011, 11:50 ]
Sujet du message:  Re: OverSampling "à la source"

philbob a écrit:
Donc, si on sur-échantillonne mettons d'un facteur 2, le couple sinus cosinus qui viendra
en plus traduira un signal à 2 fois la période de la nouvelle Fe, les autres couples
sinus cosinus restant inchangés.


bon admettons que je programme comme un pied et que mon algorithme rajoute des samples d'échantillonnage supérieur (les petits points) comme je l'ai fait dans la figure C.

Fichier(s) joint(s):
sample.PNG
sample.PNG [ 7.72 Kio | Vu 8138 fois ]


tu vas me dire que c'est n'importe quoi.

bon mais pour rigoler imaginons que l'on ai un bon algorithme d'oversampling.
il est facile de revenir à l’échantillonnage initial en supprimant des samples intermédiaires.

et comme notre algorithme c'est du béton (que les samples rajoutés ne change en rien le signal d'origine),que les samples supprimés soient aussi bien des samples calculés que des samples présents à l'origine (les gros carrés sur le schéma) cela ne devrait pas modifier le résultat.

et maintenant réitérons plusieurs fois oversampling et désampling.

que les optimistes qui pense qu'il n'y a pas de différence entre le fichier de départ et d'arrivé, lèvent le doigt.
philbob a écrit:
Les raisons sont, je pense, historiques et mathématiques.

http://freerider.dyndns.org/anlage/HiresAudio_E.htm a écrit:
Digital output (S/PDIF) of SACD and DVD-A players is restricted due to copyright reasons. This means at the digital output of your DVD-A/SACD player you get PCM signals in a restricted output quality:


c'est pas moi qui le dit.

remarque:le SACD a un mécanisme d'encodage analogique numérique particulier.

hervé.

Auteur:  philbob [ Jeu 29 Déc 2011, 15:00 ]
Sujet du message:  Re: OverSampling "à la source"

Bonjour,


Hopala: :shock:

Tu dis: "il est facile de revenir à l’échantillonnage initial en supprimant des samples intermédiaires...."

Non ! Ce n'est pas facile!
En prenant un échantillon sur deux, certes, on pratique un abaissement de cadence mais on à juste oublié
de filtrer passe bas avant!
Notre signal initial contient des fréquences > à la nouvelle Fe/2.
Si on ne filtre pas, on replie spectralement. Du coup, pas étonnant que le signal ainsi sous-échantillonné
soit différent du signal d'origine.
C'est bien là tout le problème.

Il faut filtrer avant de décimer, sinon on fait des bêtises.

Retente le coup avec ton exemple en prenant non pas un échantillon sur deux mais en formant
un échantillon avec la moyenne de deux échantillons consécutifs.
Tu aura ainsi réalisé un FIR à deux coefficients de valeur 1/2 qui n'est, somme toute, qu'une moyenne glissante.

Auteur:  hervediy [ Jeu 29 Déc 2011, 15:24 ]
Sujet du message:  Re: OverSampling "à la source"

merci de ta réponse, mais il y a un truc qui m'échappe.

prenons pour simplifier le cas où on rajoute un échantillon sur deux et que en suite on en supprime un sur deux (sur mon schéma je rajoutais trois échantillons supplémentaires).

mettons nous dans le cas particulier où on supprime les échantillons calculés.

on retombe exactement sur les échantillons d'origine à moins qu'ils aient été eux aussi modifiés par le sur-échantillonnage?

hervé.

Page 5 sur 7 Heures au format UTC + 1 heure
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/