SlideShare a Scribd company logo
1 of 10
Download to read offline
Sound Module with OpenSL ES 
2014. 11. 24 
Version : 1.0.0 
made by 최대우 
R&D
2 
CONTENTS. 
1. OpenSL ES란? …………………………………….. 3 
2. Sound Player Native Method .……………………. 4 
a) createEngine …….………………………. 4 
b) createBufferQueueAudioPlayer ……...... 4 
c) createAssetAudioPlayer ……….……….. 5 
d) setPlayingAssetAudioPlayer ….………... 5 
e) shutdown ……………………………………… 5 
3. Sound Player Android Activity .……………………. 6 
4. Sound Player Layout ……………....…….………… 8 
5. Run on Android SmartPhone ..…………………….. 9
3 
1. 
OpenSL ES란 ? 
알고 보자 OpenSL ES ! 
Audio File 재생 및 녹음 기능 
Audio Effect 기능 
MIDI (Musical Instrument Digital Interface) 파일 재생 기능
4 
2. 
Sound Player Native Method 
a)void createEngine(JNIEnv*, jclass) - create engine - realize the engine - get the engine interface, which is needed in order to create other objects - create output mix, with environmental reverb specified as a non-required interface - realize the output mix b) void createBufferQueueAudioPlayer(JNIEnv*, jclass) - configure audio source - configure audio sink - create audio player - realize the player - get the play interface - get the buffer queue interface - register callback on the buffer queue - get the effect send interface - get the volume interface - set the player's state to playing
5 
2. 
c) jboolean createAssetAudioPlayer(JNIEnv*, jclass, jobject, jstring, filename) 
- use asset manager to open asset by filename 
- open asset as file descriptor 
- create audio player 
- realize the output mix, realize the player 
- get the play, seek, mute, volume interface 
- enable whole file looping 
d) void setPlayingAssetAudioPlayer(JNIEnv*, jclass, jboolean) 
- set play mode 
e) shutdown() 
- destroy all of audio player object, and invalidate all associated interfaces 
Sound Player Native Method
6 
3. 
Sound Player Android Activity 
Audio Engine and Buffuer be loaded when App create 
Use Spinner 
for Select Audio File
7 
3. 
Sound Player Android Activity 
Triggered onClick Event 
when playing state and Selected Different File, 
shutdown all of audio player and 
Create new Audio Engine and Buffer. 
Toggle player state.
8 
4. 
Sound Player Layout
9 
5. 
Run on Android SmartPhone
10

More Related Content

What's hot

iOS Game Development: When Cocoa Met Cocos...
iOS Game Development: When Cocoa Met Cocos...iOS Game Development: When Cocoa Met Cocos...
iOS Game Development: When Cocoa Met Cocos...Joseph Ku
 
Borderlands 2-save-location
Borderlands 2-save-locationBorderlands 2-save-location
Borderlands 2-save-locationssuser1eca7d
 
Learning Kodu: Basic Video Game Design for Kids
Learning Kodu: Basic Video Game Design for KidsLearning Kodu: Basic Video Game Design for Kids
Learning Kodu: Basic Video Game Design for KidsSt. Petersburg College
 
Sound generating
Sound generatingSound generating
Sound generatingLewisB2013
 
Build Your Own Android Tablet
Build Your Own Android TabletBuild Your Own Android Tablet
Build Your Own Android TabletSGAndroidDevs
 
Spesifikasi laptop 2
Spesifikasi laptop 2Spesifikasi laptop 2
Spesifikasi laptop 2Adhi Susanto
 
10.1. Android Audio
10.1. Android Audio10.1. Android Audio
10.1. Android AudioOum Saokosal
 
Nick Tsagaris - How to play battlefield 2042 early?
Nick Tsagaris - How to play battlefield 2042 early?Nick Tsagaris - How to play battlefield 2042 early?
Nick Tsagaris - How to play battlefield 2042 early?Nick Tsagaris
 
Game audio 2 - Retro Mystery Intro
Game audio 2 - Retro Mystery IntroGame audio 2 - Retro Mystery Intro
Game audio 2 - Retro Mystery IntroNathan_West
 
Console design template
Console design templateConsole design template
Console design templateLewisB2013
 
Ig1 task 2 analysis work sheet 3
Ig1 task 2 analysis work sheet 3Ig1 task 2 analysis work sheet 3
Ig1 task 2 analysis work sheet 3Luke Summers
 
