回答:
私はこれをrhythmboxで行い、デスクトップ上のフォルダーに名前を付けます。音楽リストが曲の1つをクリックし、Ctrlキーを押しながらホールリストをハイライト表示したら、好きなプレイリストを見つけて、デスクトップのフォルダーにドラッグアンドドロップします。これにより、音楽のコピーが作成されます。クレメンタインミュージックプレーヤーを試すこともできます。これには、エクスポートに役立つツールがいくつかあります。
ソリューションを見つけ、あらゆるメディアプレーヤーで動作します。
プレイリストをm3uファイルにエクスポートします。プレイリストと呼びました。m3u
ファイルを保存したフォルダーでターミナルを開きます。
これをコピーして貼り付けます:
sed "s/#.*//g" < playlist.m3u | sed "/^$/d" | while read line; do cp "${line}" '/path/to/output/folder/'; done
目的の出力フォルダーへのパスを忘れずに変更してください。
注:ターミナルは、ファイルがコピーされている間は何も出力しません。ただ我慢してください;)
良い質問です。これは非常に必要な機能です。メディアプレーヤーがほとんどないのは奇妙です。
ここに試すことができる方法があります。特にプレイリストが非常に大きい場合は制限があり、プレイリストのファイルを使用してデータCDをディスクに書き込み、結果の.isoイメージを必要な場所に保存してから抽出します。
手順は次のとおりです。
左側でプレイリストを選択します。右上のペインですべてのアーティストが選択されていることを確認してください。
右下のペインでプレイリストのすべてのトラックを選択します。
右クリックして、[CDに書き込む]をクリックします。
Braseroは、すべてのトラックをCDに書き込む準備ができた状態で開始する必要があります。デフォルトでは、オーディオCDを書き込みたいと思うでしょう。 braseroプロジェクト。
「ファイルの選択を破棄するか、新しいプロジェクトに追加しますか?」と尋ねられます。
Braseroは、プレイリストのすべてのファイルを含むIsoイメージを任意の場所に書き込む準備ができました。
右下の書き込みボタンをクリックして、場所を選択し、isoイメージに名前を付けます。トランスコーディングまたは正規化が行われないため、書き込みプロセスはかなり高速になります。
.isoイメージを右クリックして展開すると、ファイルを含むフォルダーが作成されます。
希望する場合は、バックアップとしてCdを焼くか、誰かにコピーを渡す必要がある場合に進みます。
スクリーンショットを見る:
Banshee書き込みCDメニュー
Brasero Audio CDプロジェクト、これをデータプロジェクトに変更
プロジェクトタイプの変更方法を示すBraseroメニュー
かなりの量のmp3を処理できるデータプロジェクト
また、スクリプトは誰かの役に立つかもしれないので、そのままにします。 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)
これは純粋なPythonであり、複数回実行しても曲を2回コピーしません。これが誰かを助けることを願っています=)
ここで私はからファイルをコピーするために使用するスクリプトです/home/user/playlist.m3uのにファイル/ホーム/ユーザー/エクスポート/長いあなたの実際のファイルがそうであるようにとフォルダは、中/ホーム/ユーザー/音楽/だけで変更しない場合スクリプトの1行。
#!/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;
bansheeエントリをフォルダにドラッグすることとの違いは、このスクリプトが/artists/albums/track.mp3の階層または作成したm3uプレイリストを正確に反映する必要がある階層を保持することです。したがって、この方法では複製は不可能であり、すべてのトラックは以前の場所にあります。
私の携帯電話にはMTPしかなく、Ubuntuでは少しかすんでいるので、これを作りました。さらに、バンシーは私のアンドロイドを非常に無秩序に同期します。だから私はほとんどこれを使用してエクスポートフォルダを無線LANで転送する必要があります。
ユーザーが指定したpythonスクリプト「АрсенийПичугин」を改善して、ファイルを新しい場所にコピーするときにディレクトリ構造が保持されるようにしました。これにより、.m3uファイルと対象の音楽ファイルを新しいデバイスにコピーできます。リンクが破損することはないため、mp3プレーヤーや電話のようにプレイリストは実際に再生されます。スクリプトは、音楽ファイルが見つかり、.m3uファイルが存在する最上位フォルダーにあると想定しています。
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)
楽しい!