Wie kann ich alle MP3s aus einer Wiedergabeliste in Banshee exportieren?


13

Ich habe alle meine Musik, unsortiert in / home / blah / Music /. Es befindet sich in zufälligen Ordnern, was für mich jedoch keine Rolle spielt, da Banshee sich um alles kümmert. Ich habe eine große Wiedergabeliste mit gut 2/3 meiner Musik. Wie kann ich alle in der Wiedergabeliste aufgeführten MP3-Dateien in einen neuen Ordner kopieren?

Hinweis: Ich versuche nicht, eine Wiedergabeliste zu exportieren, sondern kopiere die in der Wiedergabeliste aufgeführten MP3s.

Antworten:


13

Ich habe das mit der Rhythmbox gemacht, mache einen Ordner auf deinem Desktop und gib ihm einen Namen. Suchen Sie jetzt die Wiedergabeliste, die Ihnen gefällt, wenn die Musikliste angezeigt wird. Klicken Sie auf einen der Titel und halten Sie die Strg-Taste gedrückt. Dies sollte eine Kopie Ihrer Musik machen. Sie können auch versuchen, Clementine Music Player es hat einige Tools, die Ihnen beim Export helfen.

http://www.clementine-player.org/


4
+1 Dies funktioniert auch mit Banshee.
Sabacon

1
Schätze, intuitiver geht es nicht. In Banshee können Sie intelligente Wiedergabelisten erstellen, mit denen Sie genau das kopieren können, was Sie möchten.
Die negative Form

Danke, funktioniert gut, am besten mit Skripten (ich habe viele gesucht). Du bist mein Held
Indacochea Wachín

15

Die Lösung gefunden, funktioniert mit jedem Media Player.

  1. Exportieren Sie Ihre Wiedergabeliste in eine M3U-Datei. Ich habe es playlist.m3u genannt

  2. Öffnen Sie ein Terminal in dem Ordner, in dem Sie die Datei gespeichert haben.

  3. Kopieren und einfügen:

    sed "s/#.*//g" < playlist.m3u | sed "/^$/d" | while read line; do cp "${line}" '/path/to/output/folder/'; done
    

Denken Sie daran, den Pfad zu Ihrem gewünschten Ausgabeordner zu ändern.

Hinweis: Das Terminal gibt während des Kopierens der Dateien keine Ausgabe aus, bitte haben Sie etwas Geduld.


1
Genial! Ich wünschte, ich könnte es tausendmal +1 geben.
Pratyush

Dies ist der einfachste Weg, wenn Ihr Spieler Banshee. Vielen Dank!
Nitins

4

Gute Frage, dies ist ein dringend benötigtes Feature. Es ist seltsam, wie wenige Media Player es haben.

Hier ist eine Methode, die Sie ausprobieren können. Es kann in Ihrem Fall Einschränkungen geben, insbesondere wenn Ihre Wiedergabeliste sehr groß ist. Schreiben Sie eine Daten-CD mit den Dateien aus der Wiedergabeliste, speichern Sie das resultierende ISO-Image an der gewünschten Stelle und extrahieren Sie es dann.

Hier sind die Schritte:

  • Wählen Sie links Ihre Wiedergabeliste aus. Vergewissern Sie sich, dass oben rechts alle Interpreten ausgewählt sind.

  • Wählen Sie alle Titel in der Wiedergabeliste unten rechts aus.

  • Klicken Sie mit der rechten Maustaste und wählen Sie CD schreiben.

Brasero sollte mit allen Titeln beginnen, die zum Brennen auf CD bereit sind. Standardmäßig soll eine Audio-CD geschrieben werden. Jetzt gibt es wahrscheinlich so viele Titel, die möglicherweise nicht auf eine Audio-CD passen. Der nächste Schritt besteht darin, die zu ändern Brasero-Projekt.

  • Klicken Sie in brasero auf das Projektmenü und wählen Sie im Flyout-Menü die Option Neues Datenprojekt.

Sie werden gefragt, ob Sie die Dateiauswahl verwerfen oder dem neuen Projekt hinzufügen möchten.

  • Klicken Sie auf die Schaltfläche Dateiauswahl beibehalten.

Brasero ist jetzt bereit, ein ISO-Bild mit allen Dateien Ihrer Wiedergabeliste an einen beliebigen Ort zu schreiben.

  • Klicken Sie auf die Schaltfläche zum Brennen unten rechts, wählen Sie Ihren Speicherort und benennen Sie das ISO-Image. Der Schreibvorgang ist relativ schnell, da keine Transcodierung oder Normalisierung durchgeführt wird.

  • Klicken Sie mit der rechten Maustaste auf das ISO-Image und extrahieren Sie es. Dadurch wird ein Ordner mit den Dateien erstellt.

Wenn Sie möchten, können Sie einfach die CD als Backup brennen oder jemandem eine Kopie geben.

Siehe Screenshots:

Hauptfenster der Todesfee

Banshee CD-Menü schreiben

Banshee CD-Menü schreiben

Brasero Audio CD Projektfenster

Brasero Audio CD-Projekt, Ändern Sie dies in ein Datenprojekt

Brasero Projektauswahl

Die Brasero-Menüs zeigen, wie der Projekttyp geändert wird

Brasero Daten-CD-Projekt

Das Datenprojekt, das eine ganze Menge MP3s verarbeiten kann


3

Danke The Negative Shape für diese großartige Lösung! Ich habe es so geändert, dass Dateien entsprechend ihrer Position in der Wiedergabeliste umbenannt werden.

sed "s/#.*//g" < playlist.m3u | sed "/^$/d" | while read line; do (( COUNTER++ )); filename="${line##*/}"; cp "${line}" "/path/to/output/folder/$COUNTER - $filename"; done

2

Ich werde mein Skript auch verlassen, da es für jemanden nützlich sein kann. https://gist.github.com/CRImier/9777606

import os
import shutil

directory_name = "playlist/"
playlist_name = "playlist.m3u"

f = open(playlist_name, "r")
files = []
for line in f:
    line = line.strip().strip("\n").strip("\r")
    if line and not line.startswith("#"):
        files.append(line)
dir_contents = os.listdir(directory_name)
for file in files:
    try:
        filename = os.path.basename(file)
        if filename not in dir_contents:
            shutil.copy(file, "playlist/")
            print filename
        else:
            print ".", #File already there
    except Exception as e:
        print str(e)

Es ist reines Python und kopiert Songs nicht zweimal, wenn sie mehrmals ausgeführt werden. Hoffe das hilft jemandem =)


0

Hier ist ein Skript , das ich Dateien aus dem kopieren verwenden /home/user/playlist.m3u - Datei in das Verzeichnis / home / user / export / Ordner, solange Ihre aktuellen Dateien sind in / home / user / Musik / wenn nicht nur die ändern eine Zeile im Skript.

#!/bin/bash
m3u=$(sed /#.*/d "/home/user/playlist.m3u"|sed 's/\.\.\/\.\./\/home\/user/g');

echo "$m3u" | while read line; do
    newFile=$(echo $line| sed 's/\/home\/user\/Music\//\/home\/user\/export\//');
    newPath=$(echo "$newFile" | grep -o .*\\/);

    mkdir -p "$newPath";
    cp "$line" "$newFile";  
done;
exit 0;

Der Unterschied beim Ziehen von Banshee-Einträgen in einen Ordner besteht darin, dass dieses Skript die Hierarchie Ihrer Datei /artists/albums/track.mp3 oder eine beliebige Hierarchie beibehält, die genau der von Ihnen erstellten m3u-Wiedergabeliste entsprechen muss. Auf diese Weise sind keine Duplikate möglich und jeder Track befindet sich an seiner früheren Stelle.

Ich habe das gemacht, weil mein Telefon nur MTP hat und es unter Ubuntu etwas trüb ist. Plus Banshee wird mein Android sehr chaotisch synchronisieren. Ich MUSS das also fast benutzen, um meinen Exportordner per WLAN zu übertragen.


0

Ich habe das vom Benutzer angegebene Python-Skript "Арсений Пичугин" verbessert, damit die Verzeichnisstruktur beim Kopieren von Dateien an einen neuen Speicherort erhalten bleibt. Auf diese Weise können Sie die .m3u-Datei und die Zielmusikdateien auf ein neues Gerät kopieren, und die Verknüpfungen werden nicht unterbrochen, sodass die Wiedergabeliste tatsächlich wie auf Ihrem MP3-Player oder Telefon wiedergegeben wird. Das Skript geht davon aus, dass es sich in dem Ordner der obersten Ebene befindet, in dem sich die Musikdateien befinden und in dem sich die .m3u-Datei befindet.

import os
import shutil

#here, add the name of the dir where the playlist files will be copied
directory_name = "/home/username/Desktop/Music/"
playlist_name = "Test_Favorites.m3u"

f = open(playlist_name, "r")
files = []
for line in f:
    line = line.strip().strip("\n").strip("\r")
    if line and not line.startswith("#"):
        files.append(line)
dir_contents = os.listdir(directory_name)
#print dir_contents
for file in files:
    try:
        filename = os.path.basename(file)
        filepath = os.path.dirname(file)
        newpath = directory_name + "" + filepath
        newname = newpath + "/" + filename
        if os.path.exists(newname):
          print filename + " already existed, not copied."
        else:
          if not os.path.exists(newpath):
            os.makedirs(newpath)
          shutil.copy(file,newpath)
          print newname
    except Exception as e:
        print str(e)

genießen!

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.