Console comparsions
Console comparsionsConsole comparsions
Console comparsionscopelandadam
 
Girl Geek Dinners - Clojure 101
Girl Geek Dinners - Clojure 101Girl Geek Dinners - Clojure 101
Girl Geek Dinners - Clojure 101Logan Campbell
 
Presupuesto pc 1500
Presupuesto pc 1500Presupuesto pc 1500
Presupuesto pc 1500MariaMuoz284
 
Shall We Play A Game - BSides Cape Town 2018
Shall We Play A Game - BSides Cape Town 2018Shall We Play A Game - BSides Cape Town 2018
Shall We Play A Game - BSides Cape Town 2018HypnZA
 

What's hot (20)

iOS Game Development: When Cocoa Met Cocos...
iOS Game Development: When Cocoa Met Cocos...iOS Game Development: When Cocoa Met Cocos...
iOS Game Development: When Cocoa Met Cocos...
 
Borderlands 2-save-location
Borderlands 2-save-locationBorderlands 2-save-location
Borderlands 2-save-location
 
Forza 5 analysis
Forza 5 analysisForza 5 analysis
Forza 5 analysis
 
Learning Kodu: Basic Video Game Design for Kids
Learning Kodu: Basic Video Game Design for KidsLearning Kodu: Basic Video Game Design for Kids
Learning Kodu: Basic Video Game Design for Kids
 
Sound generating
Sound generatingSound generating
Sound generating
 
Build Your Own Android Tablet
Build Your Own Android TabletBuild Your Own Android Tablet
Build Your Own Android Tablet
 
Spesifikasi laptop 2
Spesifikasi laptop 2Spesifikasi laptop 2
Spesifikasi laptop 2
 
Beagleboard xm-setup
Beagleboard xm-setupBeagleboard xm-setup
Beagleboard xm-setup
 
10.1. Android Audio
10.1. Android Audio10.1. Android Audio
10.1. Android Audio
 
Nick Tsagaris - How to play battlefield 2042 early?
Nick Tsagaris - How to play battlefield 2042 early?Nick Tsagaris - How to play battlefield 2042 early?
Nick Tsagaris - How to play battlefield 2042 early?
 
We breath oxygen
We breath oxygenWe breath oxygen
We breath oxygen
 
Dmc4 sound analysis
Dmc4 sound analysisDmc4 sound analysis
Dmc4 sound analysis
 
Game audio 2 - Retro Mystery Intro
Game audio 2 - Retro Mystery IntroGame audio 2 - Retro Mystery Intro
Game audio 2 - Retro Mystery Intro
 
Console design template
Console design templateConsole design template
Console design template
 
Ig1 task 2 analysis work sheet 3
Ig1 task 2 analysis work sheet 3Ig1 task 2 analysis work sheet 3
Ig1 task 2 analysis work sheet 3
 
Console comparsions
Console comparsionsConsole comparsions
Console comparsions
 
Girl Geek Dinners - Clojure 101
Girl Geek Dinners - Clojure 101Girl Geek Dinners - Clojure 101
Girl Geek Dinners - Clojure 101
 
Presupuesto pc 1500
Presupuesto pc 1500Presupuesto pc 1500
Presupuesto pc 1500
 
Neo cd redux
Neo cd reduxNeo cd redux
Neo cd redux
 
Shall We Play A Game - BSides Cape Town 2018
Shall We Play A Game - BSides Cape Town 2018Shall We Play A Game - BSides Cape Town 2018
Shall We Play A Game - BSides Cape Town 2018
 

Similar to OpenSL ES Sound Module Guide

Chapt 1 (part 2) installing the sdk and exploring the workspace
Chapt 1 (part 2)   installing the sdk and exploring the workspaceChapt 1 (part 2)   installing the sdk and exploring the workspace
Chapt 1 (part 2) installing the sdk and exploring the workspaceMuhd Basheer
 
Android Audio & OpenSL
Android Audio & OpenSLAndroid Audio & OpenSL
Android Audio & OpenSLYoss Cohen
 
Windows phone 7 xna
Windows phone 7 xnaWindows phone 7 xna
Windows phone 7 xnaGlen Gordon
 
The sounds of Android (Android Makers 2018)
The sounds of Android (Android Makers 2018)The sounds of Android (Android Makers 2018)
The sounds of Android (Android Makers 2018)Yannick Lemin
 
Building Modern Audio Apps with AVAudioEngine
Building Modern Audio Apps with AVAudioEngineBuilding Modern Audio Apps with AVAudioEngine
Building Modern Audio Apps with AVAudioEngineBob McCune
 
Music Computing - StudioBLADE Gen 3 Manual Full
Music Computing - StudioBLADE Gen 3 Manual FullMusic Computing - StudioBLADE Gen 3 Manual Full
Music Computing - StudioBLADE Gen 3 Manual FullJames Edwin Rhone Jr
 
XNA and Windows Phone
XNA and Windows PhoneXNA and Windows Phone
XNA and Windows PhoneGlen Gordon
 
1.playing audio in javaJava sound API(package javax.sound) support.pdf
1.playing audio in javaJava sound API(package javax.sound) support.pdf1.playing audio in javaJava sound API(package javax.sound) support.pdf
1.playing audio in javaJava sound API(package javax.sound) support.pdfinfo30292
 
Designing of media player
Designing of media playerDesigning of media player
Designing of media playerNur Islam
 
Creating a serious game with the Unity 3D Game Engine and the importance of m...
Creating a serious game with the Unity 3D Game Engine and the importance of m...Creating a serious game with the Unity 3D Game Engine and the importance of m...
Creating a serious game with the Unity 3D Game Engine and the importance of m...danielandlubo
 
Web Audio Made Easy with Howler.js
Web Audio Made Easy with Howler.jsWeb Audio Made Easy with Howler.js
Web Audio Made Easy with Howler.jsJames Simpson
 
Android Multimedia Player Project Presentation
Android Multimedia Player Project PresentationAndroid Multimedia Player Project Presentation
Android Multimedia Player Project PresentationRashmi Gupta
 
MOSS 2016, Bucharest, Romania - Designing the IoT Jukebox with Brillo
MOSS 2016, Bucharest, Romania - Designing the IoT Jukebox with BrilloMOSS 2016, Bucharest, Romania - Designing the IoT Jukebox with Brillo
MOSS 2016, Bucharest, Romania - Designing the IoT Jukebox with BrilloConstantin Musca
 
Ig2 task 1 work sheet connor martin
Ig2 task 1 work sheet connor martinIg2 task 1 work sheet connor martin
Ig2 task 1 work sheet connor martinKalen612
 

Similar to OpenSL ES Sound Module Guide (20)

Chapt 1 (part 2) installing the sdk and exploring the workspace
Chapt 1 (part 2)   installing the sdk and exploring the workspaceChapt 1 (part 2)   installing the sdk and exploring the workspace
Chapt 1 (part 2) installing the sdk and exploring the workspace
 
JAVA Media Player
JAVA Media PlayerJAVA Media Player
JAVA Media Player
 
Android Audio & OpenSL
Android Audio & OpenSLAndroid Audio & OpenSL
Android Audio & OpenSL
 
Windows phone 7 xna
Windows phone 7 xnaWindows phone 7 xna
Windows phone 7 xna
 
The sounds of Android (Android Makers 2018)
The sounds of Android (Android Makers 2018)The sounds of Android (Android Makers 2018)
The sounds of Android (Android Makers 2018)
 
Building Modern Audio Apps with AVAudioEngine
Building Modern Audio Apps with AVAudioEngineBuilding Modern Audio Apps with AVAudioEngine
Building Modern Audio Apps with AVAudioEngine
 
Music Computing - StudioBLADE Gen 3 Manual Full
Music Computing - StudioBLADE Gen 3 Manual FullMusic Computing - StudioBLADE Gen 3 Manual Full
Music Computing - StudioBLADE Gen 3 Manual Full
 
XNA and Windows Phone
XNA and Windows PhoneXNA and Windows Phone
XNA and Windows Phone
 
1.playing audio in javaJava sound API(package javax.sound) support.pdf
1.playing audio in javaJava sound API(package javax.sound) support.pdf1.playing audio in javaJava sound API(package javax.sound) support.pdf
1.playing audio in javaJava sound API(package javax.sound) support.pdf
 
Designing of media player
Designing of media playerDesigning of media player
Designing of media player
 
Unity
UnityUnity
Unity
 
Android media
Android mediaAndroid media
Android media
 
Creating a serious game with the Unity 3D Game Engine and the importance of m...
Creating a serious game with the Unity 3D Game Engine and the importance of m...Creating a serious game with the Unity 3D Game Engine and the importance of m...
Creating a serious game with the Unity 3D Game Engine and the importance of m...
 
