找回密码
 加入
搜索
查看: 3806|回复: 16

如何读取音乐文件的信息

[复制链接]
发表于 2009-5-6 21:58:21 | 显示全部楼层 |阅读模式
本帖最后由 aa147147 于 2009-5-9 13:36 编辑

系统读取音乐文件的信息怎么调用??


这样子要怎么读取啊!!!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2009-5-6 21:58:44 | 显示全部楼层
这些信息用au3要怎么样才能读取???
发表于 2009-5-6 23:26:49 | 显示全部楼层
到这个贴子参考一下就知道了!http://www.autoitx.com/forum.php ... 4&highlight=mp3
 楼主| 发表于 2009-5-7 00:16:11 | 显示全部楼层

CDDBControl.dll注册了怎么还是这样子 呢??

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2009-5-7 00:36:03 | 显示全部楼层
RunWait("regsvr32 CDDBControl.dll /s");注册CDDBControl.dll
Global $Obj =ObjCreate("CDDBControl.CddbID3Tag")
$h_file="韩国舞曲.mp3";注意你的文件路径
$Obj.Album=123 ;专辑
$Obj.Title ='不是因为寂寞才想你'  ;标题
$Obj.Genre ="Speech" ;流派
$Obj.LeadArtist= "Alexandr Flek"  ;艺术家
$Obj.Year= "1994/01/09 10:00"   ;发行年
$Obj.Comments="Remaster";备注
$Obj.SaveToFile($h_file)
RunWait("regsvr32 CDDBControl.dll /u /s");反注册CDDBControl.dll
 楼主| 发表于 2009-5-7 00:46:31 | 显示全部楼层
吐血中。。。还是那样
 楼主| 发表于 2009-5-7 00:47:02 | 显示全部楼层
我要读取的,这个是修改的。。晕西晕。。
 楼主| 发表于 2009-5-7 00:50:08 | 显示全部楼层

现在就要这个读取Mp3信息的,用来增加播放本地音乐功能,和加强歌词的准确度了。
哎。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2009-5-7 10:29:07 | 显示全部楼层
Hq_Read_MP3ID("FileName","Vartoaw")

读取指定的Mp3文件的相关ID2信息。
FileName:要读取的文件名。
Vartoaw:把操作的事件结果返回到Aw的变量名称。
返回的结果如下:
标题
艺术家
专辑
出品年代
备注
流派

Hq_Edit_Mp3ID("FileName",Type,"MP3ID")

修改指定的Mp3文件的相关ID2信息。
FileName:要读取的文件名。
Type:要修改的选项。
1:标题(30个字符以内)
2:艺术家(30个字符以内)
3:专辑(30个字符以内)
4:出品年代(4个字符以内)
5:备注(30个字符以内)
6:流派(0-50之间,至于具体表示请查看相关资料)
0="Blues"
1="ClassicRock"
2="Country"
3="Dance"
4="Disco"
5="Funk"
6="Grunge"
7="Hip-Hop"
8="Jazz"
9="Metal"
10="NewAge"
11="Oldies"
12="Other"
13="Pop"
14="R&B"
15="Rap"
16="Reggae"
17="Rock"
18="Techno"
19="Industrial"
20="Alternative"
21="Ska"
22="DeathMetal"
23="Pranks"
24="Soundtrack"
25="Euro-Techno"
26="Ambient"
27="Trip-Hop"
28="Vocal"
29="Jazz+Funk"
30="Fusion"
31="Trance"
32="Classical"
33="Instrumental"
34="Acid"
35="House"
36="Game"
37="SoundClip"
38="Gospel"
39="Noise"
40="AlternRock"
41="Bass"
42="Soul"
43="Punk"
44="Space"
45="Meditative"
46="InstrumentalPop"
47="InstrumentalRock"
48="Ethnic"
49="Gothic"
50="Darkwave"   
……  
MP3ID:要修改的具体内容。

Hq_Read_mp3Id3("FileName","Vartoaw")

读取指定的Mp3文件的相关ID3信息。
FileName:要读取的文件名。
Vartoaw:把操作的事件结果返回到Aw的变量名称。
返回的结果有很多内容,都是用回车分开的。
时间只计算到分和秒,没有计算到时。
在ID3中,内容是非常灵活的,因此就无法说是有哪些固定的内容。大家只能根据代码来获取指定的相关内容。
常见的代码有这些:
TEXT:   歌词作者   TENC:   编码
WXXX:   URL链接(URL)   TCOP:   版权(Copyright)
TOPE:   原艺术家   TCOM:   作曲家
TDAT:   日期   TPE3:   指挥者
TPE2:   乐队   TPE1:   艺术家相当于ID3v1的Artist
TPE4:   翻译(记录员、修改员)   TYER:   年代相当于ID3v1的Year
USLT:   歌词   TALB:   专辑相当于ID3v1的Album
TIT1:   内容组描述   TIT2:   标题相当于ID3v1的Title
TIT3:   副标题   TCON:   流派(风格)相当于ID3v1的Genre见下表
TBPM:   每分钟节拍数   COMM:   注释相当于ID3v1的Comment
TDLY:   播放列表返录   TRCK:   音轨(曲号)相当于ID3v1的Track
TFLT:   文件类型   TIME:   时间 
TKEY:   最初关键字   TLAN:   语言
TLEN:   长度   TMED:   媒体类型
TOAL:   原唱片集   TOFN:   原文件名
TOLY:   原歌词作者   TORY:   最初发行年份
TOWM:   文件所有者(许可证者)   TPOS:   作品集部分
TPUB:   发行人   TRDA:   录制日期
TRSN:   Intenet电台名称   TRSO:   Intenet电台所有者
TSIZ:   大小       TSRC:   ISRC(国际的标准记录代码)
TSSE:   编码使用的软件(硬件设置)   UFID:   唯一的文件标识符
AENC:   音频加密技术        
同时还增加了显示比特率、采样率、声道等内容。
自动计算出Mp3文件的播放时间。(只计算到分和秒,没有计算到时)
目前只能读取ID3内容,还不支持写入。而ID2的信息则可以读取与写入的。

