2012-12-21 2 views
1

설정 내 웹 사이트에 Soundmanager2가 설치되어 있습니다. MP3에 대한 링크가 자동으로 생성됩니다. 그것이이 데모의 왼쪽 상단에있는 같은 애니메이션 (http://www.schillmania.com/projects/soundmanager2/demo/을 담당하고 있기 때문에 360 UI를 사용Soundmanager2로드했지만 재생되지 않음

인한 문제 , 나는 사운드로드를 참조 360 플레이어 /),하지만 그것은 재생되지 않으며 초 카운터는 움직이지 않습니다.

나는 플레이어

<link rel="stylesheet" type="text/css" href="/css/360player.css" /> 
<link rel="stylesheet" type="text/css" href="/css/flashblock.css" /> 
<!-- special IE-only canvas fix --> 
<!--[if IE]><script type="text/javascript" src="/js/excanvas.compiled.js"></script><![endif]--> 

<!-- Apache-licensed animation library --> 
<script type="text/javascript" src="/js/berniecode-animator.js"></script> 
<script type="text/javascript" src="/js/soundmanager2.js"></script> 
<script type="text/javascript" src="/js/360player.js"></script> 

<script type="text/javascript"> 
soundManager.setup({ 
    // path to directory containing SM2 SWF 
    url: '/swf/', debugMode: true 
}); 
</script> 

에게 디버그 코드를로드 방법

-- SoundManager 2: HTML5 support tests (/^(probably|maybe)$/i): mp3: true (preferring flash), mp4: true (preferring flash), ogg: true, wav: true -- soundmanager2.js:1155 
-- SoundManager 2 V2.97a.20121104 (AS3/Flash 9) + HTML5 audio, high performance mode, normal polling, wmode: transparent, flashBlock mode -- soundmanager2.js:1155 
soundManager::createMovie(): Trying to load /swf/soundmanager2_flash9_debug.swf soundmanager2.js:1155 
soundManager::initMovie(): Waiting for ExternalInterface call from Flash... soundmanager2.js:1157 
soundManager::externalInterfaceOK() (~2 ms) soundmanager2.js:1157 
soundManager::init() soundmanager2.js:1157 
soundManager: Attempting JS to Flash call... soundmanager2.js:1157 
(Flash): SM2 SWF V2.97a.20121104 (AS3/Flash 9) soundmanager2.js:1157 
Flash security sandbox type: remote soundmanager2.js:1157 
(Flash): JS to/from Flash OK soundmanager2.js:1157 
(Flash): Enabling polling, 10 ms interval soundmanager2.js:1157 
-- SoundManager 2 loaded (OK) -- soundmanager2.js:1155 
soundManager: Firing 1 onready() item soundmanager2.js:1157 
threeSixtyPlayer.init() soundmanager2.js:1157 
threeSixtyPlayer.init(): Found 5 relevant items. soundmanager2.js:1157 
handleClick() soundmanager2.js:1157 
soundManager.createSound(): ui360Sound0 (http://clients.activemd.net/external/x.mp3) soundmanager2.js:1155 
SMSound() merged options: { 
id: ui360Sound0, 
url: http://clients.activemd.net/external/x.mp3, 
onplay: { pl.removeClass(this._360data.oUIBox,this._360data.className); t... }, 
onstop: { pl.removeClass(this._360data.oUIBox,this._360data.className); t... }, 
onpause: { pl.removeClass(this._360data.oUIBox,this._360data.className); t... }, 
onresume: { pl.removeClass(this._360data.oUIBox,this._360data.className); t... }, 
onfinish: { var nextLink; pl.removeClass(this._360data.oUIBox,this._360data... }, 
onbufferchange: { if (this.isBuffering) { pl.addClass(this._360data.oUIBox,pl.css... }, 
whileloading: { if (this.paused) { self.updatePlaying.apply(this); } }... }, 
whileplaying: { self.updatePlaying.apply(this); this._360data.fps++; }... }, 
useWaveformData: 0, 
useEQData: 0, 
usePeakData: 0, 
autoLoad: false, 
autoPlay: false, 
loops: 1, 
multiShot: true, 
multiShotEvents: false, 
pan: 0, 
stream: true, 
usePolicyFile: false, 
volume: 100, 
isMovieStar: false, 
bufferTime: 3 
} soundmanager2.js:1157 
(Flash): SoundManager2_SMSound_AS3: Got duration: 0, autoPlay: false soundmanager2.js:1157 
SMSound.play(): Attempting to load "ui360Sound0" soundmanager2.js:1155 
SMSound.load(): http://clients.activemd.net/external/x.mp3 soundmanager2.js:1155 
SMSound.play(): "ui360Sound0" is starting to play soundmanager2.js:1157 
fanOut: ui360Sound0: http://clients.activemd.net/external/x.mp3 soundmanager2.js:1157 
SMSound._onbufferchange(): 1 soundmanager2.js:1157 
(Flash): start (ui360Sound0): 0 soundmanager2.js:1157 
SMSound._onbufferchange(): 0 soundmanager2.js:1157 
SMSound._onload(): "ui360Sound0" loaded. 

링크 내 Chrome 개발자보기 클릭하며 MP3가 열립니다 이상한 것들 브라우저 창을 분리하고 정상적으로 재생합니다 (Chrome에서 MP3 링크를 클릭하면 기본값)

ONE POSSIBLE THEORY 소리가로드되고 있지만 "ok, yourself and play yourself"라고 말하면 안됩니다.

다른 가능성있는 이론 jQuery가 어떻게 든 고생하고 있습니다.

내 소리가로드되지만 재생되지 않는 이유를 결정하는 데 도움을주십시오.

감사합니다. 릭

+0

링크를 클릭 할 수 있지만 다른보기에서 열리는 경우 링크에'type = "audio/mp3"'을 추가하면 브라우저가 오디오를 인식합니다 –

답변

1

방금 ​​자동 재생과 비슷한 문제가있었습니다. Safari에서는 정상적으로 작동하지만 크롬과 FireFox, IE는 재생 중 이었지만 아무 것도 일어나지 않았습니다. 나는 궁극적으로 soundManager.play (id)를 호출하기 위해 setTimeout을 넣었지만, 나는 그것을해야만한다는 것을 즐기지 못하고있다.

다른 개발자는 click() 이벤트를 사용하여 노래를 트리거합니다. 클릭 이벤트를 통해 전달되는 사소한 지연이 재생되는지 여부는 알 수 없지만 200 및 500+ 밀리 초로 시간 제한을 설정하면 티켓으로 보입니다. 또한 자동 재생이 실패 할 때 버퍼링 이벤트 또는로드 이벤트로 인해 재생이 시작될 수도 있습니다. 또한 soundManager.createSound (e) 바로 뒤에 soundManager.play (id)를 호출하면 내 목적이 전혀 없습니다.

onbufferchange 이벤트를 추가하고 playState를 확인했습니다. 연주하지 않았다면 연주하라고했습니다. 그건 setTimeout에 대한 필요성을 없앴습니다.

관련 문제