31

主题

1

好友

641

积分

职业侠客 当前离线

Rank: 5Rank: 5

UID
103167
帖子
769
精华
0
经验
641 点
金钱
592 ¥
注册时间
2009-5-10
发表于 2011-4-25 01:23 | 显示全部楼层
大家应该也会像我一样,有很多专辑没有CUE文件,只能把文件一个一个拉进去,导致FOOBAR2000显示的专辑名和艺术家名都是空,甚至用cuesheet_creator.dll生成CUE文件,曲名也都是数字而已。
      现我发一个能根据对"flac", ".ape", ".wav", ".dts", ".mp3", ".wma"生成CUE文件的小程序,懂编程的人还能再进行改善。这个程序主要是来自网上,我再加了点小功能。用了它,方便快捷。
使用说明:双击CreateCue_pub.vbs,然后把音乐文件所在的目录输入,点确定,程序就会把音乐文件所在文件夹名当成是专辑名和专辑艺术家名,而遇到是音乐文件属性里有写明艺术家的,程序还能列出来,方便mp3之类的音乐文件。只要不断地运行此程序,并把目录输入,就可以很快捷地把没有CUE文件的音乐文件都变成有CUE文件的专辑,方便FOOBAR2000播放与自己查找。
    举例:L:\music\群星.-.[中国民歌集锦].专辑.(MP3)下的MP3:

PERFORMER "群星.-.[中国民歌集锦].专辑.(MP3)"
TITLE "群星.-.[中国民歌集锦].专辑.(MP3)"
FILE "01.采蘑菇的小姑娘.mp3" WAVE
  TRACK 1 AUDIO
    TITLE "01.采蘑菇的小姑娘"
    PERFORMER "靳小才"
    INDEX 01 00:00:00
FILE "02.歌唱农村新面貌.mp3" WAVE
  TRACK 2 AUDIO
    TITLE "02.歌唱农村新面貌"
    PERFORMER "罗天婵"
    INDEX 01 00:00:00


程序可能有些杀软会报毒,本身没事的。程序如下:
'名称:cue(索引)文件生成脚本
'功能:为分轨flac、ape、wav、dts、mp3、wma生成分轨专用cue(索引)文件
'作者:朱鹏东&钟文创
'此脚本可自由转播,但须保留以上信息。
'
'-------------------------
'Function area
Function testProfix(ByVal str1)
    Dim prefix
    prefix = Array("flac", ".ape", ".wav", ".dts", ".mp3", ".wma")
    testProfix = False
    For Each pfix In prefix
        If LCase(Right(str1, 4)) = pfix Then
            testProfix = True
            Exit For
        End If
    Next
End Function

Function getFileName(ByVal file)
    getFileName = Left(file, Len(file) - InStr(StrReverse(file), "."))
End Function