Web Audio Made Easy with Howler.js
Web Audio Made Easy with Howler.jsWeb Audio Made Easy with Howler.js
Web Audio Made Easy with Howler.js
 
Exoplayer 2
Exoplayer  2Exoplayer  2
Exoplayer 2
 
Android Multimedia Player Project Presentation
Android Multimedia Player Project PresentationAndroid Multimedia Player Project Presentation
Android Multimedia Player Project Presentation
 
Presentation final
Presentation finalPresentation final
Presentation final
 
IG2 Task 1
IG2 Task 1 IG2 Task 1
IG2 Task 1
 
MOSS 2016, Bucharest, Romania - Designing the IoT Jukebox with Brillo
MOSS 2016, Bucharest, Romania - Designing the IoT Jukebox with BrilloMOSS 2016, Bucharest, Romania - Designing the IoT Jukebox with Brillo
MOSS 2016, Bucharest, Romania - Designing the IoT Jukebox with Brillo
 
Ig2 task 1 work sheet connor martin
Ig2 task 1 work sheet connor martinIg2 task 1 work sheet connor martin
Ig2 task 1 work sheet connor martin
 

More from dgmit2009

제 6회 DGMIT UI&UX 컨퍼런스: 디자인 전문기업 성공 사례
 제 6회 DGMIT UI&UX 컨퍼런스: 디자인 전문기업 성공 사례 제 6회 DGMIT UI&UX 컨퍼런스: 디자인 전문기업 성공 사례
제 6회 DGMIT UI&UX 컨퍼런스: 디자인 전문기업 성공 사례dgmit2009
 
제 6회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스 2
 제 6회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스 2 제 6회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스 2
제 6회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스 2dgmit2009
 
제 6회 DGMIT UI&UX 컨퍼런스: 일러스트와 디자인
 제 6회 DGMIT UI&UX 컨퍼런스: 일러스트와 디자인 제 6회 DGMIT UI&UX 컨퍼런스: 일러스트와 디자인
제 6회 DGMIT UI&UX 컨퍼런스: 일러스트와 디자인dgmit2009
 
제 6회 DGMIT R&D 컨퍼런스: The Clickjacking attackXFrameOptions
제 6회 DGMIT R&D 컨퍼런스: The Clickjacking attackXFrameOptions제 6회 DGMIT R&D 컨퍼런스: The Clickjacking attackXFrameOptions
제 6회 DGMIT R&D 컨퍼런스: The Clickjacking attackXFrameOptionsdgmit2009
 
제 5회 DGMIT R&D 컨퍼런스: 생성자 방식의 상속
제 5회 DGMIT R&D 컨퍼런스: 생성자 방식의 상속제 5회 DGMIT R&D 컨퍼런스: 생성자 방식의 상속
제 5회 DGMIT R&D 컨퍼런스: 생성자 방식의 상속dgmit2009
 
제 5회 DGMIT R&D 컨퍼런스: NODE.JS란?
제 5회 DGMIT R&D 컨퍼런스: NODE.JS란?제 5회 DGMIT R&D 컨퍼런스: NODE.JS란?
제 5회 DGMIT R&D 컨퍼런스: NODE.JS란?dgmit2009
 
제 5회 DGMIT R&D 컨퍼런스: Iframe
제 5회 DGMIT R&D 컨퍼런스: Iframe제 5회 DGMIT R&D 컨퍼런스: Iframe
제 5회 DGMIT R&D 컨퍼런스: Iframedgmit2009
 
제 5회 DGMIT R&D 컨퍼런스: Facebook 연동
 제 5회 DGMIT R&D 컨퍼런스: Facebook 연동 제 5회 DGMIT R&D 컨퍼런스: Facebook 연동
제 5회 DGMIT R&D 컨퍼런스: Facebook 연동dgmit2009
 
제 5회 R&D 컨퍼런스 _양진희_20141125
제 5회 R&D 컨퍼런스 _양진희_20141125제 5회 R&D 컨퍼런스 _양진희_20141125
제 5회 R&D 컨퍼런스 _양진희_20141125dgmit2009
 
제 5회 DGMIT R&D 컨퍼런스: JavsScript Event Bubbling & Capturing
제 5회 DGMIT R&D 컨퍼런스: JavsScript Event Bubbling & Capturing제 5회 DGMIT R&D 컨퍼런스: JavsScript Event Bubbling & Capturing
제 5회 DGMIT R&D 컨퍼런스: JavsScript Event Bubbling & Capturingdgmit2009
 
