Gamoover

Besoin de contacter un admin pour une proposition, une suggestion ou discuter d'un probleme ?
C'est ici : High_Cobra, AsPiC ou Pich

[WIP] DMD clock by F4brice - NEW : lecture des GIF animées en natif !

Démarré par f4brice, Dimanche 04 Décembre 2016, 20:19:46 PM

eLLuiGi

nan nan on parle bien d'un choix d'une anim au hasard parmis toutes les anims  ;)

le fait est qu'a chaque fois que j'allume la clock, il y a toujours 4-5 anims qui reviennent TRES régulièrement (les 4-5 étant différente à chaque allumage bien sur). Des fois la clock va meme me jouer la meme anim 2 fois de suite ou me la rejouer 2-3 anims plus tard. Pour en avoir parler avec d'autres membres, je ne suis pas le seul, alors je souleve quand meme la question car 180 anims ca me parait quand meme assez pour avoir un random correct sans avoir à revoir la meme anim régulièrement d'ou ma question.

Tormak

#465
Dans le milieu du développement, il a été prouvé que les fonctions Rand des langages sont pas si aléatoire, et ont tendance à faire la même série à la suite de chiffre.

Le fameux effet dans les auto radio, qui fait qu'on a l'impression que c'est toujours les mêmes musiques qui passent quand on est en random !

Bref ça c'est inhérents à tous les langages et toutes les applications...

Tic.

Édit :
https://openclassrooms.com/courses/l-aleatoire-en-c-et-c-se-servir-de-rand-1

Dans ce cours sur le Rand il parle justement de ce que je viens de dire et ce à quoi vous êtes confronté...

f4brice

Vu que je n'ai pas la main sur le générateur de nombres aléatoires, je vous propose ça :

  • tirage aléatoire
  • si l'amin fait partie des 32 dernières anim jouées, on refait le tirage aléatoire

Cette verif ne sera active que s'il y a au moins 64 anims presentes sur la SD.
Sinon le logiciel va trop galérer à trouver une anim non jouée.
Deja avec 32/64, il y a une probabilité de 50 %  de rejeter le 1er tirage aléatoire.

@Tormak : je n'utilise pas rand() mais de l'électronique dédiée basée sur du bruit analogique et détecteur d'entropie qui est certifiée FIPS PUB 140-2 à 99%.
Ca me semble overkill pour une horloge décorative...

eLLuiGi


Bertille


SEGA New Astro City
STERN Ghostbusters Premium
Crossbox OpenAir / HfsBox 15K / Rpi2Jamma / Darksoft CPS2 & MVS

Iro

C'est un classique l'aléatoire pas si aléatoire en dev. Mais dans les grandes lignes , çà doit faire le job dans la majorité des cas.
"Jet set 2, c'est avec Robert Garcia ?" Kaneda, Lapsus de sac Vol.1
Peter Shou Owner' Club

WIPs : Naomi - SEGA Rally - AB Cop - Lethal Enforcers - COMPUMI - Terminator 2 - Space Invaders - Artworks pour Boitiers K7 Naomi CF - Ma collec' de panels

LES TUTOS DE GAMO   

zebassprophet

sur mon autoradio c'est l'enfer
99 chansons

4-5 fois la meme de suite

chais pas ce qu'ils ont branlé

eLLuiGi

Bas du coup avec 10 musiques tu as tout le temps la même  :D

f4brice

Citation de: Tormak le Vendredi 22 Décembre 2017, 13:10:53 PM
https://openclassrooms.com/courses/l-aleatoire-en-c-et-c-se-servir-de-rand-1

En fait, ce qui est présenté est un arrangement aléatoire : on trie aléatoirement des nombres connus, pour qu'ils sortent chacun leur tour dans un ordre aléatoire.

Déjà, ce n'est pas ça qui est voulu pour la DMD-clock, et en plus c'est juste infaisable dans une carte embarquée.
S'il y a 5000 animations, il faudrait consacrer 10 kB de RAM juste pour stocker des nombres !
C'est faisable sur un ordi standard, et juste impensable pour une carte électronique avec un micro-contrôleur !

