HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2014
0403
ヒラギノVBMP3 のgettagmp3 について2解決


ヒラギノ

リンク

2014/4/3(Thu) 13:39:12|NO.61299

こんにちは。
VBMP3 でgettagmp3 を使うと正しくタグ情報を取得してくれません。

playmp3 nInfo, "sample.mp3" gettagmp3 2 : dialog ""+refstr+"",,""+stat+""
stat に0と表示されるのでエラーはでてないと思います。
他のソフトでは正しく表示されます。(iTunes など)

ちなみに、MP3 のトラック番号を取得する方法を教えてください。

memcpy s,TAG_INFO, 4,0,652
これで、合ってますか?



この記事に返信する


あり

リンク

2014/4/3(Thu) 20:03:21|NO.61330

まず、外部モジュールを使っているならきちんと書いておいてください。
(HSP-NEXTさんの『exmp3dll.as』を利用しているんですよね?)
そして、受け取り側がエディタにそのままコピーして起動できるだけの
必要最低限のスクリプトを提示してください。

これらが疎かになっていると、回答者は何をどのように使っているのかを
質問内容から想像して調べる事からしなければならず
最悪返答無しもありえますので・・・


ここから本題ですが
>BMP3 でgettagmp3 を使うと正しくタグ情報を取得してくれません。

どう正しくないのかを説明してください。
私が試した限りでは問題なくタグ情報を取得出来ました。
(以下、テストサンプル)

#include "exmp3dll.as" onexit *exit initmp3 50, 100, 100 ; イニシャライズ dialog "mp3", 16 fname = refstr playmp3 nInfo, fname stopmp3 ; 再生停止 ;gettagmp3 2 : dialog ""+refstr+"",,""+stat+"" tagname = "曲名", "アーティスト名", "アルバム名", "リリース年号", "コメント文字列", "ジャンル", "ジャンル名称" sdim tag, 256, 7 repeat 7 gettagmp3 cnt reftag = refstr tag(cnt) = tagname(cnt)+ "=" + reftag if cnt = 5 { ; ジャンルIDだけは文字列ではないのでpeekで読み込む j = peek(reftag, 0) tag(cnt) = tagname(cnt)+ "=" + j } mes tag(cnt) loop stop *exit closemp3 end
タグ読み込みはID3v1だけ対応のようなのでID3v2だと正しく読めないのかもしれません。


>ちなみに、MP3 のトラック番号を取得する方法を教えてください。

トラック情報が入るとされるTAG_INFO_11構造体は
exmp3dll.as内で定義をされてはいますが、モジュール内のどこにも使われておらず
VBMP3.dllでも特にトラック番号についての記述が見つからないので
取得はできないものと思われます。



ヒラギノ

リンク

2014/4/3(Thu) 20:46:48|NO.61331

>ありさん
>まず、外部モジュールを使っているならきちんと書いておいてください。
>そして、受け取り側がエディタにそのままコピーして起動できるだけの
>必要最低限のスクリプトを提示してください。
そうですよね。失礼しました。次からは気を付けるようにします><

読み込むタグ情報を指定しても、空欄のまま、何も表示されませんでした。
>タグ読み込みはID3v1だけ対応のようなのでID3v2だと正しく読めないのかもしれません。
これが、原因なのかもしれません。

>取得はできないものと思われます。
ID3v1 では、トラック番号が指定できないようなので、読み込めませんね。



ONION software Copyright 1997-2023(c) All rights reserved.