BansheeからRhythmboxに移行する方法は?


13

決定されたとおり、Ubuntu Precise 12.04はデフォルトの音楽プレーヤーとしてRhythmboxを搭載しています。私は、Bansheeを使用できないという意味ではないことを承知していますが、Bansheeに切り替えたいと思います。

私は長い間Rhythmboxのファンでしたが、Nattyで Bansheeに切り替えた後、試してみることにし、完全に移行しました。しかし、私はそれにはあまり満足していません、それは私にとってかなり遅れており、いくつかの他の問題があります。

すべてのBansheeデータをRhythmboxエクスポートします。以下が含まれます。

  • 音楽ライブラリ
  • プレイリスト
  • できればプレイカウントと評価
  • ラジオ局
  • カバー写真

このすべてのデータをRhythmboxに移動し、デフォルトの音楽プレーヤーとして機能させ、スムーズに完全に切り替えるにはどうすればよいですか?

回答:


12

Banshee 2.3.3 / Rhythmbox 2.95に適用される2セント:

  1. 音楽ライブラリ:ミュージックフォルダをRhythmboxに指定するだけでインポートされます
  2. プレイリスト
    • 動的プレイリスト:私が知る限り、それらを再作成する必要があります。面白くありません。各プレーヤーの機能セットが異なるため、さらに複雑になります。
    • 静的プレイリスト:Bansheeで.m3uとしてエクスポートし、Rhythmboxで再インポートするだけです
  3. プレイカウントと評価
    • プレイカウント:わかりません
    • 評価:各星の動的プレイリストを作成します(つまり、「rating1、rating2、rating3、rating4、rating5」動的プレイリストを作成し、.m3uとしてエクスポートし、Rhythmboxにインポートします。両方のプレイヤーがファイル名を使用してテストしました。 〜に関連するため、大丈夫です。
    • 両方の解決策の1つは、#538549-評価にID3v2 Popularimeterを使用することです(おそらく再生回数)
  4. ラジオ局:わからない
  5. カバー写真:「移行」オプションではありませんが、Rhythmbox 2.9x / 3はカバーアートの処理においてより良い仕事をします。Cover ArtCover Art Searchプラグインを有効にして試してくださいEdit / Plugins。私の場合(フォルダーに.jpgとして、またはID3として保存されたカバーアート)、それらは正常に認識されます

お役に立てば幸いです!幸運を :)


@rafalcieslakようこそ:)。私もRhythmboxが大好きで、2.95は本当に勇気づけられる前進です!
ローナンジュシェ

これはひどい。プレイリスト、再生回数、カバーアートなどの簡単なインポート/エクスポートはできません。私が理解しているように、アップグレードするとbanshee が削除されるため、12.04への更新がブロックされます。したがって、アップグレードでは上記のすべてが失われます。また、bansheeにはプレイリスト(複数)エクスポート機能がないことにも気付きました。各プレイリストを個別にエクスポートする必要があります!最初にbansheeをダンプして、rhythmboxを使用する必要がありました。(v11.10でUbuntuを始めました)
ジェラルドロシュ

@BullfrogBlues:あなたは間違っています。12.04にアップグレードしてもBanshee 削除されないため、続行しても安全です!:)また、Bansheeを削除した場合でも、再インストール後はすべてのデータがそのまま残ります。すごいですね。とにかく、12.04でもBansheeを使い続けることができます。現在の音楽プレーヤーをお望みであれば、Rhythmboxに移動する必要はありません。では、12.04にアップグレードしてください!
ラファウチェーラク

