Як я можу експортувати всі mp3-файли зі списку відтворення в Banshee?


13

У мене вся музика, несорті в / дома / бла / музика /. Це у випадкових папках, для мене це не має значення, оскільки Banshee піклується про все. У мене є великий список відтворення, який містить 2/3 моєї музики. Як я можу скопіювати всі файли mp3, перелічені у списку відтворення, у нову папку?

Примітка. Я не намагаюся експортувати список відтворення, але копіюю mp3, перелічені у списку відтворення.

Відповіді:


13

Я зробив це з ритмбоком, зробіть папку на робочому столі, дайте йому ім’я. тепер знайдіть список відтворення, який вам сподобався, коли в списку музики відображається натисніть на одну з пісень і утримуйте клавішу ctrl + сильне освітлення. Список перегорнути зараз перетягніть її в папку на робочому столі. це має зробити копію вашої музики. Ви також можете спробувати музичний плеєр Клементина, він має деякі інструменти, які допоможуть вам експортувати.

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


4
+1 Це також працює з Banshee.
Сабакон

1
Здогадайтесь, це не стає більш інтуїтивно зрозумілим. У Banshee ви можете створювати розумні списки відтворення, що дозволяє копіювати саме те, що ви хочете.
Негативна форма

Дякую, добре працюю, найкраще, що використовують сценарії (я багато шукав). Ти мій герой
Indacochea Wachín

15

Знайшов рішення, працює з будь-яким медіаплеєром.

  1. Експортуйте свій список відтворення у файл m3u. Я назвав його playlist.m3u

  2. Відкрийте термінал у папці, де ви зберегли файл.

  3. Скопіюйте та вставте це:

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

Не забудьте змінити шлях до потрібної папки виводу.

Примітка: Термінал не видасть жодного виводу під час копіювання файлів, будьте терплячі;)


1
Дивовижно! Я б хотів, щоб я міг поставити +1 цій тисячі разів.
Пратюш

Це найпростіший спосіб, якщо ваш гравець Banshee. Спасибі!
нитини

4

Добре запитання, це добре потрібна функція. Дивно, як так мало медіаплеєрів.

Ось метод, який ви можете спробувати, він може мати обмеження у вашому випадку, особливо якщо ваш список відтворення дуже великий, запишіть компакт-диск з даними на файли зі списку відтворення, збережіть отриманий .iso образ там, де ви хочете, а потім витягніть його.

Ось такі кроки:

  • Виберіть список відтворення зліва. Переконайтесь, що в правій верхній частині екрана вибрано всіх виконавців.

  • виберіть усі треки зі списку відтворення в правій нижній частині.

  • Клацніть правою кнопкою миші та натисніть Write CD.

Brasero повинен почати з усіх композицій, готових до запису на компакт-диск, він за замовчуванням захоче написати Написати аудіо компакт-диск, тепер, ймовірно, буде так багато треків, які, можливо, не вмістяться на аудіо компакт-диску, тому наступним кроком є ​​зміна проект brasero.

  • Клацніть меню проекту в розділі "brasero", а потім виберіть "New Data project" у меню "flyout".

Вам буде запропоновано "Ви хочете скасувати вибір файлу або додати його до нового проекту?"

  • Натисніть кнопку Зберегти файл вибору.

Тепер Brasero готовий написати зображення Iso з усіма файлами списку відтворення у будь-яке обране вами місце.

  • Клацніть кнопку запису в нижньому правому куті, виберіть своє місцезнаходження та назвіть ізо-зображення, процес запису буде досить швидким, оскільки не буде зроблено перекодування чи нормалізація.

  • Клацніть правою кнопкою миші зображення .iso і витягніть його, це створить папку з файлами.

Якщо ви хочете, ви можете продовжити і просто записати Cd як резервну копію або якщо вам потрібно надати копію комусь.

Дивіться скріншоти:

Головне вікно Banshee

Banshee написати меню компакт-дисків

Banshee написати меню компакт-дисків

Вікно проекту Brasero Audio CD

Проект Brasero Audio CD, змініть це на проект «Дані»

Вибір проекту Brasero

Меню Brasero показує, як змінити тип проекту

CD-проект Brasero data

Проект даних, який може обробляти неабияку кількість mp3-файлів


3

Дякуємо негативній формі за це чудове рішення! Я змінив це так, щоб файли перейменовували відповідно до їх місця в списку відтворення.

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

2

Я також залишу свій сценарій, оскільки хтось може бути корисним. 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 і не копіює пісні двічі при виконанні декількох разів. Сподіваюсь, це комусь допоможе =)


0

Ось сценарій, який я використовую для копіювання файлів з файлу /home/user/playlist.m3u у папку / home / user / export / до тих пір, поки ваші фактичні файли знаходяться в / home / user / Music / якщо не просто змінити один рядок у сценарії.

#!/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. Плюс banshee синхронізує мій андроїд дуже хаотично. Тож я майже мав використовувати це для перенесення Wi-Fi у свою експортну папку.


0

Я вдосконалив сценарій 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)

насолоджуйтесь!

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.