Youtube Music Shuffle-Funktion reparieren?

Die Zufallsmix (Shuffle) Funktion von YouTube Music ist, wohl oder übel, gekauft.

Der eigentliche Sinn einer Zufallsmix Funktion ist? - Ganz Genau! - Lieder zufällig wiedergeben.
Also eine Wiedergabeliste mit Liedern einer Playlist in zufälliger Reihenfolge erstellen.

Dummerweise hat YouTube Music Dies nicht ganz verstanden und bringt am Anfang immer die gleichen paar Songs. Auf den ersten Blick wirkt es zwar zufällig, ist es aber ganz und gar nicht. Würde mich ausserdem nicht wundern, wenn populäre Songs häufiger am Anfang stehen als andere.

Ich habe aber eine Playlist mit Liedern erstellt, die ich ALLE hören will. Jeder Song soll also die gleiche Chance haben.
Aufgrund dessen bin ich also nicht wirklich zufrieden mit dem Algorithmus von YouTube...Ist ja was ganz Neues...(haha)

In verschiedenen Foren gibt es Leute, die vom Gleichen berichten und bis jetzt keine Lösung gefunden haben. Ich weiss aber, dass es möglich ist eine Drittanbieter-Software von YouTube Music zu erstellen. Und ich bin mir sicher, dass man dort einen anderen Algorithmus für die Shuffle Funktion einbetten könnte...

Meine Frage ist also, ob sich jemand schon einmal damit auseinandergesetzt hat und da irgendetwas kennt?
Ideal wäre dabei eine Android-App, da ich dort am meisten Musik höre. Zu PC-Softwares sag ich aber nicht nein.

Aufgrund meiner grossen Playlist und den eher unbekannten Songs, ist es mir nicht möglich auf Spotify zu wechseln. Jede "Spotify-Antwort" wird also gekonnt ignoriert.

Danke also im Voraus für jede hilfreiche Antwort.

LG Lubi ^^

Bild zum Beitrag
Computer, Musik, Internet, Windows, YouTube, programmieren, shuffle, Android
Angular: Wieso wird Component zweimal aufgerufen?

Hi,

ich bin gerade dabei in Angular eine kleine Webseite zu erstellen. Einfach Just for Fun.

Kurz meine Components + Quellcode.

app-component.html

<app-toolbar></app-toolbar>


<router-outlet></router-outlet>

toolbar.component.html

<div class="head" style="background-color: darkgreen;">
    <div class="box">
            <button class="selectionButton" routerLink="/startseite">
                <div class="menuButton"></div>
                <div class="menuButton"></div>
                <div class="menuButton"></div>
            </button>
    </div>
    <div class="box"></div>
    <div class="box"></div>
    <div class="box">
        <button class="selectionButton">
            <font size="5">TypeScript</font>
        </button>    
    </div>
    <div class="box">
        <button class="selectionButton">
            <font size="5">Java</font>
        </button>    
    </div>
    <div class="box">
        <button class="selectionButton" routerLink="/htmluebersicht">
            <font size="5">HTML</font>
        </button>    
    </div>
    <div class="box">
        <button class="selectionButton">
            <font size="5">Cypress</font>
        </button>
    </div>
</div>

html-page.component.html

<p>html-page works!</p>

Wenn ich jetzt auf den Button HTML ("/htmluebersicht") klicke, kommt der Text "html-page works!" .... Alles gut, so solls.
Wenn ich jetzt aber wieder auf den Menü Button ("/startseite") klicke wird meine toolbar.component.html irgendwie zweimal auf der Webseite angezeigt.

Weis jemand wieso die toolbar dann zweimal angezeigt wird?

Ich hoffe es ist verständlich was ich meine.

Computer, Programm, HTML, Webseite, programmieren, Frontend, TypeScript, Angular
Speicherung von Variablen in Python, Expertenfrage?

Eine Frage zu dem Übergeben, bzw. Verknüpfen von Variablen.

Gibt es in Python etwas sowas wie Pointer, die nicht für den Nutzer verfügbar sind sondern nur innertechnisch existieren?

