2011-12-12 4 views
0

iPad의 HTML 5 비디오에 문제가 있습니다. 모든 주요 브라우저에서 작동합니다. Apache Tomcat에서 비디오를 호스팅하고 ipad에서 시도해보십시오. 제대로 작동합니다.하지만 iPad에서 매트릭스 매개 변수가있는 URL을 재생합니다.URL 매트릭스 매개 변수 및 IOS

누군가가 나에게 말할 수 있다면 좋을 것입니다. 어떻게 아파치 톰캣에서 비디오를 호스트하고 매트릭스 매개 변수를 추가 할 수 있습니까? 작동 할 것입니다. URL에 일부 정크 쿼리 매개 변수를 추가하면됩니다. 행렬 매개 변수를 동일한 방식으로 사용하면 작동하지 않습니다.

사양에 따르면 매트릭스 매개 변수가 iPad에서 작동하지 않습니다.

+0

example-url을 제공해 주시겠습니까? –

+0

https://beta-classroom-dev.qaols.phoenix.edu/VirtualRepository/CP1/context-info;T=831D8B107020BBEBE0400F0A32207789;P=0593d9ed-f762-44f9-b4ee-720fd93f261f;O=OSIRIS:30253288;A=2732caa2 -ed7c-4773-92d1-910f996d0282; /file/8ef730cd-5b96-a69d-c4aa-a8e124ad6d7a/1/ECO564BETA_Price_Elasticity_final_h264.mp4? 사용자 이름 = scott & Password = scott http : //ec2-75-101-133-143.compute- 1.amazonaws.com/ECO564BETA_Price_Elasticity_final_h264.mp4 – sunnychayen

답변

0

이 질문은 약간 오래된 것이지만, 우리의 연구는이 문제를 놓고 다른 사람들을 도울 수 있습니다.

매트릭스 매개 변수가있는 URL을 사용하여 iOS/QuickTime에서 콘텐츠를 재생할 때 문제를 진단하는 데 시간을 보냈습니다. 특히 'http://myserver.mydomain.com/path;a=b.m3u8'형식의 URL을 사용하여 HLS 콘텐츠를 재생하려고 시도했습니다.

동영상이 처음 제대로 재생 된 다음 두 번째 (및 기타) 시간 모두 실패합니다. 행렬 매개 변수가 없으면 비디오가 매번 잘 재생됩니다.

결국 우리는 iOS/QuickTime이 잘못된 캐시 항목을 쓰는 데 문제가 있다고 결론지었습니다. 그래서 서버가 처음으로 콘텐츠를 반환했을 때, iOS/QuickTime에서 캐시 미스가 발생하여 정상적으로 재생되었습니다. 다음 번에 서버가 304 (수정되지 않은 캐시 히트)를 반환하고 iOS/QuickTime이 캐시에서 캐시를 가져 오려고했으나 실패하여 동영상이 재생되지 않습니다.

우리의 솔루션은 캐시 제어 헤더를 no-cache로 설정하여 클라이언트 캐싱을 방지하는 것이 었습니다. 또 다른 해결책은 행렬 매개 변수를 사용하지 않는 것입니다.

HLS와 관련하여이 버그는 처음 m3u8 파일을로드했을 때만 발생하는 것으로 보입니다. m3u8 URL은 매트릭스 매개 변수가 포함 된 첫 번째 m3u8에 나열되어 있으며 정상적으로 작동하는 것으로 보입니다.