Hq_Open_MP3File("Caption","FIleSpec","InitialDir","Filter",dflags,"Vartoaw")

打开选择文件的对话框。
Caption:文件对话框的标题。
FileSpec:默认打开的文件名。
InitialDir:默认的文件夹位置。
Filter:要打开文件的类型。
dFlags:打开文件的标志。
可以是以下几种数字的相加:
%OFN_READONLY             = 1         只读
%OFN_OVERWRITEPROMPT      = 2         覆盖提示
%OFN_HIDEREADONLY         = 4         隐藏和只读
%OFN_NOCHANGEDIR          = 8         不改为目录
%OFN_SHOWHELP             = 16        显示帮助
%OFN_ENABLEHOOK           = 32        
%OFN_ENABLETEMPLATE       = 64        
%OFN_ENABLETEMPLATEHANDLE = 128      
%OFN_NOVALIDATE           = 256      
%OFN_ALLOWMULTISELECT     = 512       允许多选
%OFN_EXTENSIONDIFFERENT   = 1024      
%OFN_PATHMUSTEXIST        = 2048      目录必须存在
%OFN_FILEMUSTEXIST        = 4096      文件必须存在
%OFN_CREATEPROMPT         = 8192      创建提示
%OFN_SHAREAWARE           = 16384     
%OFN_NOREADONLYRETURN     = 32768     
%OFN_NOTESTFILECREATE     = 65536     
%OFN_NONETWORKBUTTON      = 131072   
%OFN_NOLONGNAMES          = 262144   
%OFN_EXPLORER             = 524288   
%OFN_NODEREFERENCELINKS   = 1048576   
%OFN_LONGNAMES            = 2097152   
%OFN_ENABLEINCLUDENOTIFY  = 4194304   
%OFN_ENABLESIZING         = 8388608   
%OFN_DONTADDTORECENT      = 33554432  
%OFN_FORCESHOWHIDDEN      = 268435456
至于具体的代表意思,请自己查找。
如显示只读和多选的标志:1+512
VartoAw:把选择的结果返回到Aw的变量名。

允许同时选择多个文件,只是选择后返回的结果是用空格来分开的,因此在获取结果后请自己写代码来分离文件名称。

同时修正了在获取MP3的ID3V2版本的信息时,标志的位置不一定是计算的长度,增加了自动搜索判断的功能,更加准确的获取MP3的相关信息了(在早期的版本中,会发现存在这样的问题,即计算的位置并不是真正的地址,从而造成程序出错。)现在已经解决了这个问题,并把版本的标志也改为01.10.2000。

纯粹寒秋个人爱好编写,允许自由下载使用,请勿用于商业场合。

看看AU3能不能调用Hq_ReadMp3id.dll这个DLL

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2009-5-7 10:39:04 | 显示全部楼层
我要读取的,这个是修改的。。晕西晕。。
aa147147 发表于 2009-5-7 00:47

能修改应该也能读取吧期待牛人出现
 楼主| 发表于 2009-5-7 17:04:17 | 显示全部楼层
太谢谢你了。。。
发表于 2009-5-8 13:18:52 | 显示全部楼层
调用id3tool获取MP3信息

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2009-5-8 20:38:08 | 显示全部楼层
UserInclude下有id3.au3 不需要任何dll 根据id3格式来读mp3获取信息的
发表于 2009-5-9 09:08:38 | 显示全部楼层
UserInclude下有id3.au3 不需要任何dll 根据id3格式来读mp3获取信息的
sxd 发表于 2009-5-8 20:38

有没有ID3.AU3相关的例子?
发表于 2009-5-9 12:34:36 | 显示全部楼层
#include <ID3.au3>
$Array = _ID3TagToArray(@ScriptDir & "\心跳.mp3", 1)
$Size = UBound($Array) - 1
For $i = 0 To $Size
        MsgBox(0, "", $Array[$i])
Next


这种例子很容易就写出来了……
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-10-2 03:15 , Processed in 0.081255 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表