Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
実際にSoundJSを使ってみて分かったこと
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
448jp | OKI Yoshiya
July 29, 2013
Programming
4k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
実際にSoundJSを使ってみて分かったこと
第4回 CreateJS勉強会 発表資料
448jp | OKI Yoshiya
July 29, 2013
More Decks by 448jp | OKI Yoshiya
See All by 448jp | OKI Yoshiya
今から始めるClaude Code超入門
448jp
8
11k
人はなぜコミュニティとつながると幸せを感じるのか
448jp
3
430
Webデザイナーが押さえておきたいエンジニアとの連携ポイント
448jp
0
4.3k
合意形成のためのFigma活用術
448jp
1
260
書く・即・DONEな仕組みをNuxtで作る
448jp
0
470
神速でワイヤーフレームを作るためのライブラリ
448jp
1
960
Figmaで神速ドキュメント作成術
448jp
3
2.8k
今から始めるFigma超入門
448jp
0
1.8k
零細Web制作会社のリモートワーク事情
448jp
0
540
Other Decks in Programming
See All in Programming
分散システム、なんですぐ死んでしまうん?耐障害性を高めたいあなたのためのレジリエンスパターン入門
mshibuya
7
5.8k
エンジニアにデザインハーネスを 〜デザインプロセスを規定するためのハーネス〜 / Design harness from an engineer's perspective
rkaga
2
1.4k
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
490
Embedded SREと共に達成した会員管理システムのAWS移行 - SRE NEXT 2026 ランチスポンサーセッション
niftycorp
PRO
1
2.4k
Developing with AI Agents — Codex, Claude Code & Cowork Practical Guide
x5gtrn
PRO
0
1.4k
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
0
100
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
17
9k
継続モナドとリアクティブプログラミング
yukikurage
3
560
えっ!!コードを読まずに開発を!?
hananouchi
0
190
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
0
120
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
160
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
170
Featured
See All Featured
Odyssey Design
rkendrick25
PRO
2
730
Deep Space Network (abreviated)
tonyrice
0
220
The SEO Collaboration Effect
kristinabergwall1
1
500
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
890
Embracing the Ebb and Flow
colly
88
5.1k
Making Projects Easy
brettharned
120
6.7k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
63
55k
How to Talk to Developers About Accessibility
jct
2
360
New Earth Scene 8
popppiees
3
2.4k
Navigating Team Friction
lara
192
16k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
460
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Transcript
実際に SoundJSを 使ってみて分かったこと 沖 良矢(世路庵) 2013.7.26 (Fri) 第4回 CreateJS勉強会
自己紹介 沖 良矢 / OKI Yoshiya @448jp インタラクションデザイナー UNIQLO HAPPY
GIFT (2013) Web Designing (2009~) McCANN WG JAPAN (2012)
今日話すこと SoundJS、基本の「き」 サウンドを再生する仕組み ファイル形式に注意!
SoundJS、基本の「き」 とりあえず音を鳴らしてみよう
SoundJSを 使ったことありますか?
サウンドを再生する createjs.Sound.addEventListener("fileload", fileLoadHandler); createjs.Sound.registerSound("bgm.mp4"); function fileLoadHandler(e) { createjs.Sound.play(e.src); console.log(e); //
{target: function, type: "fileload", src: "bgm.mp4", id: undefined, data: 2} };
SoundJSの動作に canvas要素やEaselJSは不要です。 (もちろん使ってもOK)
複数のサウンドを再生する createjs.Sound.addEventListener("fileload", fileLoadHandler); createjs.Sound.registerSound("bgm.mp4", "bgm"); createjs.Sound.registerSound("se.mp3", "se"); function fileLoadHandler(e) {
createjs.Sound.play("bgm"); //createjs.Sound.play("se"); };
PreloadJSとの組み合わせ var queue = new createjs.LoadQueue(false); queue.installPlugin(createjs.Sound); queue.addEventListener("complete", handler); var
manifest = [ {src: "bgm.mp4", id: "bgm"}, {src: "se.mp3", id: "se"} ]; queue.loadManifest(manifest); function handler(e) { queue.removeEventListener("complete"); createjs.Sound.play("bgm"); }
サウンドを再生する仕組み 動作原理を理解しよう
ところで、 SoundJSは どうやって サウンドを 再生しているのでしょう?
SoundJSのプラグイン HTMLAudioPlugin WebAudioPlugin FlashPlugin
SoundJSを支える3つのテクノロジー <audio> Web Audio Flash
つまり、 Webブラウザが audio要素、 Web Audio、 Flash、 のいずれかを サポートしている 必要があります。
プラグインを指定する createjs.Sound.registerPlugins([ createjs.WebAudioPlugin, createjs.HTMLAudioPlugin, createjs.FlashPlugin ]); createjs.Sound.addEventListener("fileload", fileLoadHandler); createjs.Sound.registerSound("bgm.mp4"); function
fileLoadHandler(e) { createjs.Sound.play(e.src); };
audio要素のサポート状況 via. http://caniuse.com
Web Audioのサポート状況 via. http://caniuse.com
Flashのサポート状況 言わなくても 分かりますね
SoundJSのテスト環境 Internet Explorer 9、10 Chrome Firefox
Safari Opera iOS 6以上 Android Chrome ※FlashPluginを使うとInternet Explorer 7、8も動作可能。 ※BlackBerryブラウザでも簡易テストをしています。
ファイル形式に注意! 鳴らない、サウンド
SoundJSが想定しているファイル形式 mp3 ogg mpeg wav m4a mp4 aiff wma mid
ファイル形式のサポート状況 Webブラウザ MP3 WAV PCM WebM Vorbis AAC Ogg Vorbis
Internet Explorer 9 × × 9 × Google Chrome ◦ ◦ ◦ ◦ ◦ Firefox 21 & Win ◦ ◦ 21 & Win ◦ Opera ◦ ◦ ◦ ◦ ◦ Safari ◦ ◦ × ◦ ◦ ※Internet Explorer以外は基本的に最新バージョンを想定。
複数のファイル形式を指定する その1 createjs.Sound.addEventListener("fileload", fileLoadHandler); createjs.Sound.registerSound("bgm.mp4|bgm.wav"); function fileLoadHandler(e) { createjs.Sound.play(e.src); };
複数のファイル形式を指定する その2 var queue = new createjs.LoadQueue(false); queue.installPlugin(createjs.Sound); queue.addEventListener("complete", handler);
var manifest = [ {src: "bgm.mp4", id: "bgm"}, {src: "bgm.wav", id: "bgm"}, {src: "se.mp3", id: "se"}, {src: "se.wav", id: "se"} ]; queue.loadManifest(manifest); function handler(e) { queue.removeEventListener("complete"); createjs.Sound.play("bgm"); }
まとめ 実際にSoundJSを使ってみて分かったこと
まとめ 意外とカンタン プラグインとファイル形式には注意が必要 モバイルでは時期尚早かもしれない
Thank you ! Photo Credit: Lst1984 Marco Bellucci Abdulmajeed Al.mutawee