티스토리 뷰
발생일: 2013.02.22
문제:
요새 HTML5 Web Audio API를 파보고 있다.
스펙을 살펴보다 보니 deprecated 된 메서드가 있는데,
튜토리얼의 대부분은 스펙이 변경되기 이전에 작성된 것들이 많아 이전 메서드를 기반으로 소개하고 있다.
당장 사용하는 데 있어서는 문제가 될 것 같지 않지만, 참고 차 정리해둔다.
해결책:
아래는 각 노드에서 변경된 메서드 목록이다.
AudioBufferSourceNode
noteOn() ---> start()
noteGrainOn() ---> start()
noteOff() ---> stop()
AudioContext
createGainNode() ---> createGain()
createDelayNode() ---> createDelay()
createJavaScriptNode() ---> createScriptProcessor()
OscillatorNode
noteOn() ---> start()
noteOff() ---> stop()
AudioParam
setTargetValueAtTime() ---> setTargetAtTime()
처음 API를 봤을 때 noteOn() 과 noteOff() 가 그리 익숙하지 않았는데,
start(), stop()으로 바꾸니 더 명확한 것 같다.
위 목록은 API 리뷰 과정에서 바뀌었다고 하고, (변경 로그를 보니 2012년 9월 25일이다)
구현할 때에는 두 가지 모두 제공하는 걸 추천하고 있다.
확인해보니 현재 웹킷에서는 두 가지 모두 구현하고 있다.
앞으로도 deprecated 된 메서드를 사용해도 크게 문제가 될 것 같진 않긴 하지만,
명확함을 위해 변경된 메서드를 사용하는 게 좋겠다.
그 외, PanningModelType, DistanceModelType, BiquadFilterType 의 enum 정의 방식도 바뀌었다.
좀 더 자세한 내용은 Web Audio 스펙의 Deprecation Section에서 확인할 수 있다.
반응형
댓글
공지사항