f4brice

Firmware 1.2.2 disponible !


  • Affichage de la raison de l'échec de la connexion WiFi (quand c'est dispo)
  • Correction bug lecture du fichiers des actions planifiées (merci à Bertille qui me l'a signalé et qui a testé le fix)
  • Évite de rejouer une animation si elle a déjà été jouée précédemment

Le lien Google drive n'a pas changé. Vous l'avez dans ma signature !

Bertille

Firmware 1.2.2 installé dans la clock c'est tous bon !
^-^

SEGA New Astro City
STERN Ghostbusters Premium
Crossbox OpenAir / HfsBox 15K / Rpi2Jamma / Darksoft CPS2 & MVS

marcus600

cool ca , c'est exactement ce qu on avait besoin pour le random  ^-^ ^-^

par contre j'ai une nouvelle demande , la possibilité d'avoir l'ancienne luminosité ou une graduation supérieur:)
genre de 0 a 10

ouais je sais c'est con après la demande pour baisser la luminosité =:)) =:))

mais je viens d'installer ma dmd clock dans ma gameroom et je suis finalement un peu loin ! et je me rend compte que 5/5 de base est moins puissante que le première firmware.

alors je sais pas si on peux mettre une graduation en 10 , mais avoir la possibilité de mettre d'origine pour tester , mème si il y a du ghosting , pas sur qu on le vois a ma distance !

la DMD au milieu d'une alligné de 5 flipper a 2M40 a peu pres.  ca donne trés bien , mais finalement manque de luminosité  ;D ;D

ps: désolé fabrice de te fait un peu chier avec tout ca ! mais ca permet de la mettre au petit oignon la DMD  :D

f4brice

Citation de: marcus600 le Vendredi 22 Décembre 2017, 20:19:08 PM
par contre j'ai une nouvelle demande , la possibilité d'avoir l'ancienne luminosité ou une graduation supérieur:)
genre de 0 a 10

Non.

eLLuiGi

Quelle reactivité  <:)

C'est parfait  ^-

Un enorme MERCI  :-*

Sunn


Tormak

Citation de: f4brice le Vendredi 22 Décembre 2017, 13:21:23 PM
Vu que je n'ai pas la main sur le générateur de nombres aléatoires, je vous propose ça :

  • tirage aléatoire
  • si l'amin fait partie des 32 dernières anim jouées, on refait le tirage aléatoire

Cette verif ne sera active que s'il y a au moins 64 anims presentes sur la SD.
Sinon le logiciel va trop galérer à trouver une anim non jouée.
Deja avec 32/64, il y a une probabilité de 50 %  de rejeter le 1er tirage aléatoire.

@Tormak : je n'utilise pas rand() mais de l'électronique dédiée basée sur du bruit analogique et détecteur d'entropie qui est certifiée FIPS PUB 140-2 à 99%.
Ca me semble overkill pour une horloge décorative...
Citation de: f4brice le Vendredi 22 Décembre 2017, 17:49:20 PM
En fait, ce qui est présenté est un arrangement aléatoire : on trie aléatoirement des nombres connus, pour qu'ils sortent chacun leur tour dans un ordre aléatoire.

Déjà, ce n'est pas ça qui est voulu pour la DMD-clock, et en plus c'est juste infaisable dans une carte embarquée.
S'il y a 5000 animations, il faudrait consacrer 10 kB de RAM juste pour stocker des nombres !
C'est faisable sur un ordi standard, et juste impensable pour une carte électronique avec un micro-contrôleur !


Ohhh keep cool Fabrice,

J'expliquais juste à tes fanboys que souvent la sensation de l'aléatoire pas aléatoire est une des choses qu'on traîne depuis des années dans le développement...

Le lien sert juste à montrer que je n'invente rien, fait corréler dans ce cours au début du chapitre avec un lien à priori cassé vers un article plus détaillé la dessus.
J'ai envoyé ça rapidement de mon téléphone.

Te sens pas visé comme ça....

La prochaine fois je vais fermer ma g****e, et laisser le fabricant répondre à ces clients...  ;)