HuC6280 vs. HuC6280A (samples PCM)

PSG, PCM, CD, HES, VGM...

Modérateurs : SirG, Redfield1, shubibiman, Laucops

Avatar de l’utilisateur
touko
NECromancer
Messages : 2297
Inscription : lun. 31 mars 2008 14:32

HuC6280 vs. HuC6280A (samples PCM)

Message par touko »

Bonjour, je viens de faire un nouveau driver PCM basé sur la technique du buffer de la puce audio .
L'astuce est simple, elle consiste à laisser la lecture du buffer de 32 octets faire le boulot pour nous, et de le recharger une fois les 32 octets lus à l'aide du timer avec les 32 octets suivant de notre sample .

Pour le moment je vais l'utiliser pour jouer des samples à 7khz .
Certains vont me demander quel est l'intérêt de faire ça sachant qu'on peut déjà jouer des samples de cette qualité .C'est exact mais ce qui va suivre va juste vous donner un aperçu du truc .

Jusqu'à présent on utilisait le timer pour envoyer les samples 1 à 1 dans le DAC , et notamment à 7khz,comme je le faisais avec mon ancien driver .
Ca marchait plutôt bien et ça prenait 5/6% de CPU / voix, à titre infos le driver de bonk prend 20/25% de CPU pour un sample .

Donc cette technique joue un sample, mais par exemple pour 7khz on est à 1% de CPU, vous voyez l'intérêt maintenant ??
Toujours pas ??, et si je vous dis que jouer des samples 32khz avec cette technique prend autant (voire moins) de CPU que la méthode classique pour des samples 7khz (soit 5%) ??
Ca c'est mieux non ?? :wink:
Dernière modification par touko le dim. 17 déc. 2017 09:28, modifié 3 fois.
Avatar de l’utilisateur
pnauts
NECromancer
Messages : 4996
Inscription : ven. 03 mai 2013 14:05
Localisation : pas loin de Nîmes.

Re: sons PCM

Message par pnauts »

Je dis cool ! mais quand est-ce qu'on voit une utilisation concrète ?!
:bomberplay:
Image
Avatar de l’utilisateur
touko
NECromancer
Messages : 2297
Inscription : lun. 31 mars 2008 14:32

Re: sons PCM

Message par touko »

Faudrait que je fasse un petit truc avec un sample de qualité >= 32khz .
Mais ce sera difficile de voir l'apport effectif juste avec ça .

concrètement on pourra avoir ça comme zique:
https://www.youtube.com/watch?v=pHcwt5Oh6O4

mais in game .
Pour le moment ça marche sous mednafen, j'ai pas encore testé sur ma SGX(y'a pas de raisons que ça marche pas, mais on sait jamais).
Avatar de l’utilisateur
Kaminari
Modérateur
Messages : 7049
Inscription : ven. 24 sept. 2004 19:36
Contact :

Re: sons PCM

Message par Kaminari »

Je ne comprenais pas grand chose à la lecture... jusqu'à ce que je réalise que je pensais "ADPCM" :bomberfacepalm:

Pour du PCM, c'est juste brillant. Il me semble que Tomaitheous utilisait une technique similaire il y a déjà quelques années pour jouer du PCM 32 KHz avec très peu d'overhead.
Avatar de l’utilisateur
touko
NECromancer
Messages : 2297
Inscription : lun. 31 mars 2008 14:32

Re: sons PCM

Message par touko »

