[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[linux-users:80388] Re: MP3 ファイルの再生時間取得


こんばんわ、前田です。

返事が送れて申し訳ありません。アドバイスありがとうございました。

mp3_checkとMP3-Info両方使ってみました。今回お問い合わせしたのは
ディレクトリ内にあるMP3ファイルのTOCファイルを作成するためです。

今回紹介して頂いたスクリプトを少しいじって小数点二桁まで表示で
きるようにしました。

--------------------------(mp3time.pl)-----------------------
#!/usr/bin/perl
use MP3::Info;

$file = $ARGV[0];
my $mp3 = new MP3::Info $file;

if ($mp3->{MM} < 10) {$x = '0'. $mp3->{MM};}
else {$x = $mp3->{MM};}
if ($mp3->{SS} < 10) {$y = '0'. $mp3->{SS};}
else {$y = $mp3->{SS};}
if ($mp3->{MS} > 100) {$z = substr(int($mp3->{MS} / 10 + 0.5 ) * 10, 0, 2);}
else {$z = int($mp3->{MS} + 0.5);}

printf "$x:$y:$z\n";
------------------------------------------------------------

TOCファイルの長さの表示は05:08:84というように、分、秒、ミリ秒
が二桁づつ表示されるのでこのような方法を取りました。

最終的にはperlスクリプトでディレクトリ内のMP3ファイルを一つの
ファイルに連結し、TOCファイルも自動的に作成されるようにしたい
のですが、現在Perlのメーリングリストで質問しながらスクリプト
を作成しています。

どうもありがとうございました。

Thu, Feb 15, 2001 at 12:31:39AM +0900 において
Daisuke KUTSUWADA さん曰く:

> 
> くつわだ@金沢大です.
> 
> Message-Id: <20010214230049.C19373 _at_ compaq.maeda.toyoake.or.jp>
> Takehiro Maeda <takehiro _at_ cyborg.ne.jp> wrote:
> 
> | mp3infoでMP3ファイルの再生時間は取得できたのですが、
> | 再生時間を小数点以下の単位まで取得できるツールはあ
> | りますでしょうか。mp3infoだと秒単位までしか出来ない
> | ようです。
> | 
> 
> CPAN にある MP3-Info module(http://www.cpan.org/modules/by-module/MP3/)
> をつかうと, 以下のような perl スクリプトで ミリ秒までわかるようです.
> 
> --(mp3time.pl)---
> #!/usr/bin/perl
> use MP3::Info;
> 
> $file = $ARGV[0];
> my $mp3 = new MP3::Info $file;
> 
> printf "$file %d:%d:%d\n", $mp3->{MM},$mp3->{SS},$mp3->{MS};
> -----------------
> 
> これを,
> 
>  $ perl mp3time.pl hogehoge.mp3
> 
> とかしてつかいます.
> 
> -- 
>  Daisuke KUTSUWADA <kutuwada _at_ wis02.ec.t.kanazawa-u.ac.jp>
>     Graduate School of Natural Science and Technology
>                  Kanazawa University
> 

この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
References: