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

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

2021-12-06 21:43
1600  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群
随机文章
马斯克首封邮件叫停推特远程办公:员工每周至少在办公室40小时
2023-03-26 09:51:32
女孩写作业突然尖叫开始找爸爸 家长难以接受蛋糕里吃出壁虎干尸
2021-12-09 20:58:25
糖尿病的饮食疗法
2022-05-23 16:04:03
四磨汤口服液的功效与作用 四磨汤口服液功效作用
2021-12-05 00:19:13
花胶是什么东西 花胶怎么食用
2021-12-05 23:17:23
消息称iPhone 14 Pro/Pro Max用打孔屏:LG和三星共同提供
2021-12-24 08:20:26
香港疫情9月19日最新消息情况 新增确诊13例累计确诊逾5000例
2021-12-09 21:13:46
比手工耿实用!农村大叔用废铁造车:可变形、可任意组合
2022-02-19 08:41:09
残酷底层物语:一位工地大学生的牛马生活
2021-12-15 08:13:38
下身一到晚上就开始不停的痒
2022-04-03 09:03:41
华为首次曝光“天才少年”研究!入职不到一年就立大功
2021-12-09 20:55:45
2022考研报名人数达457万 报考人数连年飙升:网友祝福考生都考出好成绩
2021-12-23 08:08:49
广告文案被指侮辱女性 茶颜悦色道歉:立即召回相关产品
2021-12-09 21:30:33
中国人均国民总收入首破1万美元
2021-12-05 22:21:10
敷完面膜要不要洗脸 敷面膜刺痛的原因
2021-12-18 07:50:40
热门标签
智能手机为何越卖越贵 马斯克加速抢滩一文了解脑机接口 凛冬将至苹果还能靠iphone支撑多久 新野蛮人马斯克 630wrtx 4090解锁极限功耗 马斯克没有打价格战的基因 ipad营收锐减卖不动了 小米13 lite现身小米13家族最便宜版本 感受守护网络安全的黑科技app 感受守护网络安全的黑科技 新一代影像性能旗舰努比亚z50官宣 黑亚当纽约首映式 黑亚当创下巨石强森个人最好成绩 超人归来电影免费观看 超人回归dc 超人回归 贝鲁奇谈贝鲁奇 辐射剧集首张剧照 大超与白狼不可兼得 用废品造的iphone你会买单吗
Copyright © 2025 网站备案号: 闽ICP备2020021158号-10 本站所有信息来自于互联网或网友上传,如有侵权,敬请来信联系我们,1494738443@qq.com 我们立刻删除。
responsive_hankin 主题. Designed by 极速问答社区
赞赏作者

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

感谢您对作者的支持!

 支付宝 微信支付