4

PHPを使用して、mp3アプリからmp3 ID3タグを正常に取得できます。巨大な BLOB が残っています。これはかなり簡単だと思いますが、正しい方向に少し助けが必要です。私が最終的にしたいのは(BLOB DATA CORRECTED)です:

$media_year = implode($ThisFileInfo['comments_html']['year']);
$media_genre = implode($ThisFileInfo['comments_html']['genre']);
$media_jpg = [BLOBDATA];

プログラミングの意味がないことはわかっていますが、アイデアはわかります。最初の2行はうまく機能しますが、ID3タグからBLOBDATAを取得して表示できるJPGに変換する方法がわかりません. )

別のチュートリアルでこれを見ましたが、それは私にとって点を結びつけません:

[comments] => Array
    (
        [picture] => Array
            (
                [0] => Array
                    (
                        [data] => <binary data>
                        [image_mime] => image/jpeg
                    )

            )

    )

読者に「やってください」とお願いするのは嫌なので、ご容赦ください。しかし、私は見つけることができるすべてのリソースを試しました。どんな助けでも大歓迎です。

4

3 に答える 3

2

file_put_contents() を使用して、id3 画像データをファイルに保存できます。

 $path = "/Applications/MAMP/htdocs/site/example.mp3"; //example. local file path to mp3
  $getID3 = new getID3;
  $tags = $getID3->analyze($Path);

if (isset($tags['comments']['picture']['0']['data'])) {
    $image = $tags['comments']['picture']['0']['data'];
    if(file_put_contents(FCPATH . "imageTest.jpg", $image)) {
        echo 'Image Added';
    } else {
        echo 'Image Not Added';
    }
}

または、を使用して画像を所定の位置に表示できます

header('Content-Type: image/jpeg');
echo $tags['comments']['picture']['0']['data'];
于 2014-12-10T20:37:51.323 に答える
0

ID3 タグの構造を説明している記事を見つけました。 http://www.stagetwo.eu/article/19-MP3-ID3-Tags-Wie-kann-man-die-teile-lesen これで、それらを理解して解析できるようになるはずです。これはドイツ語ですが、ID3 タグ構造に関する記事も Google 翻訳で読めるかもしれません。重要なバイトの説明と、たとえば SyncSafe 整数に関する説明が気に入っています。

問題に対して、APIC (画像) フレームの構造について説明します。これらの構造を解析し、バイトストリームを取得したらimagecreatefromstring($byteStream) 、MP3 から画像リソースを取得しました:)

于 2014-01-13T11:18:46.150 に答える