Question

je besoin d'un algorithme « lecture aléatoire des albums » pour mon lecteur audio comme dans foobar2k. Le problème est: J'ai une liste de pistes, triées selon certains critères afin que les pistes avec la même album sont tous adjacents. Maintenant, je dois pouvoir jouer des chansons de la liste de lecture en mode « lecture aléatoire des albums », qui est, si la piste suivante est du même album, il suffit de jouer, sinon, allez à la première piste d'un prochain album au hasard. Si l'utilisateur veut lire la piste précédente, faire la même chose mais à l'envers. La question est donc: comment puis-je savoir ce que l'album précédent était? Je ne veux pas garder un historique des albums joué, ou garder une liste séparée.

À l'heure actuelle, je mets en œuvre le mode de lecture aléatoire régulière en donnant à chaque piste indice de lecture aléatoire au hasard, afin que je puisse trouver précédent et suivant les pistes en trouvant des pistes avec le plus grand indice de lecture aléatoire plus petit que le courant et l'indice de lecture aléatoire plus petit plus grand que courant. Mais cela ne fonctionne pas pour le mode Lecture aléatoire des albums. aider quelqu'un peut me avec cela?

entrée de l'échantillon:

Track 1, Album A
Track 2, Album A
Track 1, Album B
Track 2, Album B
Track 3, Album B
Track 1, Album C
Track 2, Album C
Track 3, Album C

dire la piste en cours Let est la voie 1, album A. Piste suivante sera la piste 2, Album A. Piste suivante est pas du même album, donc une première piste d'un album au hasard doit être choisi, disons, Piste 1 , album C. ce que je fais est maintenant le choix piste suivante comme si elle était en mode de lecture aléatoire régulière, puis aller à la première piste de son album, perdant ainsi des informations d'où je suis venu à cet album. Ainsi, lorsque l'utilisateur veut aller à l'album précédent, je n'ai aucune information comment je suis arrivé là-bas. L'espoir qui fait la question plus claire.

Merci.

Était-ce utile?

La solution

Vous pouvez réutiliser votre technique d'index lecture aléatoire des albums d'index. Maintenant, un index de piste est un (album index de lecture aléatoire, piste pos) paire. Pour vous déplacer, augmenter / diminuer la piste pos; si elle sort des limites, mettez à jour l'index de l'album.

Cela dit, vous devriez reconsidérer ne pas garder une histoire; il vous permettra de revenir en arrière beaucoup plus rapidement avec un grand nombre d'albums.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top