中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-10 01:23
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何让一个批处理鸣唱? 查看 1,783 回复 15
楼 主 如何让一个批处理鸣唱? 发表于 2008-09-24 22:36 ·  中国 上海 浦东新区 电信
中级用户
★★
积分 400
发帖 211
注册 2007-09-30 18:02
18年会员
UID 98650
性别 男
状态 离线
有没有什么办法让一个批处理读取一个文本文件,然后“鸣唱”?

类似与汇编编写的音乐一样。

http://zhidao.baidu.com/question/28984103.html?fr=qrl

本人作品见三楼,多多指教。。。

[ Last edited by uiopuiop on 2008-9-25 at 07:39 PM ]
2 发表于 2008-09-24 22:48 ·  中国 江西 赣州 安远县 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
18年会员
UID 96653
性别 男
状态 离线
可以鸣叫,可以说话,唱歌...
3 JAMES BOND -- 007主题曲 发表于 2008-09-24 23:02 ·  中国 上海 浦东新区 电信
中级用户
★★
积分 400
发帖 211
注册 2007-09-30 18:02
18年会员
UID 98650
性别 男
状态 离线
JAMES BOND 主题曲, 已经更新,完整版本看附件,化了我一晚上敲键盘打出来的。。。。。吹牛ING)

看到KIX 的脚本可以做到,不知道有没有其他更容易的办法。
如果有软件能将一个MP3转换成这些字符串就好了。

WKIX32.EXE play.kix

play.kix (JAMES BOND 主题曲)
-----------------------------------------------------------
PLAY "0g256t 0g8d247f 4d165f 247f 8d262f 4d165f 262f 8d277f 4d165f
277f 8d262f 4d165f 262f 8d247f 4d165f 247f 8d262f 4d165f
262f 8d277f 4d165f 277f 8d262f"
-------------------------------------------------------------
The string or file consists of a sequence of commands indicating the frequency and duration of the tones to play. The following commands are available:
• F or f - frequency
This command causes a tone to be produced at the current frequency. The initial current frequency is 1000Hz. To change the value, indicate the desired frequency immediately followed by the f character. For example, to produce a tone at 1500Hz, specify 1500F.
• G or g - gap
This command sets the number of timer ticks (1 second = 18 ticks) of silence between individual tones. The number of timer ticks between tones is specified as a number immediately followed by G. The initial value is 0.
• D or d - duration
This command sets the length (in timer ticks) of each tone. For example, to make each tone last about a third of a second, use the command 6d.
• T or t - tempo
This command scales the duration of each tone. This allows you to change the duration of a series of tones globally, without having to change each of the individual duration commands.A tempo value of 256 indicates normal tempo. A value of 4df lasts:
• 2 timer ticks, when the tempo is set to 128
• 4 timer ticks, when the tempo is set to 256
• 8 timer ticks, when the tempo is set to 512

还可以播放WAV文件:
play2.kix
play file "C:\WINDOWS\Media\Windows XP Shutdown.wav"

[ Last edited by uiopuiop on 2008-9-25 at 06:08 PM ]
附件
007.music.zip (148.11 KiB, 下载次数: 63)
4 发表于 2008-09-24 23:18 ·  中国 上海 浦东新区 电信
中级用户
★★
积分 400
发帖 211
注册 2007-09-30 18:02
18年会员
UID 98650
性别 男
状态 离线
Originally posted by tireless at 2008-9-24 10:48 PM:
可以鸣叫,可以说话,唱歌...


请问高手是如何让批处理 “说话” 的? 哈哈,播放WAV文件不算哦。
5 发表于 2008-09-24 23:21 ·  中国 江西 赣州 安远县 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
18年会员
UID 96653
性别 男
状态 离线
以下引自 http://bbs.verybat.org/viewthread.php?tid=9070&highlight=%CB%B5%BB%B0
@echo off
title 爆笑机器人说话(发音不太标准)
echo 国语:好好学习,天天向上!认真学习P处理。
mshta vbscript:createobject("sapi.spvoice").speak("hou hou share she, tian tian xiang shang, ren zhen share she P chu li.")(window.close)


@echo off
title 爆笑机器人说话(发音不太标准)
echo 鸟语?!:大家好,俺是机器人,俺也学习批处理,俺最稀罕非常批处理,俺在东北
mshta vbscript:createobject("sapi.spvoice").speak("dar jia hou, an she ji qi ren, an year share she P chu li, an zui she han fei chuang P chu li, an zai dong bei")(window.close)

----------------------------------------------------------------------------
可爱批处理——听听鬼佬说中文
http://bbs.verybat.org/thread-4101-1-1.html