Das Problem: ich habe eine Objekt1 wo eine Position einer von einem anderen Objekt2, aber gleiche Klasse, übergeben wird (nur im __init__) und diese Variable in dem Obejekt1 gespeichert wird. Ich zeichne dann aus den beiden Objekten einen Punkt anhand der gespeicherten Positions-Vektoren. Nun das Problem: wenn ich die Variable des Objekt2 "ändere", "ändert" sich auch der Wert des Objekt1 obwohl ich den übergebenen Positionswert NIE mehr aktualisiert habe, somit überschneiden sich die beiden Punkte...

Nun das kuriose: wenn ich bei der Übergabe der Positionsvariable vom Objekt2 zu Objekt1 bei der SPeicherung nicht self.pos = pos SONDERN self.pos = pos+pygame.math.Vector2(0,0) sage, ändert sich dafür der Positionswert des Objekt1 NICHT MEHR... Genau das will ich ja.

Nun meine Theorie warum das so sein könnte... Wen ich self.pos = pos sage speichere ich die Speicheradresse von der Variable des Objekt2, ich referiere quasi darauf. Immer wenn er die Variable im Objekt1 braucht geht er zur Speicheradresse und zieht die Variable aus dem RAM raus. Wenn ich aber self.pos = pos+pygame.math.Vector2(0,0) sage, erzwinge ich durch +pygame.math.Vector2(0,0), dass er die Variabel speichert und nicht nur die Speicheradresse...

Ist meine Thorie richtig? Wenn ja, gibt es noch andere Wege nicht nur die Speicheradresse sondern den Variablen Wert zu speichern?

Danke an jeden der sich das durchgelesen hat xD

LG

Computer, Technik, programmieren, Informatik, Python, Technologie, Python 3
Spigot/Java ein value aus einer HachMap löschen?

Hallo ich versuche mal den code zusammenzufassen:

HashMaps:

public static HashMap<UUID, Chunk> map = new HashMap();
public static HashMap<UUID, Chunk> mapCreator = new HashMap();

Spieler:

Player player = (Player) sender;
UUID playerUUID = player.getUniqueId();

Zum erstellen der Stadt:

if (args[0].equalsIgnoreCase("create")) {
    if (!(Main.mapCreator.containsKey(playerBOSS)) && !(Main.map.containsKey(playerBOSS))) {
        if (args.length == 1) {
            Chunk town = player.getLocation().getChunk();
            Main.mapCreator.put(playerBOSS, town);
            Main.map.put(playerBOSS, town);
            player.sendMessage("Du hast eine Stadt erstellt!");
        }

dann kann man jemanden einladen und dann kann der mit /town accept annehmen

und wird mit:

Main.map.put(playerUUID, town);

hinzugefügt.

Und jetzt will ich das ich die Stadt löschen kann und nur der der auch die stadt erstellt hat, also jemand der in der map mapCreator ist und das value von dem key (seine UUID) gleich dem Chunk entspricht in dessen value der ist also sowas wie:

if (Main.map.get(playerUUID) == town) das habe ich auch so aufgeschrieben

so das er halt die town "meint" in dessen map/value der ist.

Ich bin mir nicht sicher ob das klappt aber jetzt kommt erst mein richtiges problem...

Wenn mehrere in meiner town sind gibt es ja mehrere keys zu einem value und die muss ich ja irgendwie auflisten können um sie alle auf einmal zu löschen, weil dann das value nicht mehr exestert ODER gibt es eine möglichkeit ein value aus einer hashmap zu löschen? im internett habe ich sowas wie: for (Map.Entry<UUID, Chunk> entry : Main.map.entrySet()) {
    UUID k = entry.getKey();
    Chunk v = entry.getValue();
    System.out.println("Key: " + k + ", Value: " + v);
    Main.map.remove(k);
}
Main.map.forEach((k, v) -> {
    System.out.println("Key: " + k + ", Value: " + v);
    Main.map.remove(k);
});

gefunden aber da kamen fehlercodes und es hat ncht wirklich funktioniert...

Kann mir jemand sagen wie ich den delete teil machen kann?

Computer, Technik, programmieren, Java, Minecraft, Technologie, Spiele und Gaming

Meistgelesene Beiträge zum Thema Programmieren