Function createItem(ByVal folder,ByVal file, ByVal PERFORMER, ByVal i)
    createItem = "FILE """ & file & """ WAVE" & vbCrLf
    createItem = createItem & "  TRACK " & i & " AUDIO" & vbCrLf
    createItem = createItem & "    TITLE """ & getFileName(file) & """" & vbCrLf

Set oShell = CreateObject("Shell.Application")
Set oDir = oShell.NameSpace(folder+"\")
Set oFile = oDir.ParseName(file)
PERFORMER2 =oDir.GetDetailsOf(oFile,13)
If PERFORMER2 <> "" then
    createItem =createItem & "    PERFORMER """ & PERFORMER2 & """" & vbCrLf
End if
Set oFile = Nothing
Set oDir = Nothing
Set oShell = Nothing
    'createItem = createItem & "    PERFORMER """ & PERFORMER & """" & vbCrLf
    createItem = createItem & "    INDEX 01 00:00:00"
End Function



'--------------------------
Set fs = CreateObject("scripting.filesystemobject")
Dim PERFORMER, cueFile, Response
cueFile = "\CDImage.cue"
folder = InputBox("请输入目录,默认为当前目录", "输入目录")
If folder = "" Then

systemfolder = fs.GetFolder(CreateObject("wscript.shell").currentdirectory)
folder =systemfolder
arrFolderPath = Split(systemfolder, "\")
TITLEandPERFORMER = arrFolderPath(UBound(arrFolderPath))
Else
arrFolderPath = Split(folder, "\")
TITLEandPERFORMER = arrFolderPath(UBound(arrFolderPath))
End If

If fs.FileExists(folder & cueFile) Then
    Response = MsgBox("文件" & folder & cueFile & "已经存在,按确定后退出!", vbOKOnly + vbExclamation, "错误")
    Wscript.Quit
End If
Set tf = fs.opentextfile(folder & cueFile, 8, True)
strInput = TITLEandPERFORMER   '去掉此句时,下面两句要启用
'strInput = InputBox("请输入艺术家,默认为文件夹名", "输入艺术家")
'If strInput = "" Then strInput = TITLEandPERFORMER

PERFORMER = strInput
tf.Writeline "PERFORMER """ & strInput & """"
strInput = TITLEandPERFORMER  '去掉此句时,下面两句要启用
'strInput = InputBox("请输入专辑名称,默认为文件夹名", "输入专辑名称")
'If strInput = "" Then strInput = TITLEandPERFORMER
tf.Writeline "TITLE """ & strInput & """"

Set fd = fs.GetFolder(folder)
Set fc = fd.Files

Dim position
position = 1
For Each f1 In fc
    If testProfix(f1.Name) Then
        tf.Writeline createItem(folder,f1.Name, PERFORMER, position)
        


        position = position + 1
    End If
Next

'Response = MsgBox("完成生成索引文件", vbOKOnly, "完成")

程序在此: CreateCue_pub.zip (1.38 KB, 下载次数: 14125)

12

主题

0

好友

536

积分
     

职业侠客 当前离线

Rank: 5Rank: 5

UID
152940
帖子
850
精华
0
经验
536 点
金钱
834 ¥
注册时间
2009-12-6
发表于 2011-4-25 11:04 | 显示全部楼层
在哪里?看不见难道在浮云里?

18

主题

21

好友

9291

积分
     

青铜剑侠 当前离线

孤独的长跑者

Rank: 8Rank: 8

UID
66431
帖子
9868
精华
0
经验
9291 点
金钱
9044 ¥
注册时间
2008-12-2
发表于 2011-4-25 21:15 | 显示全部楼层
不错,已试用了

14

主题

2

好友

986

积分
     

职业侠客 当前离线

Rank: 5Rank: 5

UID
36687
帖子
2765
精华
0
经验
986 点
金钱
981 ¥
注册时间
2008-3-4
发表于 2011-4-25 21:21 | 显示全部楼层
下载一个试用,先谢谢楼主~!

58

主题

0

好友

1698

积分

侠之大者 当前离线

Rank: 6Rank: 6

UID
47645
帖子
9061
精华
0
经验
1698 点
金钱
1646 ¥
注册时间
2008-7-11
发表于 2011-4-25 21:31 | 显示全部楼层
下载一个,谢了
头像被屏蔽

9

主题

0

好友

214

积分

禁止发言 当前离线

UID
247485
帖子
516
精华
0
经验
214 点
金钱
211 ¥
注册时间
2010-10-6
发表于 2011-4-25 22:01 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

31

主题

1

好友

641

积分

职业侠客 当前离线

Rank: 5Rank: 5

UID
103167
帖子
769
精华
0
经验
641 点
金钱
592 ¥
注册时间
2009-5-10
 楼主| 发表于 2011-4-26 01:24 | 显示全部楼层
我之前本想对没有CUE文件的专辑一个一个用FOOBAR2000的cuesheet_creator.dll来生成CUE文件,结果发现得花费十多分钟,而一想到我有九十多个专辑,要22个小时,我差点晕倒。后来改了这个程序,总共才花了一个多小时就搞定了那九十多个专辑,不过我为这个程序加上一个读取艺术家的功能,却花了我三个小时,那天搞定这个程序,都凌晨五点了

1

主题

1

好友

262

积分

业余侠客 当前离线

Rank: 4

UID
249686
帖子
293
精华
0
经验
262 点
金钱
262 ¥
注册时间
2010-10-12
发表于 2011-5-19 11:01 | 显示全部楼层
楼主积了德了!!!以前都是靠手动生成和修改,用了这个真方便,愿好人一生平安!!!

5

主题

0

好友

1832

积分
     

侠之大者 当前离线

Rank: 6Rank: 6

UID
21156
帖子
1908
精华
0
经验
1832 点
金钱
1830 ¥
注册时间
2007-4-2
发表于 2011-5-19 11:44 | 显示全部楼层
下来试试,谢谢楼主!

16

主题

0

好友

895

积分

职业侠客 当前离线

Rank: 5Rank: 5

UID
3730
帖子
809
精华
2
经验
895 点
金钱
566 ¥
注册时间
2005-3-31
发表于 2011-5-19 13:44 | 显示全部楼层
有用,谢谢楼主分享!

5

主题

0

好友

1832

积分
     

侠之大者 当前离线

Rank: 6Rank: 6

UID
21156
帖子
1908
精华
0
经验
1832 点
金钱
1830 ¥
注册时间
2007-4-2
发表于 2011-5-19 14:18 | 显示全部楼层
该软件对于一张专辑每首音乐分成一个文件的很是有用。但是对于一张专辑只是一个APE文件的,生成的CUE文件也只是一首曲子,和播放该ape文件的效果一致。用文本打开CUE文件内容如下:
PERFORMER "感受穿越时空Cabeiri - Inner Thoughts 2011"
TITLE "感受穿越时空Cabeiri - Inner Thoughts 2011"
FILE "Cabeiri - Inner Thoughts.flac" WAVE
  TRACK 1 AUDIO
    TITLE "Cabeiri - Inner Thoughts"
    INDEX 01 00:00:00

能够正常使用的CUE文件的内容如下:
REM GENRE Ambient
REM DATE 2011
REM DISCID 7910A708
REM COMMENT "ExactAudioCopy v0.99pb5"
PERFORMER "Cabeiri"
TITLE "Inner Thoughts"
FILE "Cabeiri - Inner Thoughts.flac" WAVE
  TRACK 01 AUDIO
    TITLE "Rise Up"
    PERFORMER "Cabeiri"
    INDEX 01 00:00:00
  TRACK 02 AUDIO
    TITLE "Hot Liquid"
    PERFORMER "Cabeiri"
    INDEX 01 07:38:51
  TRACK 03 AUDIO
    TITLE "Adorable View"
    PERFORMER "Cabeiri"
    INDEX 01 16:45:27
  TRACK 04 AUDIO
    TITLE "Innermost Call"
    PERFORMER "Cabeiri"
    INDEX 01 27:14:52
  TRACK 05 AUDIO
    TITLE "Voices"
    PERFORMER "Cabeiri"
    INDEX 01 36:04:53
  TRACK 06 AUDIO
    TITLE "New Land"
    PERFORMER "Cabeiri"
    INDEX 00 44:54:67
    INDEX 01 44:56:67
  TRACK 07 AUDIO
    TITLE "Hidden Secrets"
    PERFORMER "Cabeiri"
    INDEX 01 53:14:27
  TRACK 08 AUDIO
    TITLE "Voyager"
    PERFORMER "Cabeiri"
    INDEX 01 63:15:24

忘楼主改进。

31

主题

1

好友

641

积分

职业侠客 当前离线

Rank: 5Rank: 5

UID
103167
帖子
769
精华
0
经验
641 点
金钱
592 ¥
注册时间
2009-5-10
 楼主| 发表于 2011-5-19 19:35 | 显示全部楼层
回复 11# hjs


   
该软件对于一张专辑每首音乐分成一个文件的很是有用。但是对于一张专辑只是一个APE文件的,生成的CUE文件也只是一首曲子,和播放该ape文件的效果一致。

你的这个要求,得靠手动。就算是EAC分析出来的CUE,也是得手动不断修改的。

7

主题

1

好友

665

积分
     

职业侠客 当前离线

Rank: 5Rank: 5

UID
107082
帖子
775
精华
0
经验
665 点
金钱
661 ¥
注册时间
2009-5-26
发表于 2011-5-22 10:31 | 显示全部楼层
本帖最后由 scstar 于 2011-5-22 10:34 编辑

确实灰常好用哈,CUE代入了曲目信息,自动保存在专辑夹子里。。谢谢!

31

主题

1

好友

641

积分

职业侠客 当前离线

Rank: 5Rank: 5

UID
103167
帖子
769
精华
0
经验
641 点
金钱
592 ¥
注册时间
2009-5-10
 楼主| 发表于 2011-5-23 00:27 | 显示全部楼层
确实灰常好用哈,CUE代入了曲目信息,自动保存在专辑夹子里。。谢谢!
scstar 发表于 2011-5-22 10:31

老兄总结了两个优点,说得好

9

主题

0

好友

83

积分

论坛游民 当前离线

Rank: 3Rank: 3

UID
142298
帖子
324
精华
0
经验
83 点
金钱
79 ¥
注册时间
2009-10-24
发表于 2011-5-23 08:39 | 显示全部楼层

24

主题

5

好友

443

积分
     

业余侠客 当前离线

Rank: 4

UID
1903
帖子
1182
精华
0
经验
443 点
金钱
266 ¥
注册时间
2004-10-22
发表于 2011-5-23 11:04 | 显示全部楼层
下来试试,谢谢楼主!

0

主题

0

好友

11

积分

注册会员 当前离线

Rank: 2

UID
372502
帖子
11
精华
0
经验
11 点
金钱
11 ¥
注册时间
2011-7-29
发表于 2011-8-19 16:49 | 显示全部楼层
这个程序可不是一般的好,简直棒极了!

整轨转分轨的cue能弄一个吗?

31

主题

1

好友

641

积分

职业侠客 当前离线

Rank: 5Rank: 5

UID
103167
帖子
769
精华
0
经验
641 点
金钱
592 ¥
注册时间
2009-5-10
 楼主| 发表于 2011-8-19 19:22 | 显示全部楼层
回复 17# yzb55
要对整轨的做一个CUE?这个得靠自己找曲目了。
如果已经有分轨,但没有曲目,而且分轨名称是简单的序列号,也只能自己一个一个改了。

0

主题

0

好友

177

积分

论坛游民 当前离线

Rank: 3Rank: 3

UID
187602
帖子
178
精华
0
经验
177 点
金钱
177 ¥
注册时间
2010-4-2
发表于 2011-8-19 20:25 | 显示全部楼层
绝了!我佩服!真是太棒了!

2

主题

2

好友

1504

积分
     

侠之大者 当前离线

Rank: 6Rank: 6

UID
292371
帖子
1472
精华
0
经验
1504 点
金钱
1425 ¥
注册时间
2011-2-15
发表于 2011-8-20 07:57 | 显示全部楼层
这个很实用,谢过楼主~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Powered by Discuz! X3.4

© 2001-2012 Comsenz Inc.

返回顶部