私はバンシーが好きではありません。私はすでにアップグレードを試みましたが、特定のパッケージを削除するように促されましたが、bansheeはその中にありました。さて、プロンプトメッセージを誤解したかもしれませんが、bansheeは12.04でサポートされているパッケージではないため削除されると言っていました。いずれにせよ、アップグレードを進める自信はありませんでした。ただし~/username/.config/banshee-1/*、banshee dbを含むbanshee configファイルは、アップグレード中およびインストール中に問題ないはずです。
ジェラルドロシュ

@rafalcieslak FYI一部のアプリケーションがされて削除、バンシーはそのうちの一つですaskubuntu.com/questions/111163/...
ジェラルド・ロシュ

3

Rhythmboxは-バンシー・インポート・スクリプトは移行されます再生回数評価を。@xiphosurusに感謝します。ただし、スクリプトを機能させるには、bansheeデータベースとrhythmboxデータベースの場所を指定する必要があります。

スクリプトを準備する

rhythmboxおよびbanshee dbファイルを見つけます。デフォルトの場所は次のとおりです。

/home/YOUR_USERNAME/.local/share/rhythmbox/rhythmdb.xml
/home/YOUR_USERNAME/.config/banshee-1/banshee.db

それらをバックアップしてください!もう一度言います。バックアップを作成します。

次に、banshee.dbファイルをrhythmbox-banshee-importスクリプトと同じフォルダーにコピーします。そして、次の行にあるrhythmbox-banshee-importスクリプトを変更します。

RB_DB = 'rhythmdb.xml'

path / to / your / rhythmboxdb.xmlファイルを挿入します。例:

RB_DB = '/home/YOUR_USERNAME/.local/share/rhythmbox/rhythmdb.xml'

スクリプトを実行すると、すべての再生カウントとプレイリストが更新されます。

トラブルシューティング

  • lxmlというモジュールはありません

    エラー... ImportError: No module named lxml ...が発生した場合は、Python Xml Parsersインストールする必要があります。

    sudo apt-get install python-lxml
    
  • アクセス拒否

    「Permission denied」と表示される場合、他のユーザーのディレクトリにあるファイルにアクセスするための十分なアクセス許可がないか、ファイルが実行可能でないためです。実行可能にするには、次を実行します。

    chmod +x /path/to/your/rhythmbox-banshee-import-script
    

付録

rhythmbox-banshee-importスクリプト
#!/usr/bin/python

"""
Copyright (c) 2009 Wolfgang Steitz

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA

"""

import sys
import sqlite3
from lxml import etree

RB_DB = 'rhythmdb.xml'
BA_DB = 'banshee.db'

class banshee_db():
    def __init__(self, file):
        self.con = sqlite3.connect(file)

    def get_song_info(self, url):
        try:
            res = self.con.execute('select Rating, Playcount from CoreTracks where uri = ?', (url,) ).fetchone()
            if res is None:
                return None, None
            else:
                return res
        except:
            return None, None


banshee = banshee_db(BA_DB)

tree = etree.parse(RB_DB)
root = tree.getroot()
for song in root:
    if song.get("type") == 'song':
        rating = None
        playcount = None
        for attr in song:
            if attr.tag == 'location':
                location = attr.text
            if attr.tag == 'rating':
                rating = attr.text
            if attr.tag == 'play-count':
                playcount = int(attr.text)
                song.remove(attr)

        rating_banshee, playcount_banshee = banshee.get_song_info(location)
        if rating is None:# noch kein rating in db
            if not (rating_banshee == 0 or rating_banshee is None):
                rating = rating_banshee

        if not (playcount_banshee == 0 or playcount_banshee is None):
            if playcount is None:
                playcount = playcount_banshee
            else:
                playcount += playcount_banshee

        #insert rating into rb db
        if rating is not None:
            element = etree.Element('rating')
            element.text = str(rating)
            song.append( element)
        #update playcount
        if playcount is not None:
            element = etree.Element('play-count')
            element.text = str(playcount)
            song.append( element)


tree.write(RB_DB)

2

評価と再生回数をインポートするには、このスクリプトを使用してください!私のために働いた!

http://code.google.com/p/rhythmbox-banshee-import/


コードを見たとき、これに大きな期待がありましたが、残念ながらエラーが発生しましたImportError: No module named lxml。これに対する解決策apt-get install lxmlが幸せな日々と同じくらい簡単であれば、インストールガイドlxml.de/installation.htmlがあります。私が実際にインストールまたは実行していることの手がかりがない場合、物をインストールするのは好きではありません。多くの場合です。私は何をしているのか分からないことがよくあります。
ジェラルドロシュ

1

RhythmboxとBansheeの詳細をまだ調査していない一般的なアイデア:

  1. 音楽データベースのインポートは、Rhythmboxですべてのファイルを再度スキャンするのと同じくらい簡単です。

  2. プレイカウントと評価をオーディオファイルのタグに保存するようにBansheeを構成し、RhythmboxがBanshee評価のインポートをサポートしている場合(多くのアプリは、音楽プレーヤー間で変換しやすい、または変換せずに動作する「標準化」形式で評価を保存します) 、そしてBansheeがそれをサポートしていることは知っていますが、Rhythmboxがサポートしているかどうかはわかりません)、それらは再スキャンでも問題になりません。

  3. 多くの場合、カバー画像は音楽ファイルと一緒に保存され、再スキャンでも検出されます。Bansheeがカバーを他の場所にも保管しているかどうかはわかりませんか?

  4. Bansheeは、Rhythmboxがインポートできるいくつかの標準プレイリスト形式(.m3u / .plsファイルなど)にプレイリストをエクスポートできると思いますか?


RhythmboxでFMPS互換の評価を保存/読み込むためのプラグインを見つけまし(Bansheeも使用しているため、これらは評価です)。記事はフランス語ですが、プラグイン自体は英語のようです。そして、おそらく誰かがそれをパッケージ化することができます...


banshee-extension-albumartwriterダウンロードしたアルバムアートを音楽を含むディレクトリに書き込むBanshee拡張機能があります(デフォルトではキャッシュディレクトリにのみ保存されます)。これは、Rhythmboxにもそれらを取り込むのに役立ちます。


Bansheeは.m3u、プレイリストを、.plsおよびにエクスポートできます.xspf。Rhythmboxは、そのようなプレイリストをインポートできます(ただし、それらが多数ある場合、多くの作業が必要になる可能性があります...)。


私はBansheeにカウントと評価をメディアファイルに保存するように指示しましたが、それらをrhythmboxにインポートしませんでした。現在、インポートスクリプトを見ています。Bansheeはバージョン:2.9.0 + really2.6.2-2ubuntu2.1
isaaclw
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.