제 5회 DGMIT R&D 컨퍼런스: HTML Graphics AP
 제 5회 DGMIT R&D 컨퍼런스: HTML Graphics AP 제 5회 DGMIT R&D 컨퍼런스: HTML Graphics AP
제 5회 DGMIT R&D 컨퍼런스: HTML Graphics APdgmit2009
 
제 5회 DGMIT UI&UX 컨퍼런스: 브랜드 디자인
제 5회 DGMIT UI&UX 컨퍼런스: 브랜드 디자인제 5회 DGMIT UI&UX 컨퍼런스: 브랜드 디자인
제 5회 DGMIT UI&UX 컨퍼런스: 브랜드 디자인dgmit2009
 
제 5회 DGMIT UI&UX 컨퍼런스: 2015 웹디자인 트렌드
제 5회 DGMIT UI&UX 컨퍼런스: 2015 웹디자인 트렌드제 5회 DGMIT UI&UX 컨퍼런스: 2015 웹디자인 트렌드
제 5회 DGMIT UI&UX 컨퍼런스: 2015 웹디자인 트렌드dgmit2009
 
제 5회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스
제 5회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스제 5회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스
제 5회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스dgmit2009
 
제 5회 DGMIT UI&UX 컨퍼런스: 세계최초의 UX디자이너 Walt Disney
제 5회 DGMIT UI&UX 컨퍼런스: 세계최초의 UX디자이너 Walt Disney제 5회 DGMIT UI&UX 컨퍼런스: 세계최초의 UX디자이너 Walt Disney
제 5회 DGMIT UI&UX 컨퍼런스: 세계최초의 UX디자이너 Walt Disneydgmit2009
 
제 4회 DGMIT R&D 컨퍼런스 : 컨퍼런스 개인 프로젝트 발표
제 4회 DGMIT R&D 컨퍼런스 : 컨퍼런스 개인 프로젝트 발표제 4회 DGMIT R&D 컨퍼런스 : 컨퍼런스 개인 프로젝트 발표
제 4회 DGMIT R&D 컨퍼런스 : 컨퍼런스 개인 프로젝트 발표dgmit2009
 
제 4회 DGMIT R&D 컨퍼런스 : Making a JavaScript based Application in Mac OS X
제 4회 DGMIT R&D 컨퍼런스 : Making a JavaScript based Application in Mac OS X제 4회 DGMIT R&D 컨퍼런스 : Making a JavaScript based Application in Mac OS X
제 4회 DGMIT R&D 컨퍼런스 : Making a JavaScript based Application in Mac OS Xdgmit2009
 
제 4회 DGMIT R&D 컨퍼런스 : REST API - 리소스 지향적 아키텍처
제 4회 DGMIT R&D 컨퍼런스 : REST API - 리소스 지향적 아키텍처제 4회 DGMIT R&D 컨퍼런스 : REST API - 리소스 지향적 아키텍처
제 4회 DGMIT R&D 컨퍼런스 : REST API - 리소스 지향적 아키텍처dgmit2009
 
제 4회 DGMIT R&D 컨퍼런스 : IIFE와 QA공통항목
제 4회 DGMIT R&D 컨퍼런스 : IIFE와 QA공통항목제 4회 DGMIT R&D 컨퍼런스 : IIFE와 QA공통항목
제 4회 DGMIT R&D 컨퍼런스 : IIFE와 QA공통항목dgmit2009
 
제 4회 DGMIT R&D 컨퍼런스 : Android NDK
제 4회 DGMIT R&D 컨퍼런스 : Android NDK제 4회 DGMIT R&D 컨퍼런스 : Android NDK
제 4회 DGMIT R&D 컨퍼런스 : Android NDKdgmit2009
 

More from dgmit2009 (20)

제 6회 DGMIT UI&UX 컨퍼런스: 디자인 전문기업 성공 사례
 제 6회 DGMIT UI&UX 컨퍼런스: 디자인 전문기업 성공 사례 제 6회 DGMIT UI&UX 컨퍼런스: 디자인 전문기업 성공 사례
제 6회 DGMIT UI&UX 컨퍼런스: 디자인 전문기업 성공 사례
 
제 6회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스 2
 제 6회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스 2 제 6회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스 2
제 6회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스 2
 
제 6회 DGMIT UI&UX 컨퍼런스: 일러스트와 디자인
 제 6회 DGMIT UI&UX 컨퍼런스: 일러스트와 디자인 제 6회 DGMIT UI&UX 컨퍼런스: 일러스트와 디자인
제 6회 DGMIT UI&UX 컨퍼런스: 일러스트와 디자인
 
제 6회 DGMIT R&D 컨퍼런스: The Clickjacking attackXFrameOptions
제 6회 DGMIT R&D 컨퍼런스: The Clickjacking attackXFrameOptions제 6회 DGMIT R&D 컨퍼런스: The Clickjacking attackXFrameOptions
제 6회 DGMIT R&D 컨퍼런스: The Clickjacking attackXFrameOptions
 
제 5회 DGMIT R&D 컨퍼런스: 생성자 방식의 상속
제 5회 DGMIT R&D 컨퍼런스: 생성자 방식의 상속제 5회 DGMIT R&D 컨퍼런스: 생성자 방식의 상속
제 5회 DGMIT R&D 컨퍼런스: 생성자 방식의 상속
 
제 5회 DGMIT R&D 컨퍼런스: NODE.JS란?
제 5회 DGMIT R&D 컨퍼런스: NODE.JS란?제 5회 DGMIT R&D 컨퍼런스: NODE.JS란?
제 5회 DGMIT R&D 컨퍼런스: NODE.JS란?
 
제 5회 DGMIT R&D 컨퍼런스: Iframe
제 5회 DGMIT R&D 컨퍼런스: Iframe제 5회 DGMIT R&D 컨퍼런스: Iframe
제 5회 DGMIT R&D 컨퍼런스: Iframe
 
제 5회 DGMIT R&D 컨퍼런스: Facebook 연동
 제 5회 DGMIT R&D 컨퍼런스: Facebook 연동 제 5회 DGMIT R&D 컨퍼런스: Facebook 연동
제 5회 DGMIT R&D 컨퍼런스: Facebook 연동
 
제 5회 R&D 컨퍼런스 _양진희_20141125
제 5회 R&D 컨퍼런스 _양진희_20141125제 5회 R&D 컨퍼런스 _양진희_20141125
제 5회 R&D 컨퍼런스 _양진희_20141125
 
제 5회 DGMIT R&D 컨퍼런스: JavsScript Event Bubbling & Capturing
제 5회 DGMIT R&D 컨퍼런스: JavsScript Event Bubbling & Capturing제 5회 DGMIT R&D 컨퍼런스: JavsScript Event Bubbling & Capturing
제 5회 DGMIT R&D 컨퍼런스: JavsScript Event Bubbling & Capturing
 
제 5회 DGMIT R&D 컨퍼런스: HTML Graphics AP
 제 5회 DGMIT R&D 컨퍼런스: HTML Graphics AP 제 5회 DGMIT R&D 컨퍼런스: HTML Graphics AP
제 5회 DGMIT R&D 컨퍼런스: HTML Graphics AP
 
제 5회 DGMIT UI&UX 컨퍼런스: 브랜드 디자인
제 5회 DGMIT UI&UX 컨퍼런스: 브랜드 디자인제 5회 DGMIT UI&UX 컨퍼런스: 브랜드 디자인
제 5회 DGMIT UI&UX 컨퍼런스: 브랜드 디자인
 
제 5회 DGMIT UI&UX 컨퍼런스: 2015 웹디자인 트렌드
제 5회 DGMIT UI&UX 컨퍼런스: 2015 웹디자인 트렌드제 5회 DGMIT UI&UX 컨퍼런스: 2015 웹디자인 트렌드
제 5회 DGMIT UI&UX 컨퍼런스: 2015 웹디자인 트렌드
 
제 5회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스
제 5회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스제 5회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스
제 5회 DGMIT UI&UX 컨퍼런스: 2014 웨어러블 디바이스
 
제 5회 DGMIT UI&UX 컨퍼런스: 세계최초의 UX디자이너 Walt Disney
제 5회 DGMIT UI&UX 컨퍼런스: 세계최초의 UX디자이너 Walt Disney제 5회 DGMIT UI&UX 컨퍼런스: 세계최초의 UX디자이너 Walt Disney
제 5회 DGMIT UI&UX 컨퍼런스: 세계최초의 UX디자이너 Walt Disney
 
제 4회 DGMIT R&D 컨퍼런스 : 컨퍼런스 개인 프로젝트 발표
제 4회 DGMIT R&D 컨퍼런스 : 컨퍼런스 개인 프로젝트 발표제 4회 DGMIT R&D 컨퍼런스 : 컨퍼런스 개인 프로젝트 발표
제 4회 DGMIT R&D 컨퍼런스 : 컨퍼런스 개인 프로젝트 발표
 
제 4회 DGMIT R&D 컨퍼런스 : Making a JavaScript based Application in Mac OS X
제 4회 DGMIT R&D 컨퍼런스 : Making a JavaScript based Application in Mac OS X제 4회 DGMIT R&D 컨퍼런스 : Making a JavaScript based Application in Mac OS X
제 4회 DGMIT R&D 컨퍼런스 : Making a JavaScript based Application in Mac OS X
 
제 4회 DGMIT R&D 컨퍼런스 : REST API - 리소스 지향적 아키텍처
제 4회 DGMIT R&D 컨퍼런스 : REST API - 리소스 지향적 아키텍처제 4회 DGMIT R&D 컨퍼런스 : REST API - 리소스 지향적 아키텍처
제 4회 DGMIT R&D 컨퍼런스 : REST API - 리소스 지향적 아키텍처
 
제 4회 DGMIT R&D 컨퍼런스 : IIFE와 QA공통항목
제 4회 DGMIT R&D 컨퍼런스 : IIFE와 QA공통항목제 4회 DGMIT R&D 컨퍼런스 : IIFE와 QA공통항목
제 4회 DGMIT R&D 컨퍼런스 : IIFE와 QA공통항목
 
제 4회 DGMIT R&D 컨퍼런스 : Android NDK
제 4회 DGMIT R&D 컨퍼런스 : Android NDK제 4회 DGMIT R&D 컨퍼런스 : Android NDK
제 4회 DGMIT R&D 컨퍼런스 : Android NDK
 

Recently uploaded

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 

Recently uploaded (20)

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 

OpenSL ES Sound Module Guide

  • 1. Sound Module with OpenSL ES 2014. 11. 24 Version : 1.0.0 made by 최대우 R&D
  • 2. 2 CONTENTS. 1. OpenSL ES란? …………………………………….. 3 2. Sound Player Native Method .……………………. 4 a) createEngine …….………………………. 4 b) createBufferQueueAudioPlayer ……...... 4 c) createAssetAudioPlayer ……….……….. 5 d) setPlayingAssetAudioPlayer ….………... 5 e) shutdown ……………………………………… 5 3. Sound Player Android Activity .……………………. 6 4. Sound Player Layout ……………....…….………… 8 5. Run on Android SmartPhone ..…………………….. 9
  • 3. 3 1. OpenSL ES란 ? 알고 보자 OpenSL ES ! Audio File 재생 및 녹음 기능 Audio Effect 기능 MIDI (Musical Instrument Digital Interface) 파일 재생 기능
  • 4. 4 2. Sound Player Native Method a)void createEngine(JNIEnv*, jclass) - create engine - realize the engine - get the engine interface, which is needed in order to create other objects - create output mix, with environmental reverb specified as a non-required interface - realize the output mix b) void createBufferQueueAudioPlayer(JNIEnv*, jclass) - configure audio source - configure audio sink - create audio player - realize the player - get the play interface - get the buffer queue interface - register callback on the buffer queue - get the effect send interface - get the volume interface - set the player's state to playing
  • 5. 5 2. c) jboolean createAssetAudioPlayer(JNIEnv*, jclass, jobject, jstring, filename) - use asset manager to open asset by filename - open asset as file descriptor - create audio player - realize the output mix, realize the player - get the play, seek, mute, volume interface - enable whole file looping d) void setPlayingAssetAudioPlayer(JNIEnv*, jclass, jboolean) - set play mode e) shutdown() - destroy all of audio player object, and invalidate all associated interfaces Sound Player Native Method
  • 6. 6 3. Sound Player Android Activity Audio Engine and Buffuer be loaded when App create Use Spinner for Select Audio File
  • 7. 7 3. Sound Player Android Activity Triggered onClick Event when playing state and Selected Different File, shutdown all of audio player and Create new Audio Engine and Buffer. Toggle player state.
  • 8. 8 4. Sound Player Layout
  • 9. 9 5. Run on Android SmartPhone
  • 10. 10