• 首页
  • 资讯
  • 专家
  • 话题
  • 问题库
  • 礼品商店
  • 分类
    • 新闻资讯
    • 娱乐八卦
    • 3C数码
    • 医疗健康
    • 健康养生
    • 云盘解析
    首页   ›   正文

VBmciSendString获取MP3标题、作者其他方法也行,不一定要mciSendString

2021-12-06 21:43
1607  1
IT网络 未结
关注
风流倜傥江
风流倜傥江 2021-12-06 21:43
相关标签:
1条回答
  • 纯洁的大懒
    2021-12-06 22:25


    VB mcisendstring 方法


    做个mp3播放器,用realplay和WMP做出来的程序内存占用太大。 如果你仅仅是播放MP3,建议使用API函数mciSendString。 Option Explicit Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long mciSendString是用来播放多媒体文件的API指令,可以播放MPEG,AVI,WAV,MP3,等等,下面介绍 它的使用方法:   该函数有四个参数: 第一个参数:要发送的命令字符串。字符串结构是:[命令][设备别名][命令参数]. 第二个参数:返回信息的缓冲区,为一指定了大小的字符串变量. 第三个参数:缓冲区的大小,就是字符变量的长度. 第四个参数:回调方式,一般设为零 返回值:函数执行成功返回零,否则返回错误代码 一、常用命令   1.打开(Open),格式:Open 设备名 [type 设备型式][alias 别名] Dim mName as string mName = "f:\\mpeg\\mpeg1.avi" mciSendString "open mName type MPEGVideo Alias movie parent %u Style %u notify",0&, 0, 0  其中: open 操作命令 mName 全路径文件名 type MPEGVideo 是指打开MPEG,AVI等类型,如果不加这一句,就是打开WAV,MP3等 Alias movie 定义了该操作的别名为movie,后续操作只要指明别名即可

    parent %u 源 Style %u 样式 notify 通知   2.播放(Play),格式:Play 设备名 [from 起点][to 终点] mciSendString "play movie", 0&, 0, 0 mciSendString "play movie fullscreen", 0&, 0, 0 '全屏播放   3.暂停(Pause): mciSendString "pause movie", 0&, 0, 0   4.继续(Resume): mciSendString "resume movie", 0&, 0, 0   5.停止(Stop): mciSendString "stop movie", 0&, 0, 0   6.关闭(Colse): mciSendString "close movie", 0&, 0, 0   7.前进到下一个位置: mciSendString "step movie", 0&, 0, 0   8.后退到上一个位置: mciSendString "step movie reverse", 0&, 0, 0   9.前进或后退 N 個位置(其中 N<0 即表示后退) mciSendString "step movie by " & str(N), 0&, 0, 0   10.获取当前播放位置: Dim ST As String*64 mciSendString "status movie position", st, len(st), 0   11. 获取媒体的总长度: mciSendString "status movie length", st, len(st), 0 l=val(st) 'L就是所播放文件的长度   12.获取播放信息: Dim ST As String*64 mciSendString "status movie mode", ST, Len(ST), 0 If Left(ST, 7) = "stopped" Then (处理代码) '播放完毕   13.循环播放: mciSendString "play movie repeat", 0&, 0, 0 二、控制声音大小: Dim V As Long mciSendString "status movie volume", V, 0, 0 'V是获取的音量大小值。 V = 50 mciSendString "setaudio movie volume to " & V, &0, 0, 0 'V是设置的音量值 三、设置播放位置.(需事先设定时间格式),格式:Seek 设备名 [to 位置 | to start | to end] Dim P1 as Long, P2 as Long P1 = 100: P2 = 3000 mciSendString "seek movie to ", P1, 0, 0 'P1是当前起始位置,单位:毫秒 mciSendString "seek movie to start", 0&, 0, 0 '定位到开头位置 mciSendString "play movie", 0&, 0, 0 '定位后再播放 或者: mciSendString "play movie FROM P1 to P2",0&, 0, 0 'P1是起始位置,P2是停止位置。单位:毫秒 mciSendString "seek movie to end", 0&, 0, 0 '定位到最后位置 四、在指定控件上播放视频: mciSendString "open AVI 文件名 parent hWnd style child", 0&, 0, 0 其中,hWnd 是控件的句柄 执行上述命令之后,影片会被放置在控件的左上角,且影片的大小不受控件大小的影响,如果想要改变 影片播放的位置及大小,可以在執行 play 指令前先执行 put 指令,格式如下:   mcisendString "put AVI 文件名 window at X Y [Width Height]", 0&, 0, 0 其中:X、Y为影片左上角坐标,Width、Height为影片的宽高度 五、如果播放视频还可控制亮度 Dim B As Long mciSendString "status movie brightness", B, 0, 0 'B是获取的亮度值。 B = 50 mciSendString "setvideo movie brightness to " & B, &0, 0, 0 'B是设置的亮度值 六、录音设置:   录音前,用以下语句初始化   1.设为8位: mciSendString "set wave bitpersample 8", "", 0, 0   2.设为11025Hz mciSendString "set wave samplespersec 11025", "", 0, 0   3.设为立体声: mciSendString "set wave channels 2", "", 0, 0   4.实现PCM格式(不一定正确): MCISENDSTRING "set wave format tag pcm","", 0, 0   5.开始录音: mciSendString "close movie",0&,0,0 mciSendString "open new type WAVEAudio alias movie",0&,0,0 mciSendString "record movie",0&,0,0   6.保存录音到c:\123.wav mciSendString "stop movie",0&,0,0 mciSendString "save movie C:\\123.wav",0&,0,0 mciSendString "close movie",0&,0,0 七、开关光驱: mciSendString "set cdaudio door open", "", 0, 0 '打开 mciSendString "set cdaudio door close", "", 0, 0 '关闭 八、其它   1.设置设备的各种状态(Set) Set alias_name[audio all off][audio all on][time format ms]:   Set命令用来设置设备的各种状态.如:静音,有声音,时间格式为毫秒等.   2.取得设备的状态(Status) Status alias_name[length][mode][position]:   Status命令用来取得设备的状态.如:该媒体文件的长度,该媒体文件所处状态,该媒体文件的当前位置等. 的长度,该媒体文件所处状态,该 媒体文件的当前位置等.

    0
 看不清?