[ Last edited by tireless on 2008-9-24 at 03:28 AM ]
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
uiopuiop +2 2008-09-24 23:40
6 发表于 2008-09-24 23:43 ·  中国 上海 浦东新区 电信
中级用户
★★
积分 400
发帖 211
注册 2007-09-30 18:02
18年会员
UID 98650
性别 男
状态 离线
强! 无语。。。。

学无止境。

不知道有没有让批处理鸣叫 (不用第三方工具)的方法?

[ Last edited by uiopuiop on 2008-9-24 at 11:44 PM ]
7 发表于 2008-09-25 00:45 ·  中国 四川 成都 电信
中级用户
★★
积分 297
发帖 135
注册 2006-10-21 12:00
19年会员
UID 67627
性别 男
状态 离线
echo 
那个黑点是在cmd中按Ctrl+G生成的
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
uiopuiop +1 2008-09-25 10:15
8 发表于 2008-09-25 11:34 ·  新加坡 惠普HP
中级用户
★★
积分 400
发帖 211
注册 2007-09-30 18:02
18年会员
UID 98650
性别 男
状态 离线
Originally posted by zqz0012005 at 2008-9-25 12:45 AM:
echo 
那个黑点是在cmd中按Ctrl+G生成的


就一个嘟音,有没有其他的声音啊?

echo ^G>test.txt

type test.txt (鸣叫一次)

或者: 先 echo ^@type ^>nul 2^>^&1 >test.bat


test.bat 内容为:
type >nul 2>&1

或者:echo echo >test.bat
test.bat (鸣叫两次)

或者: 想什么时候叫就什么时候叫

set beep=
echo %beep% %beep% %beep%

[ Last edited by uiopuiop on 2008-9-25 at 02:43 PM ]
9 发表于 2008-09-25 15:34 ·  中国 广东 深圳 电信
初级用户
★★
积分 132
发帖 68
注册 2008-07-29 20:51
18年会员
UID 122345
性别 男
状态 离线
你试试,包你满意

@echo off
echo set mp3=createobject("wmplayer.ocx")>ps.vbs
echo mp3.url="%windir%\Help\Tours\WindowsMediaPlayer\Audio\Wav\wmpaud5.wav">>ps.vbs
echo wscript.sleep 1000>>ps.vbs
echo wscript.sleep mp3.currentmedia.duration*1000>>ps.vbs
echo wscript.quit(1)>>ps.vbs
start ps.vbs
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
uiopuiop +1 2008-09-25 18:08
10 发表于 2008-09-25 18:14 ·  新加坡 惠普HP
中级用户
★★
积分 400
发帖 211
注册 2007-09-30 18:02
18年会员
UID 98650
性别 男
状态 离线
不错,看看我3楼附件里的作品。如果再跳点动画就更COOL了。
11 发表于 2008-09-25 18:25 ·  中国 广东 深圳 罗湖区 电信
初级用户
★★
积分 132
发帖 68
注册 2008-07-29 20:51
18年会员
UID 122345
性别 男
状态 离线
Originally posted by uiopuiop at 2008-9-25 06:14 PM:
不错,看看我3楼附件里的作品。如果再跳点动画就更COOL了。



我机箱里的腊巴线我没插,开机时的嘀嘀声半夜听起来太吵了坏了-.=
12 发表于 2008-09-25 18:46 ·  中国 四川 成都 电信
中级用户
★★
积分 297
发帖 135
注册 2006-10-21 12:00
19年会员
UID 67627
性别 男
状态 离线
要说正宗中文,见此贴:利用TTS实现中英文混读
http://bbs.verybat.org/thread-13024-1-1.html

最简单的纯vbs音乐播放器
http://bbs.verybat.org/thread-13026-1-1.html
13 发表于 2008-09-26 00:47 ·  中国 广东 韶关 电信
高级用户
★★★
CMD感染者
积分 691
发帖 383
注册 2008-05-23 00:38
18年会员
UID 119451
性别 男
状态 离线
verybat不是关了吗
14 3 个鸣叫的 .com 文件 发表于 2008-10-01 15:57 ·  中国 江西 赣州 安远县 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
18年会员
UID 96653
性别 男
状态 离线
CHIME.COM 一段旋律
http://upload.cn-dos.net/img/805.rar

RING.COM 铃声
http://upload.cn-dos.net/img/806.rar

SIREN.COM 警报声
http://upload.cn-dos.net/img/807.rar

以上三个文件的参数:
n 鸣叫次数 (默认为 1)
/c 直到用户按键才停止鸣叫
15 发表于 2008-10-03 13:07 ·  中国 山东 青岛 联通
初级用户
★★
积分 107
发帖 60
注册 2007-11-07 22:03
18年会员
UID 102010
性别 男
状态 离线
太强大了!
论坛跳转: