Logicielsmoto.com

Nous sommes le 16 Oct 2019, 20:21

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 273 messages ]  Aller à la page Précédente  1 ... 15, 16, 17, 18, 19
Auteur Message
 Sujet du message: Re: MOD ?
MessagePosté: 16 Oct 2017, 15:57 
Hors ligne

Inscription: 06 Juin 2004, 08:23
Messages: 373
Bien sûr, avec l'extension 64 Ko destinée initialement au nanoréseau et avec mon Romdisk NG. Et sur le MO6 et MO5NR, c'est déjà intégré dans la machine.

Note que la commutation est facile : INC et DEC sur le registre $A7CB. Mais ca reste trop lent bien sûr pour être mis à jour en permanence.


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: MOD ?
MessagePosté: 18 Oct 2017, 22:59 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1112
Localisation: Brest
Samuel Devulder a écrit:
Ca nous ferait un PWM à 6 niveaux (00000, 10000, 11000, 11100, 11110, 11111) dont chaque pulse 0 ou 1 dure 27µs, soit un sur-échantillonnage à ~37khz ce qui est clairement mieux que nos malheureux 8khz. Mais est-ce suffisant pour avoir quelque chose de qualité ? Je ne sais pas. Il faut expérimenter, et cela nécessite de ré-écrire complètement le player. Il me reste donc plein de travail à faire. J'espère au moins que la qualité sera là car ca m’ennuierait de tout détruire pour ne pas avoir beaucoup mieux au final.
Après pas mal de travail j'ai réussi à coder cet algorithme avec non pas 6 niveaux, mais 11 niveaux dont chaque puls dure exactement 18µs. Chacun des 11 niveau possibles pour le PWM est implémenté dans un "core" gérant chacune des 4 voix tout en positionant le buzzer à 1 pendant le temps désiré. Moralement c'est comme si on arrivait à changer l'état du buzzer à toutes les 18µs soit à peu près du 56khz. Cool, c'est carrément vachement plus que ce que je faisais avant avec les instruments déjà convertis sur 1 bit. :cool: En travaillant en numérique le plus longtemps possible et en passant au 1 bit qu'en toute fin du traitement on arrive à gagner en vitesse. Ce qu'on atteint pas en traitant 1 bit à la fois plein pot, on le gagne en en faisant passer plus de bits (8 valeurs) par échantillon en une fois. Malin ! :bien:

Oui mais attends, il y a 4 voix et chaque voix possède 2 positions où l'on peut modifier le buzzer. Ca ne fait pas 11 niveaux, mais 4*2+1=9 niveaux. Oui tout à fait, mais j'ai réussi à récupérer 2 niveaux corrélés dans la routine qui réalise le mélange de chacune des voix et le saut calculé vers le bon core. Par corrélé, je veux dire que dans cette partie de l'algo (les deux derniers tops d'horloge à 55khz) le buzzer doit forcément garder les mêmes valeurs. Du coup on ne peut avoir la séquence 0.9=1111111110 car cela nécéssiterait de changer l'état du buzzer entre les deux derniers tops ce qui est impossible. On arrive à s'en sortir en introduisant un léger décalage de phase de 18µs à un moment (observer ce qu'il se passe avec le niveau 0.9): 0.0=0000000000, 0.1=1000000000, 0.2=1100000000, 0.3=1110000000, ..., 0.8=1111111100, 0.9=0111111111, 1.0=1111111111. C'est bien. :good:

Bref, avec cette astuce on obtient un player PWM à 11 niveaux dans lequel une période dure 194µs (+7 pour le débug). Ca nous fait une fréquence de restitution effective à 5khz. Pareil que celle de la Forever 2017. Donc ca devrait être acceptable comme vitesse je pense. Vraiment ? Non je demande, parce qu'avant on se focalisait à sortir du 8khz sans y arriver et que là ca tourne à 5khz.. alors est-ce vraiment bon quand même? :voyons:

VRAIMENT OUI! :coolfuck:

Voici d'ailleurs un petit patchwork de M0Ds que j'arrive à jouer avec ce player 100% 1bit. Il y a un peu de tout, du bon et du moins bon. J'ai juste mis dedans les premiers morceaux qui étaient convertis sans erreurs.
Fichier(s) joint(s):
Commentaire: PWM à 11niveaux utilisant le buzzer TOx et réalisant un cycle en 5khz.
pwm_5khz.zip [185.11 Kio]
Téléchargé 126 fois
Je suis content car cet algo et nettement plus robuste que les précédents. Pratiquement tous les morceaux passent (s'ils tiennent en ram.) Il y a même un effet de bord que j'ai gardé. Les couleurs du cadre sont pour le débug[*], et étonnamment ca ne rends pas mal du tout à l'écran.

Au début on entends la porteuse à 5khz, mais comme elle est très très propre (exactement à 5khz sans aucune variation autour à part l'IRQ timer qui tourne en tache de fond), le cerveau la gomme et la considère comme un simple bruit enrivonnant type sifflement du moniteur (en tout cas c'est l'impression que ca me fait chez moi.) En travaillant un peu plus, il y a peut-être moyen de masquer cette porteuse, mais je vous livre quand même cette version toute fraiche d'aujourd'hui tellement je suis content de pouvoir sortir du buzzer un truc pas trop dégeux. Ca roule! :tourne: :)

NOTA: Si vous n'avez pas de machine ni d'émulateur sous la main, il y a un extrait MP3 que j'ai réalisé avec ce PWM et qui est dispo (pas longtemps) sur cjoint, >>ICI<<.
Fichier(s) joint(s):
Commentaire: Source du convertisseur et du player PWM.
source.zip [21.27 Kio]
Téléchargé 112 fois
____
[*] Il y a un code couleur par core utilisé, cad une couleur par rapport cyclique du PWM. Plus c'est lumineux, plus le rapport cyclique est proche de 1. Si on est attentif aux couleurs des lignes du cadre de l'écran on arrive à "lire" le signal audio. Avec certains fréquences, on voit un motif stationnaire sur le coté. C'est hypnotique (mais attention si vous êtes épileptique.)

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: MOD ?
MessagePosté: 19 Oct 2017, 22:08 
Hors ligne

Inscription: 21 Aoû 2006, 09:06
Messages: 1112
Localisation: Brest
Léger développement récent.

En changeant d'état 4 fois par cycle de PWM, j'ai réussi à repousser la porteuse de 5khz à 9khz:
Image
Alors oui, ca ralenti un peu le player qui ne tourne à présent plus qu'à 4.6khz, mais la qualité du son est nettement meilleure. Sur machine réele et son CRT, je n'entends plus la porteuse pour ainsi dire. Jugez vous même avec >>ce fichier<<.

Vous en pensez quoi de cette nouvelle version par rapport à la précédente? Du son de qualité devrait être à la porté du MO5 brut avec ca :)

_________________
Good morning, that's a nice Tnetennba


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 273 messages ]  Aller à la page Précédente  1 ... 15, 16, 17, 18, 19

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages
Vous ne pouvez pas joindre des fichiers

Rechercher:
Aller à:  
cron
Développé par phpBB® Forum Software © phpBB Group
Traduction par phpBB-fr.com