Lui il utilise 2 voix qu'il alterne, qd une lit, l'autre est remplie,moi je fais tout dans une voix .
Cette technique (d'alterner) est quasi obligatoire à partir de 32 khz .
Pour info il a fait une lecture de sample à 56khz :wink:

Mon but est plus une utilisation dans un jeu(utilisation CPU et taille des samples),et le procédé est tellement simple que je comprends pas comment ça n'a pas été déjà fait avant :?
Avatar de l’utilisateur
pnauts
NECromancer
Messages : 4996
Inscription : ven. 03 mai 2013 14:05
Localisation : pas loin de Nîmes.

Re: sons PCM

Message par pnauts »

Mais es-tu sûr que ça n'a pas déjà été fait avant ?
Image
Avatar de l’utilisateur
touko
NECromancer
Messages : 2297
Inscription : lun. 31 mars 2008 14:32

Re: sons PCM

Message par touko »

Sur non, mais même un jeu comme SF2 utilise un driver PCM pourri .
Même mon schéma de compression pour les samples ne semble pas avoir été utilisé qui est pourtant ultra évident à voir et permet d'économiser 33% de place .
Avatar de l’utilisateur
Kaminari
Modérateur
Messages : 7049
Inscription : ven. 24 sept. 2004 19:36
Contact :

Re: sons PCM

Message par Kaminari »

Je vais me faire l'avocat du diable, mais considérant le grand nombre de jeux sur cartouche qui exploitent le PCM pour les bruitages ou les instruments, la conclusion logique est que les devs ne voyaient pas de problème à consacrer 25% de leurs ressources CPU au driver audio. De toute évidence, même des jeux exigeants comme SF2, Coryoon ou PC Denjin s'en accommodent parfaitement.

Le plus intéressant dans ta routine est le sample rate, qui propose pour le même prix une qualité nettement supérieure (32 KHz, c'est au même niveau que l'ADPCM). Je ne suis pas sûr que ce soit complètement gratuit en terme d'espace, même pour une carte 8 Mb, mais je te fais confiance ;)

Il faudrait cependant voir du côté des jeux US. Certains titres comme Champions Forever Boxing poussent l'utilisation du PCM assez loin (multitrack façon MOD) et la qualité des samples s'approche de l'ADPCM.
Avatar de l’utilisateur
touko
NECromancer
Messages : 2297
Inscription : lun. 31 mars 2008 14:32

Re: sons PCM

Message par touko »

Je vais me faire l'avocat du diable, mais considérant le grand nombre de jeux sur cartouche qui exploitent le PCM pour les bruitages ou les instruments, la conclusion logique est que les devs ne voyaient pas de problème à consacrer 25% de leurs ressources CPU au driver audio. De toute évidence, même des jeux exigeants comme SF2, Coryoon ou PC Denjin s'en accommodent parfaitement.
c'est tout à fait ça en fait,et d'ailleurs il me semble que celui de airzonk est vraiment un des plus mauvais (30% pour 1 voix),et pourtant c'est pas un pacman le jeu .
Donc tu imagines bien ce qu'aurait pu donner un jeu PCE ultra optimisé .
Je ne suis pas sûr que ce soit complètement gratuit en terme d'espace, même pour une carte 8 Mb, mais je te fais confiance ;)
Non c'est clair c'est absolument pas gratuit, après je pense que des sample 14khz pour la grande majorité des jeux est largement faisable,mais par contre la compression devient moins réalisable à cause des besoins en CPU entre chaque sample .
On est à 1024 cycles de dispo entre chaque sample pour du 7khz, et on passe à 512 pour du 14khz :P ,donc plus délicat pour décompresser et remplir le buffer .
Et puis rien n'oblige à se limiter à 8MB, aujourd'hui on peut faire des hucard 20MB(voire bcp plus) facilement .
Il faudrait cependant voir du côté des jeux US. Certains titres comme Champions Forever Boxing poussent l'utilisation du PCM assez loin (multitrack façon MOD) et la qualité des samples s'approche de l'ADPCM.
Effectivement, je connaissais pas plus que ça ce jeu, mais tu as raison, je vais regarder de plus près . :wink:

PS: j'ai testé le driver ce WE sur ma SGX, et tout roule au poil pour le moment . :bomberwank:
Avatar de l’utilisateur
Kaminari
Modérateur
Messages : 7049
Inscription : ven. 24 sept. 2004 19:36
Contact :

Re: sons PCM

Message par Kaminari »

touko a écrit : lun. 18 déc. 2017 10:03 Et puis rien n'oblige à se limiter à 8MB, aujourd'hui on peut faire des hucard 20MB(voire bcp plus) facilement .
Tout à fait d'accord, et le mapper MC Genjin supporte 64 Mb :bomberdream:

Je voulais dire qu'à l'époque où la carte moyenne faisait 4 Mb, cette qualité de sample rate aurait sûrement été plus problématique.
Avatar de l’utilisateur
touko
NECromancer
Messages : 2297
Inscription : lun. 31 mars 2008 14:32

Re: sons PCM

Message par touko »

Oui faire du 32 ou même du 14khz était illusoire vu les tailles des hucard .
Faudra un de ces 4 que j'essaye de coder avec un mapper pour voir, parce que faire un jeu avec 20MB ou plus ça serrait top,et je pense que je me passerai du CD définitivement (enfin presque) .
Avatar de l’utilisateur
touko
NECromancer
Messages : 2297
Inscription : lun. 31 mars 2008 14:32

Re: sons PCM

Message par touko »

Si quelqu'un peut tester sur une PCE blanche (ou un sans la rev du CPU ) et me dire comment est le son, merci :
https://www.dropbox.com/s/q7zrmts9ov9e8 ... s.pce?dl=0
Avatar de l’utilisateur
Kaminari
Modérateur
Messages : 7049
Inscription : ven. 24 sept. 2004 19:36
Contact :

Re: sons PCM

Message par Kaminari »

Normalement tous les modèles de PCE (sauf la Core blanche) ont un HuC6280A. A quelles différences faut-il s'attendre avec le 6280 ?
Avatar de l’utilisateur
franz
NECromancer
Messages : 4160
Inscription : jeu. 26 janv. 2006 09:33
Localisation : Montpellier

Re: sons PCM

Message par franz »

QUOI???
Mais j'ai toujours entendu dire que les 3 PCEs (La blanche, la Core 1 et la Core II) possédaient exactement le même hardware! :shock:

Tu peux préciser?
Avatar de l’utilisateur
Kaminari
Modérateur
Messages : 7049
Inscription : ven. 24 sept. 2004 19:36
Contact :

Re: sons PCM

Message par Kaminari »

Rien de bien excitant, ce sont les mêmes architectures mais pas exactement le même hardware (compare les cartes-mère sur Google). Les révisions successives avaient simplement pour but de réduire les coûts de production.

Concernant la différence entre les deux CPUs, voici ce qu'en dit la doc de Mednafen :
Mednafen a écrit : HuC6280A is found in the CoreGrafx 1 and SuperGrafx. Provides proper channel amplitude centering. Many games will have less clicking with the HuC6280A, but it may cause clicking in a few games designed with the original HuC6280's sound characteristics in mind.
Je pensais que cette révision touchait toutes les machines ultérieures à la PCE blanche, mais ce n'est apparemment pas le cas. Ce qui voudrait dire que le HuC6280 de base doit être considéré comme le CPU de référence. La version "améliorée" n'a été que temporaire.

Ca rappelle un peu le cas du Commodore C128, dont le chip audio avait été "bugfixé" mais qui foutait la zouille avec la majorité des musiques C64 existantes...
Répondre