HSPLet上で試していませんが、以下のはどうですか?
まだ完全に解析ができていないので、暫定的で制限が多いですが。
//再生時間=データサイズ×8/ビットレート(MP3の場合)
//以下のサンプルはMPEG1 Layer3 CBR でかつID3 v2.?タグがない場合に正常に作動します。
//MPEG2 Layer3だったり、VBRだったり、ID3 v2.?タグだったりすると読めません。
//ただし、ID3 v1タグは入っていても読み込めます。
//http://java-house.jp/ml/archive/j-h-b/032040.html(MP3の長さ取得)
//http://pub.ne.jp/matsuk/?entry_id=1019865(ID3の仕様)
//http://eternalwindows.jp/sound/mp3/mp309.html(MP3の仕様)
//↑ただフレームヘッダの内容が一部間違っている気もしますので以下のサイトも見てください。
//http://azskyetc.client.jp/program/shout2.html
dialog "mp3",16
if stat=0:end
sdim buf,64
bload refstr,buf,10,0
temp=(peek(buf,2) and 0xf0)>>4//上位4ビットをシフト
bitr1=0, 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320, 0//MPEG1 Layer3 CBR
bitr2=0, 8, 16, 24, 32, 40, 48, 56, 64, 80, 96, 112, 128, 144, 160, 0//MPEG2 Layer3 CBR
mes ""+bitr1.temp+" bit/s"//ビットレート表示
exist refstr
mes "約"+strsize*8/bitr1.temp/1000+" 秒"//長さ取得