提交回复

如本站内容“对您有用”,欢迎随意打赏,让我们持续更新!

打赏
游客
登录后展示个人签名去登录
0文章 0问题 0回答 0点赞
写作
发布问题
发布文章
关注微信
加QQ群
随机文章
特斯拉大规模裁员:200名自动驾驶部门员工被开
2022-07-01 21:48:30
12GB+1TB卖20999元!华为折叠机皇Mate X2春节特供版曝光
2022-02-24 17:32:20
谷丙转氨酶偏高说明什么问题 谷丙转氨酶偏高的危害
2021-12-05 00:25:43
《侏罗纪世界3》8月18日国内平台首播:反派神似苹果CEO库克
2022-08-22 19:48:47
给贵猫续命的“血猫”:看完让人心疼
2022-06-26 10:48:43
眉毛稀少怎么办 眉毛稀少是什么原因
2022-02-19 09:00:12
龙虾头可不可以食用 龙虾头到底可以使用吗
2022-09-29 22:29:23
中兴Axon 30 Ultra真机上手图抢跑:最薄骁龙888旗舰
2021-12-05 21:55:03
牛奶一天喝多少最好 牛奶的功效和作用
2021-12-05 22:26:52
苹果Mac电脑也要越南制造 富士康开始转移生产线
2022-12-10 13:53:29
头皮屑多怎么改善 头皮屑多的改善方法
2022-03-06 07:27:46
58同城CEO姚劲波两会建议:引导长租房市场健康发展
2021-12-05 22:34:27
喝中药能打新冠疫苗吗 打新冠疫苗注意事项
2021-12-05 00:08:46
苹果将推出新款iPadPro:搭载M2芯片 不开发布会直接卖
2023-04-21 09:26:43
桑德斯炮轰:贝索斯马斯克富可敌国,美国底层却更饥饿
2021-12-06 19:34:13
热门标签
智能手机为何越卖越贵 马斯克加速抢滩一文了解脑机接口 凛冬将至苹果还能靠iphone支撑多久 新野蛮人马斯克 630wrtx 4090解锁极限功耗 马斯克没有打价格战的基因 ipad营收锐减卖不动了 小米13 lite现身小米13家族最便宜版本 感受守护网络安全的黑科技app 感受守护网络安全的黑科技 新一代影像性能旗舰努比亚z50官宣 黑亚当纽约首映式 黑亚当创下巨石强森个人最好成绩 超人归来电影免费观看 超人回归dc 超人回归 贝鲁奇谈贝鲁奇 辐射剧集首张剧照 大超与白狼不可兼得 用废品造的iphone你会买单吗
Copyright © 2025 网站备案号: 闽ICP备2020021158号-10 本站所有信息来自于互联网或网友上传,如有侵权,敬请来信联系我们,1494738443@qq.com 我们立刻删除。
responsive_hankin 主题. Designed by 极速问答社区
赞赏作者

请通过微信、支付宝 APP 扫一扫

感谢您对作者的支持!

 支付宝 微信支付