UltraStar-NG 0.2.0 dans les bacs

Posté par  . Modéré par Jaimé Ragnagna.
Étiquettes : aucune
0
3
nov.
2007
Jeu
UltraStar-NG est un clone, fonctionnant sous GNU/Linux, du jeu PS2 Singstar. Le but du jeu est de marquer un maximum de points en chantant le plus juste possible sur les chansons de votre choix.

Après plusieurs mois de gestation la nouvelle version est prête et apporte les nouvelles fonctionnalités suivantes :
  • Support de l'UTF-8 dans les paroles (grâce à pango)
  • Support de la capture audio grâce à portaudio (v18 ou v19) ou gstreamer (ainsi alsa devient optionnel et le jeu peu techniquement fonctionner sous BSD et Windows).
  • Réécriture au passage de l'API d'aquisition sonore (sous forme de bilbiothèque C++) et du traitement du signal (FFT)
  • La détection des fichiers de paroles est moins sensible à la casse (utilisation de glob pour leur recherche)
  • Ajout de la recherche et du filtrage des morceaux chargés
  • Ajout d'un écran de configuration et d'un écran de score
  • Correction de bugs, améliorations diverses et variées

Nous recherchons également des personnes chantant bien (ou mal) pour se filmer (et surtout le jeu) en pleine action

