音声ファイルを解析して波形を出力 - js
説明
音声ファイルを解析して波形をブラウザに出力してみたいと思います。音声ファイルは、どこにあってもいいけれど(自分のサーバーの中とか)httpもしくはhttps通信が出来る環境でなければいけません。
実装自体はwavesurfer.js
という素晴らしいフレームワークを用いて比較的簡単に実装をすることができます。比較的...いや本当に簡単です!。
環境
- https
- http
- javascript
- wavesurfer.js
- Google Chrome
実行
実際に実行してみるとこのようになります。波形の色を代えたり再生位置を直感的に操作したりすることができます。
たったこれだけ
たった6行で音声ファイルを解析して波形を出力することが出来るようになります。
var wavesurfer = WaveSurfer.create({
container: '#waveform',
waveColor: 'black',
progressColor: 'purple'
});
wavesurfer.load('https://ia902606.us.archive.org/35/items/shortpoetry_047_librivox/song_cjrg_teasdale_64kb.mp3');
実装
サウンド素材、CDNが消えない限りコピペで動くはず。もし自分でwavesurfer.js
を使いたければクローンとかして自分でパスを指定してください。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
</head>
<body>
<script src="https://cdnjs.cloudflare.com/ajax/libs/wavesurfer.js/1.2.3/wavesurfer.min.js"></script>
<div id="waveform"> </div>
<div style="text-align: center">
<button class="btn btn-primary" onclick="wavesurfer.playPause()">
<i class="glyphicon glyphicon-play"></i>Play</button>
</div>
<script language="JavaScript">
var wavesurfer = WaveSurfer.create({
container: '#waveform',
waveColor: 'black',
progressColor: 'purple'
});
wavesurfer.load('https://ia902606.us.archive.org/35/items/shortpoetry_047_librivox/song_cjrg_teasdale_64kb.mp3');
</script>
</body>
</html>
Author And Source
この問題について(音声ファイルを解析して波形を出力 - js), 我々は、より多くの情報をここで見つけました https://qiita.com/rh_/items/ff22cb296dc3b242da1d著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .