環境
mac book
chrome(バージョン: 71.0.3578.98(Official Build) (64 ビット))
ConoHa[VPS]
原因を探す
同じディレクトリに音声ファイルを置いて以下のようなパスを指定した場合、再生されなかった。
I_am_hentai.js
var aud; //Audioオブジェクトを入れる変数を最初に用意
function PlaySound(){
aud = new Audio();//Audioオブジェクトを作成する
aud.src="timer.mp3";//同じディレクトリに音声ファイルはあるが、誤ったパス
aud.play();//音声ファイルを再生する
}
原因は、nodeサーバーから音声ファイルが送られていないからなんです。
ローカルに置いたHTMLファイルならAudioオブジェクトを生成したやり方で再生できるが、、、
解決方法
nodeでの音声再生をする場合は、それ専用のプログラムを書く必要がある。
play-soundモジュール使ったりその他いろんな方法で再生できるけど、今回はさっさと簡単に再生したかったので直接パスを指定してしまうおうと考えた。
●まず、音声ファイルをnode.js関係のフォルダからドキュメントルートに移動させる。
●以下のようにパスを直接指定したらすぐに再生された。
I_am_hentai.js
var aud; //Audioオブジェクトを入れる変数を最初に用意
function PlaySound(){
aud = new Audio();//Audioオブジェクトを作成する
aud.src="http://IP/~てきとうなフォルダ/timer.mp3";
aud.play();//音声ファイルを再生する
}
感想
Nodeまだわからないことが多いけど楽しい