Aller plus loin

  • # Chouette

    Posté par  . Évalué à 7.

    Ça a l'air sympa comme jeu, assez marrant tout ça, mais ce qu'il manque c'est qu'il soit jouable from scratch, je n'ai aucune chanson de toutes les partitions téléchargeables, il serait très plaisant d'avoir des musiques libres à l'installation du jeu !
    • [^] # Re: Chouette

      Posté par  (site web personnel) . Évalué à 8.

      Comme par exemple l'inoubliable free software song http://www.gnu.org/music/free-software-song.html
      • [^] # Re: Chouette

        Posté par  (site web personnel) . Évalué à 3.

        Ouais, enfin, si le score est étalonné sur la version de Richard Stallman, ça promet. Pas terrible pour tester le logiciel...
    • [^] # Re: Chouette

      Posté par  . Évalué à 5.

      Il existe une chanson libre (avec le fichier de parole qui va avec) dans ultrastar-deluxe (la version windows développé en Delphi).
      Il est a noté que le morceau et en ogg et que cela implique que les versions xine de ultrastar-ng semblent ramer (en fait c'est un bug dans la librairie xine qui ne mets pas assez souvent a jour la position courante dans le morceau).

      La solution est d'utiliser la version gstreamer ou alors de convertir le ogg en mp3.

      Vincent
      • [^] # Re: Chouette

        Posté par  . Évalué à 2.

        Pourquoi ne pas fournir cette chanson avec UltraStar-NG si elle est librement redistribuable ?
        • [^] # Re: Chouette

          Posté par  . Évalué à 5.

          Le morceau est publiée sous license "Attribution Non-commercial No Derivatives" qui est incompatible avec les licenses Debian.
          Donc je ne voullais pas l'ainclure de base dans le même package (et en plus l'allourdir de 3Mo non necessaire).

          J'aurai pu choisir de faire un package a part, mais là encore pourquoi dupliquer les sources.

          Ensuite si quelqu'un fait rapidement le tar gz ...

          Vincent
          • [^] # Re: Chouette

            Posté par  . Évalué à 3.

            Il y a quelques musiques libres sur le site http://openmusic.linuxtag.org/ . leurs licences ont l'air conformes aux DFSG à première vue.

            Comme tu lançais l'idée d'un thème de Noël sur la mailing-list du projet pour la nouvelle version de fin d'année, ça pourrait être sympa de fournir une chanson de Noël.

            Il y a « Mon beau sapin » et « Jingle Bells » qui sont tombées dans le domaine public, les autres sont trop récentes ou peut-être trop orientées religion pour un projet de ce type.

            Reste à voir si c'est facile de les transformer pour Ultrastar-Ng, je vais voir ça.

            Sinon, je suis en train d'essayer de créer un thème de Noël, c'est amusant mais un peu galère. Il y a notamment un bug de rendu dans la 0.1.4 pour les textes avec gradient, ils s'affichent en opaque si le gradient est vertical. Pas de problème de rendu sous Inkscape, Sodipodi ou Firefox.

            Je n'ai pas réussi à compiler la 0.2.0 sous Debian/Sid, le ./configure me dit que le fichier ptr_map.hpp est manquant alors qu'il est bien présent. Pas de problème pour les autres headers boost détectés avant celui-là.
            • [^] # Re: Chouette

              Posté par  . Évalué à 2.

              Salut,

              Pour les license du lien je vais demander pour voir si c'est conforme aux DFSG, merci pour le lien.

              Une chanson de Noel ca peut etre sympa, en anglais ce serait sans doute même mieux. Le plus dur n'est pas de trouver des chansons mais plus des interprétations potables (si des gens connaissent des chorales qui pourraient faire des enregistrements libres (GPL par example)) je suis preneur. Ensuite il resterait plus qu'a faire les fichiers avec les notes (facil pour ce genre de chanson c'est disponible) et les paroles (facil aussi).

              Pour le bug de rendu cela peut provenir de 2 choses:
              - Si c'est dans un fichier de style background cela provient soit de librsvg ou de pango qui ne gere pas cet effet
              - Si c'est dans un fichier du type theme d'un text (comme les paroles) alors cela provient de notre implémentation (on gère un minimum de chose sur ce point la car la librsvg ne permet pas de faire des modifications de l'arbre svg en direct).

              Enfin concernant le bug de la 0.2.0 sous sid, Lasse à pointé un bug de package debian (visiblement libboost-dev devrait dépendre de libboost-serialization-dev ce qui n'est pas le cas). Il a reporté le problème ce matin sur la mailing liste.

              Merci pour tester le jeu et le feedback :)

              Vincent
  • # reutilisation de codes...

    Posté par  . Évalué à 7.

    Bravo pour le jeux tout ça, mais je croyais que la force du libre, c'était de pouvoir réutiliser du code.

    Je lis dans la news "réécriture de l'api du traitement de signal (FFT)". Si le principe de la fft est (relativement) simple, et que tout le monde peut implémenter un algo correct, avoir un algo vraiment très rapide, ça demande beaucoup de boulot. Travail qui est fait par "FFTW", qui est une bibliothèque libre (GPL), qui implémente la FFT de façon vraiment performante (www.fftw.org).

    Je trouve ça domage que du temps ai été perdu sur la FFT, (et apparemment des bugs introduits), alors qu'il existe cette bibliothèque. Sauf si les développeur voulait en apprendre un peu sur Fourier bien sur. Mais même dans ce cas, utiliser FFTW par la suite me semble une bonne idée...

    Encore une fois, je ne lance la pierre à personne, et merci pour le jeu, je signal juste que c'est domage de ne pas utiliser les outils libre existant, surtout quand ils sont très performant.
    • [^] # Re: reutilisation de codes...

      Posté par  . Évalué à 4.

      Salut,

      merci pour le commentaire.
      Concernant fftw, il était présent dans la précédente version (et utilisé depuis le début). Mais on peut dire que la librairie était trop complexe pour ce que l'on voulait en faire. Ainsi en passant de fftw a notre petite routine on a eu un gain de performance.

      Vincent
      • [^] # Re: reutilisation de codes...

        Posté par  . Évalué à 3.

        Merci pour la réponse claire :)

        De mon souvenir, fftw possede une fonction pour chacune des transformées (fourier, sinus, cosinus et d'autres), qu'est ce qui la rendait complexe ?
        Ou plutot, si c'est le fait de lier votre programme à cette librairie qui est cause de perte de performance (c'est vrai que la bibliothèque peut etre grosse, quand on fait juste appel à une petite transformée de fourier, sans être un soft de traitement de signal), ne serait il pas possible (simplement), de réutiliser la transformée de fftw directement ? (copier/coller le code en gros).

        Bon après, si le jeux n'a aucun problème de performance, ca ne vaut peut être pas le coup non plus.

        Bonne continuation
        • [^] # Re: reutilisation de codes...

          Posté par  . Évalué à 2.

          Il y a longtemps, j'avais utilisé une bibliothèque (trouvée sur Freshmeat) appelée kiss_fft. Super simple et amplement suffisant pour les petits projets. Hors fftw (qui peut s'apparenter à prendre un marteau-piqueur pour en foncer un clou) Il y a une raison pour ne pas avoir copié/collé d'autres libs plus simples comme celle-ci ?
          • [^] # Re: reutilisation de codes...

            Posté par  . Évalué à 1.

            En fait le but était d'incorporé cela dans le framework très orienté C++ de Lasse. Donc cette transformation utilise très amplement boost et la stl.

            Vincent
  • # Bravo !

    Posté par  . Évalué à 2.

    Sérieusement, c'est du bon travail !
    J'aime bien tout ces jeux musicaux (Stepmania, FretOnFire et UltraStarNG) et j'avoue que le travail ffectué par ultrastarNG est vraiment bon.
    Par contre pour les musiques, FretsOnfire a fait 2 packages sous debian : fretsonfire et fretsonfire-sectoid-songs (avec 4 musiques), C'est pas possible de faire la même chose en incluant a part 2 ou 3 musiques pour tester ?

    Bonne continuation à vous et merci pour ce jeu :)
    • [^] # Re: Bravo !

      Posté par  . Évalué à 1.

      Salut,

      Nous venons de mettre en ligne un package avec 2 morceaux. Le tout est disponible sur la page sourceforge du projet.

      Vincent
  • # Marche pas :(

    Posté par  (site web personnel, Mastodon) . Évalué à 2.

    Ca a l'air cool et je voulais essayer d'intégrer une chanson libre, mais :

    $ ultrastarng -c
    Using /usr/share/games/ultrastar-ng//songs as default songs directory
    ALSA lib pcm_dmix.c:803:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
    Cannot open audio device default: Argument invalide

    Sur debian etch/unstable. Même résultats sans -c, j'avais mis -c car le normal marchait pas. Si ça t'intéresse j'ai mis le strace ici : http://bohwaz.net/files/temp/ultralog.gz

    (15 mégas de log !)

    « Je vois bien à quels excès peut conduire une démocratie d'opinion débridée, je le vis tous les jours. » (Nicolas Sarkozy)

    • [^] # Re: Marche pas :(

      Posté par  . Évalué à 2.

      Au vu du message, ce n'est sans doute pas la dernière version d'UltraStar-NG (0.2.0) mais plus vraissemblablement une version 0.1.4 (je sais le site n'est pas encore a jour ;) ).
      Dans la nouvelle version ce genre de problème devrai etre reglé (par les options --cdev (comme capture device)).

      Vincent
  • # Rien sur le site officiel

    Posté par  (site web personnel) . Évalué à 0.

    J'aimerai bien tester ce jeu, mais le site officiel ne mentionne pas cette nouvelle version. Pour ma distrib (arch), j'ai trouvé un paquet non officiel (AUR) mais assez vieux. Malgré tout j'ai trouvé les sources de cette version 0.2.0 par jeuxlibres.net.

    Seulement voila je n'arrive pas à compiler, voila le message d'erreur :

    /usr/bin/ld: cannot find -lboost_thread
    collect2: ld returned 1 exit status
    make[2]: *** [libdausng.la] Error 1
    make[2]: Leaving directory `/home/nicoco/ultrastar/src/UltraStar-ng-0.2.0/audio'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/home/nicoco/ultrastar/src/UltraStar-ng-0.2.0'
    make: *** [all] Error 2

    Je ne comprends vraiment pas grand chose à tout ça alors si quelqu'un pouvait m'aider (sûrement quelque chose à mettre en argument pour le "configure" ?). Je me ferai un plaisir de mettre un PKGBUILD à jour sur AUR si j'arrive à tester ce jeu !

    Merci
  • # Version 0.2.1 dans les bacs

    Posté par  . Évalué à 1.

    Non, non, on ne se moque pas :) quelques bugs corrigés dans cette version.
    Le site à également été mis a jour pour pointer vers ce dernier tar.gz.

    Vincent

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.