Tutoriel
Sing Linkin Park 2.0C 002

Ajoutez vos propres musiques à l'homebrew Sing!

par

Blakred vient de publier son tutoriel permettant d'ajouter ses propres MP3 à l'homebrew Sing! qui se nommait au départ Sing LinkinPark!.

Nous entrons désormais dans le monde de la logique et des mathématiques présentes dans un code source. Votre but sera de créer un timer (compteur en français). Pour faire simple, un timer est une variable (un nombre qui peut varier) qui change de valeur régulièrement à intervalle régulier par l'intermédiaire d'une boucle.

Examinons de nouveau les lignes 25 à 29 :

if currentTime > 0 and currentTime < 0 then
         screen:fontPrint(font,10,130,"PAROLES ICI",bleu)
    end
    -- Mettez les autres paroles ici                        #voir le tuto#

La variable currentTime est en réalité le timer. Celui-ci sert donc à se placer à un moment de la musique en se situant en fonction de sa valeur. (exemple : 2390). Les 2 nombres annotés par un zéro sont les valeurs du moment à afficher une certaine parole.

Admettons que la parole "PSPGen est là pour vous" soit chantée de 1 min 40 sec à 1 min 43 sec. Afin de vous situer dans la musique, il vous faudra donc marquer le temps du début de la parole et le moment où la parole se termine. Mais cela ne s'arrête pas là. Il faut maintenant convertir la valeur en minutes et secondes par la valeur du compteur. Cette conversion se fait de cette façon (le signe * signifie multiplié par) :

NombreDeMinutes * 60 + NombreDeSecondes * 1000 = ValeurTempsPourLeCompteur

Exemples :

1 min * 60 + 40 sec * 1000 = 100 000

1 min * 60 + 43 sec * 1000 = 103 000

0 min * 60 + 25 sec * 1000 = 25 000

Donc pour placer la parole "PSPGen est là pour vous" d'1 min 40 à 1 min 43 il faut écrire :

if currentTime > 100 000 and currentTime < 103 000 then
         screen:fontPrint(font,10,130,"PSPGen est là pour vous",bleu)
end

Faites cette opération autant de fois que nécessaire, afin de finir toutes les paroles de votre musique. Conseil : sauvegardez régulièrement.

screen tuto sing

Fin de la musique

Le programme ne sait pas exactement quand le musique se finit. Pour lui dire de s'arrêter, il faut faire le même calcul que les valeurs précédentes. La ligne chargée d'informer le programme est la suivante, ligne 29 :

if currentTime > 186000 then

Remplacer le 186000 par la valeur du temps convertie. Exemple pour une musique de 2 min 35 :

if currentTime > 155000 then

 En résumé voici les étapes à suivre :

  • Trouver le moment où débute et finit une parole
  • Convertir ces 2 valeurs à l'aide de la formule citée ci-dessus
  • Retranscrire sur le code les valeurs ainsi que la parole

Comment tester son projet ?

  • Etant donné que l'homebrew est pré-configuré pour jouer la musique Numb de Linkin Park, il va falloir bien évidemment modifier le code général du programme
  • Connectez votre PSP en USB grâce à l'option "Connexion USB"
  • Rendez-vous dans ms0:/PSP/GAME/Sing ! et ouvrez le fichier Script.lua à l'aide de Notepad++
  • Renommez le fichier karaoké.lua en ce que vous voulez (le titre de la musique par exemple). Le nom doit être de préférence avec une majuscule au début
  • Rendez-vous à la ligne 54 du fichier Script.lua et remplacez Numb.lua par le titre de votre fichier karaoké créé
  • Placez votre musique dans ms0:/PSP/GAME/Sing!/musiques
  • Cette fois placez-vous dans le fichier de votre karaoké et à la ligne 8 remplacez Numb.mp3 par le nom de votre musique AU FORMAT MP3. (Par exemple : Mp3me.load("musiques/Musique.mp3"))

notepad++ karaoké

Si vous avez réussi à tout faire sans encombre, sachez que le travail est quasiment fini. Pour ceux qui auraient rencontré quelques problèmes, n'hésitez pas à relire le tout. Dans la dernière partie nous verrons la finalisation de votre projet.

Commenter 15 commentaires

Avatar de l’utilisateur
Malaky
intellomanamort Wrote:Merci. Cela permet pas vraiment à apprendre, mais à commencer, voir, comprendre, découvrir, créer un peu aussi... parfait pour un début !

Aussi c'est blakred et pas blackred

lol desolé il et tard
Signaler Citer