私が取り組んでいる Web アプリケーションでは、PHP スクリプトから生成された URL に基づいて、別のサーバーから webAudio バッファーに WAV オーディオ ファイルを取得する必要があります。
これを行うには、PHP スクリプトで URL を生成し、その URL を使用して、次のように WAV ファイルの内容を配列として取得します。
$this->audioBuffer = file($this->stationAudioURL);
次に、webAudio スクリプトを含むページで、PHP から配列を渡して、webAudio コンテキストでデコードしようとします。
<?php require_once('getSeismicData.php'); ?>
<script type="text/javascript">
var eventOneAudio = <?php echo json_encode($eventOne->audioBuffer); ?>;
var eventTwoAudio = <?php echo json_encode($eventTwo->audioBuffer); ?>;
var eventThreeAudio = <?php echo json_encode($eventThree->audioBuffer); ?>;
var eventOneBuffer = null;
var eventTwoBuffer = null;
var eventThreeBuffer = null;
window.AudioContext = window.AudioContext || window.webkitAudioContext;
var context = new AudioContext();
context.decodeAudioData(eventOneAudio, function(buffer){eventOneBuffer = buffer});
context.decodeAudioData(eventTwoAudio, function(buffer){eventTwoBuffer = buffer});
context.decodeAudioData(eventThreeAudio, function(buffer){eventThreeBuffer = buffer});
これを実装する適切な方法は何ですか?すなわち:
1) WAV ファイルを入手するには、file()
またはどちらを使用する必要がありますか?file_get_contents()
2) javascript に直接 wav ファイルを使用する必要がありますjson_encode()
か?echo
git の完全なソース コード: https://github.com/felakuti4life/Seismokraft