WAVファイルの再生
投稿者 zakiYoshi  (高校生)
投稿日時
2013/6/15 17:06:02
wav ファイルの再生方法は主に次の3つがあります。
(1) My.Computer.Audio.Play を使う。
[使用例]
(2) System.Media.SoundPlayer を使う。
[使用例]
(3) Windows API を使う。
[使用例]
(1)(2)の方法は、比較的簡単にwavファイルを再生でき、繰り返し再生にも対応しています。
ただ、同時再生はできず、wavファイル以外は再生できません。
(3)の方法は、wavファイル以外に、mp3やmidi音源にも対応しています。
最後には "close" & path のコマンドを送って、ファイルを閉じなければいけません。
(1) My.Computer.Audio.Play を使う。
[使用例]
Dim path As String = "(wavファイルがある場所)"
'再生を始める。
My.Computer.Audio.Play(path)
(2) System.Media.SoundPlayer を使う。
[使用例]
Dim player As New System.Media.SoundPlayer
Dim path As String = "(wavファイルがある場所)"
'再生を始める。
player.Play(path)
(3) Windows API を使う。
[使用例]
Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" _
(ByVal LpstrCommand As String, ByVal LpstrReturnString As String, _
ByVal uReturnLength As Integer, ByVal hwndCallback As Integer) As Integer
Dim path As String = "(wavファイルがある場所)"
Private Sub PlaySound()
'ファイルを開く。
mciSendString("open """ & path & """", "", 0, 0)
'再生を始める。
mciSendString("play """ & path & """", "", 0, 0)
End Sub
(1)(2)の方法は、比較的簡単にwavファイルを再生でき、繰り返し再生にも対応しています。
ただ、同時再生はできず、wavファイル以外は再生できません。
(3)の方法は、wavファイル以外に、mp3やmidi音源にも対応しています。
最後には "close" & path のコマンドを送って、ファイルを閉じなければいけません。
投稿者 IsZako  (小学生)
投稿日時
2013/6/20 20:28:55
3つとも試しても駄目でした。
何かファイルが足りないのでしょうか。
何かファイルが足りないのでしょうか。
投稿者 bz9  (中学生)
投稿日時
2013/6/21 06:22:48
何がどうダメだったのかを書くと相手は答えやすいですよ。
ココからは僕の予想ですけど、
もちろん再生されません。(だって、 "(wavファイルがある場所)"なんて場所無いもん!)
なので、
もしくは、再生はできているけどスピーカーがミュートになっている とか、
もともとのWavファイル自体が無音ファイル とか。
もともとのWavファイルが無音かどうかを確認するには、
Windows Media Playerで正しく再生できるかどうか確認するといいと思います。
ココからは僕の予想ですけど、
Dim path As String = "(wavファイルがある場所)"
この部分を適切に書き換えていないともちろん再生されません。(だって、 "(wavファイルがある場所)"なんて場所無いもん!)
なので、
Dim path As String = "C:\Windows\Media\chord.wav"
のように、そのファイルのパス(場所)を入力してから再生させるとうまくいくかもしれません。もしくは、再生はできているけどスピーカーがミュートになっている とか、
もともとのWavファイル自体が無音ファイル とか。
もともとのWavファイルが無音かどうかを確認するには、
Windows Media Playerで正しく再生できるかどうか確認するといいと思います。
投稿者 SUZURAN  (社会人)
投稿日時
2013/6/29 10:32:33
ぼくも、bz9さんのやり方でできると思います。
""のなかには、そのファイルのパスを入力するのです。
これでもできない場合は、VBの基本構文を基礎から学んだほうが良いと思います。
応用ができても、基礎ができなければなりません。
""のなかには、そのファイルのパスを入力するのです。
My.Computer.Audio.Play("ぱす")
これでもできない場合は、VBの基本構文を基礎から学んだほうが良いと思います。
応用ができても、基礎ができなければなりません。
投稿者 IsZako  (小学生)
投稿日時
2013/7/3 17:27:16
ファイル名を正しくしたら、ちゃんと動きました。
bz9さん、ありがとうございます。
bz9さん、ありがとうございます。
コードを教えてください。お願いします。