2017-01-11 8 views
1

Canvas를 사용하여 웹 사이트 용 Audio Visualizer를 만들고 있지만 Safari에는 표시되지 않습니다. 비주얼 라이저는 오디오가로드 될 때까지 표시되지 않으므로 오디오를로드하는 데 문제가 될 수 있습니다. 나는 오디오 URL로 이동하는 경우Canvas Audio Visualizer가 Safari에 나타나지 않습니다.

var request = new XMLHttpRequest(); 

request.open('GET', 'http://content.jwplatform.com/videos/gNilRtS6-xLS6q3Uo.m4a', true); 
request.responseType = 'blob'; 

request.onload = function() { 
    audio.src = window.URL.createObjectURL(request.response); 
    console.log(request.response); 
} 

request.send(); 

, 그것은 좋은 (그리고 매우 빠르게)를로드 : 여기

내가 오디오를로드하는 데 사용하고 있습니다 것입니다.

내가 크롬과 파이어 폭스에서 잘 작동하는 codepen 예를 만들었습니다,하지만 Safari에서 작동하지 않습니다 http://codepen.io/ericjacksonwood/pen/bBGEbM

+0

@dandavis v6 이후 기본 지원으로 Safari (접두어로 붙임) OP가 stereoPanner 또는 상태 API 또는 상수 소스를 사용하고 있는지 의심 스럽습니다. 그러나 어쨌든 어떤 콘솔이나 콘솔 출력은 도움이 될 것입니다. – Kaiido

+0

@Kaiido : 좋은 눈, 나는 정정 당한다. – dandavis

+0

@ 카이도 Safari의 접두사에 대해 이야기하는 부분을 볼 수 없습니다. 당신이 의미하는 바를 조금 더 설명해 주시겠습니까? 가능하다면 사파리 6+에서이 작업을하고 싶습니다. My CodePen 링크는 Minimal (이 예제에서는 불필요한 모든 것을 제거했습니다.), Complete (필자는 모든 필수 요소를 유지했으며 CodePen 편집기에서 모두 볼 수 있음) 및 Verifiable (현재 Safari 10에서 작동하지 않음)) –

답변

0

내 AudioContext을 업데이트하여이 작업을 얻을 수 있었다(); 웹킷 공급 업체 접두사를 포함합니다 :이 변화를 reflext하는 codepen 업데이트되었습니다

var audioContext = new (window.AudioContext || window.webkitAudioContext)(); 

를, 그리고 사파리, 크롬과 파이어 폭스에 지금 잘 동작하는 것.