如何在VB中播放mp3 Or mp2文件

small_roc 2002-07-27 03:36:57
实现播放功能
进程控制和音量控制
...全文
78 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Struggling 2002-07-28
  • 打赏
  • 举报
回复
类模块
Option Explicit
Private hmem As Long
Const MMSYSERR_NOERROR = 0
Const MAXPNAMELEN = 32
Const MIXER_LONG_NAME_CHARS = 64
Const MIXER_SHORT_NAME_CHARS = 16
Const MIXER_GETLINEINFOF_COMPONENTTYPE = &H3&
Const MIXER_GETCONTROLDETAILSF_VALUE = &H0&
Const MIXER_SETCONTROLDETAILSF_VALUE = &H0&
Const MIXER_GETLINECONTROLSF_ONEBYTYPE = &H2&
Const MIXERLINE_COMPONENTTYPE_DST_FIRST = &H0&
Const MIXERLINE_COMPONENTTYPE_SRC_FIRST = &H1000&
Const MIXERLINE_COMPONENTTYPE_DST_SPEAKERS = _
(MIXERLINE_COMPONENTTYPE_DST_FIRST + 4)
Const MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE = _
(MIXERLINE_COMPONENTTYPE_SRC_FIRST + 3)
Const MIXERLINE_COMPONENTTYPE_SRC_LINE = _
(MIXERLINE_COMPONENTTYPE_SRC_FIRST + 2)
Const MIXERCONTROL_CT_CLASS_FADER = &H50000000
Const MIXERCONTROL_CT_UNITS_UNSIGNED = &H30000
Const MIXERCONTROL_CONTROLTYPE_FADER = _
(MIXERCONTROL_CT_CLASS_FADER Or _
MIXERCONTROL_CT_UNITS_UNSIGNED)
Const MIXERCONTROL_CONTROLTYPE_VOLUME = _
(MIXERCONTROL_CONTROLTYPE_FADER + 1)

Private Type MIXERCONTROLDETAILS
cbStruct As Long
dwControlID As Long
cChannels As Long
item As Long
cbDetails As Long
paDetails As Long
End Type

在模块中加入如下代码,要添加CommonDialog空件,两个VScroll空件,分别取名为vsVolume,vsMic。
Option Explicit
Const MMSYSERR_NOERROR = 0
Const SND_ASYNC = &H1
Const SND_NODEFAULT = &H2
Const SND_PURGE = &H40
Const SND_FILENAME = &H20000
Dim MyVolume As clsVolume
'
'Play a wave file.
Private Declare Function PlaySound Lib "winmm.dll" _
Alias "PlaySoundA" (ByVal lpszName As String, _
ByVal hModule As Long, ByVal dwFlags As Long) As Long

Private Sub Form_Load()
Set MyVolume = New clsVolume
MyVolume.meOpenMixer
If MyVolume.prMixerErr = MMSYSERR_NOERROR Then
With vsVolume
.Max = MyVolume.prSpeakerMinVolume
.Min = MyVolume.prSpeakerMaxVolume \ 2
.SmallChange = 1000
.LargeChange = 1000
End With
With vsMic
.Max = MyVolume.prMicMinVolume
.Min = MyVolume.prMicMaxVolume \ 2
.SmallChange = 1000
.LargeChange = 1000
.Enabled = True
End With
End If
End Sub

上面调用API函数PlaySound实现对声音的控制。
YHeng 2002-07-28
  • 打赏
  • 举报
回复
WinMe 以上内置mp3解码引擎,无需控件,直接调用mciSendString!!!!!!
netbian 2002-07-28
  • 打赏
  • 举报
回复
ActiveMoive
media player控件
通过"工程"-"部件"添加
spehio2002 2002-07-28
  • 打赏
  • 举报
回复
ActiveMoive控件
small_roc 2002-07-28
  • 打赏
  • 举报
回复
To spehio2002(苏宁)
可是工程中将 ActiveMoive控件加在窗体内 执行时报错
System Error &H80004005(-2147467259) 未指定的错误
small_roc 2002-07-28
  • 打赏
  • 举报
回复
To spehio2002(苏宁)
可是工程中将 ActiveMoive控件加在窗体内 执行时报错
System Error &H80004005(-2147467259) 未指定的错误
wgku 2002-07-27
  • 打赏
  • 举报
回复
还不如自己写程序调用media player控件

http://www.google.com/search?hl=zh-CN&ie=UTF-8&oe=UTF-8&q=MP3%E6%92%AD%E6%94%BE%E5%99%A8%E3%80%80%E6%BA%90%E4%BB%A3%E7%A0%81%E3%80%80VB%E3%80%80&btnG=Google%E6%90%9C%E7%B4%A2&lr=lang_zh-CN%7Clang_zh-TW
Sean918 2002-07-27
  • 打赏
  • 举报
回复
我有控件,是调用W2000 的mediaplay

要不要?

给我邮箱

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