すべての音楽の歌詞を取得してファイルに保存するにはどうすればよいですか?


14

私には大きな音楽ライブラリがあり(ほとんどは.mp3&です.m4a)、歌詞はありません。インターネットにクエリを実行して、すべての音楽に歌詞を自動的に追加するプログラムまたはプラグインはありますか?

私は通常インターネットに接続していないため、すべての歌詞を音楽ファイルタグに自動的に追加してオフラインで表示できるプログラムが必要です。


2
歌詞を追加する方法は?各音楽ファイルに?あなたの音楽コレクションはどのフォーマットですか?見つかった歌詞をどのように表示しますか?
fossfreedom

私が欲しいのは、音楽ファイル(主に.mp3&.m4a)が音楽プレーヤーで再生され、「歌詞を表示」をクリックすることです。歌詞を表示できるはずです。 (音楽ファイルの私のタグはすべて正しいです)。
バーラト

2
このコメントは元の質問とは大きく異なります。少なくとも質問を更新して、新しい目的を反映するようにしてください。
ルイスデスーサ

AmarokとClementineには、取得した歌詞を編集するオプションがあります。試したことはありませんが、ローカルのどこかに保存してから取得する必要があります。曲ごとにこれを行うのは本当に面倒ですが、おそらくうまくいくでしょう。
ジョー

という素晴らしいソフトウェアがありclementineます。それを試してみてください。さまざまな歌詞のオンラインDBをサポートしています。(古いAmarok 1 *のフォーク)。
ddmytrenko

回答:


5

私はあなたの環境がわからないので、これは半回答です。私が提供するコードは例としてのみ使用することを意図しています-そのまま実行しても害はないはずですが、保証はできません。

このようなタスクは単純なbashスクリプトを使用して処理できます。たとえば、次の例では、eyeD3を使用してアーティストとタイトルを抽出し、無料のウィキ歌詞ミラーを使用して歌詞を取得し、eyeD3を使用して新しいタグを保存します。同じコードを何度も悪用すると悪意があると見なされる可能性があるため、このコードを使用するすべての人に別の歌詞APIを検索することをお勧めします。

#!/bin/bash

_TPL='http://makeitpersonal.co/lyrics?artist=<artist>&title=<title>'
_SRY="Sorry, We don't have lyrics for this song yet."

[ "$1" ] && _PATH="$1" || _PATH=$PWD

cd $_PATH

for _FILE in {*.mp3,*.m4a}; do
    if [[ -r $_FILE ]]; then
        _SONG=$(eyeD3 --no-color "$_FILE" | grep title)

        _ARTIST="${_SONG#*"artist: "}"
        _TITLE="${_SONG%"artist: "*}"
        _TITLE="${_TITLE#"title: "}"

        echo -n "$_ARTIST - $_TITLE"

        _ARTIST="${_ARTIST// /+}"
        _TITLE="${_TITLE// /+}"
        _URL="${_TPL//"<artist>"/$_ARTIST}"
        _URL="${_URL//"<title>"/$_TITLE}"

        _LYRICS=$(wget -qO- $_URL)

        if [ "$_LYRICS" != "$_SRY" ]; then
            eyeD3 --lyrics=eng:Lyrics:"$_LYRICS" "$_FILE" 1>/dev/null
        else
            echo "No lyrics found... skipping!"
        fi
    fi
done

cd $OLDPWD

手順(ターミナルでコマンドを実行):

  1. インストールwgeteyeD3て発行するsudo apt-get install wget eyed3
  2. 上記のコードをファイルに保存します、例えば /home/user/lyrics_fetcher.sh
  3. ファイルを実行する許可を追加します。 chmod u+x /home/user/lyrics_fetcher.sh
  4. ファイルを実行します(引用符に注意してください): /home/user/lyrics_fetcher.sh "path_to_my_album"
  5. ctrl+ を押すと、いつでもスクリプトの実行を停止できます。c

Arctic Monkeysの「AM」アルバムでこのコードをチェックしましたが、うまくいきました。

すべてのアルバムの歌詞を一度に取得したい場合は、ディレクトリごとにループでスクリプトを実行できると思います。それでも、私はそれを最終的な解決策としては使いません-wikilyricsとそれをミラーリングでサポートする誰もが善人であり、この答えは虐待ではなく思考を促進するためにここにあります。


私はあなたが言った通りに、与えられたコードをhomeでlyrics_fetcher.shとして保存してから、ターミナルのポイント2でコマンドを実行しました。次に、このコマンドを実行しました。今はさらにoutput.Iが完全に初心者がいますされていない..私を助けてくださいLIVING THINGS - 」、
バーラト

1.ターミナルですべてのコマンドを実行しますか?(ターミナル出力があるはずです)2. wgetとeyeD3がインストールされていますか?そうでない場合は、「sudo apt-get install wget eyed3」を実行します
cprn

@Bharatでは./lyrics_fetcher.sh "/home/bharat/Music/Linkin-park/LIVING-THINGS"、スクリプトが入っているフォルダーでコマンドを使用する必要があります。引用符を忘れました。
Ads20000

1
@ Ads20000 Bharatがどのような問題に遭遇したかを見たときに、後でこれらの指示を追加しました。彼は通知を受けました。
cprn

スクリプトの実行中にエラー(赤)が発生しました。「 'ascii'コーデックは25〜26の位置にある文字をエンコードできません:範囲(128)にない序数」どういう意味ですか?
noir1993

3

最近、歌詞を音楽に自動的に取得してタグ付けするためのpythonスクリプトを作成しました。それをチェックアウトここに。これにより、歌詞がtxtファイルとしてダウンロードされ、.mp3ファイルに埋め込まれます

Youtubeデモ


1
  • lrc.plは、David PreciousのLyrics :: Fetcherパッケージを使用して、MP3の歌詞を一括ダウンロードするためのパールスクリプトです。

  • AmarokプラグインUltimate Lyricsも試してください。Ultimate Lyricsは、多くのサイトから歌詞を取得する構成可能なスクリプトです。

  • 別のオプション:bansheeの歌詞拡張機能


あなたは本当に質問に回答していません-歌詞をまとめてダウンロードできますか?そして歌詞を音楽ファイル自体にオフラインで保存できますか?
fossfreedom

1

音楽ファンとして、Guayadequeプレーヤー、高速かつ軽量でフル機能のプレーヤーをお勧めします。間違っていない場合はデフォルトで歌詞拡張機能があり、さらに選択する機能があります。すべての曲の歌詞もバイオバンド。歌詞を手動で曲に保存することもできますが、もちろんインターネットと同期する方が良いでしょう。とにかくそれはあなたの選択です。

sudo add-apt-repository ppa:anonbeat/guayadeque

sudo apt-get update

sudo apt-get install guayadeque-svn

あなたは本当に質問に回答していません-歌詞をまとめてダウンロードできますか?そして歌詞を音楽ファイル自体にオフラインで保存できますか?
fossfreedom

はい、曲を編集し、プレイヤー内の曲に自分で歌詞を貼り付けるか書き込むための設定/オプション用の組み込みエディターがあります。
ジョーカー

@JohnnyD。「自分で」-OPは、手動で1つずつではなく、バッチで自動的に行うことを意味しました。
cprn

@CyprianGuerra多分私は彼が尋ねていたことを誤解した:
JoKeR

1

beetsは、音楽ライブラリを整理するためのコマンドラインツールであり、自動的に歌詞を取得できます。ウェブサイトから:

ビートの目的は、音楽コレクションをきちんと取得することです。コレクションをカタログ化し、MusicBrainzデータベースを使用してメタデータを自動的に改善します。次に、音楽を操作したりアクセスしたりするための一連のツールを提供します。

具体的には、歌詞プラグインがあります Lyric Wiki、Lyrics.com、Musixmatch、Genius.com、またはGoogleカスタム検索APIから歌詞を取得があります。

その周辺のコミュニティは非常に活発です。見てみな!


0

Mp3nityは1.5か月間無料です(たぶん)。次に、プレミアムバージョンを購入する必要があります。アルバムのアートワークを埋め込みます。すべての音楽ファイルの歌詞を一度に取得できます。


0

私は個人的に歌詞ファインダーを使用しています:https : //www.lyricfinder.org/

フォルダーの追加を使用して、フォルダーを再帰的に検索し、すべての音楽ファイルを検索してから、歌詞を検索してそれらのID3タグに追加することができます。


0

lyricoを使用して、Pythonスクリプトを使用して歌詞をダウンロードし、ID3またはogg vorbisメタタグに埋め込みます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.