2010-02-14 17 views
12

Pracuję nad odtwarzaczem audio html5 i wszystko działa poprawnie, gdy serwer pliku .ogg z tego samego hosta, co strona html. Kiedy umieścić plik ogg w moim CDN nie powiedzie, a kod błędu MEDIA_ERR_SRC_NOT_SUPPORTEDMEDIA_ERR_SRC_NOT_SUPPORTED problemy z dźwiękiem html5

Na przykład, to działa prawidłowo

<audio src="/song.ogg" id="player"> 
    Your browser does not support the <code>audio</code> element. 
</audio> 

Ale to się nie powiedzie z powyższym kodem błędu

<audio src="http://mycdn.com/song.ogg" id="player"> 
    Your browser does not support the <code>audio</code> element. 
</audio> 

nagłówki plików audio, które zawiodły, wyglądają mniej więcej tak (jest to z innego pliku ogg, który wykazuje to samo zachowanie)

HTTP/1.1 200 OK 
Server: CacheFlyServe v26b 
Date: Sat, 13 Feb 2010 21:10:48 GMT 
Content-Type: application/octet-stream 
Connection: close 
ETag: "c6ee7d86e808cc44bbd74a8db94a5aae" 
X-CF1: fA.syd1:cf:cacheD.syd1-01 
Content-Length: 2398477 
Last-Modified: Sat, 13 Feb 2010 20:50:56 GMT 
Accept-Ranges: bytes 
X-Cache: MISS from deliveryD-syd1 
+0

Nie mogłem wymyślić pomysłu na wyjaśnienie tego (można zobaczyć możliwe powody wymienione na http://www.whatwg.org/specs/web-apps/current-work/multipage/video.html). Byłoby łatwiej, gdybyś określił, z której wersji przeglądarki korzystasz, wymienił nagłówki lub, jeszcze lepiej, pod warunkiem, że testcera zawiera prawdziwe adresy URL. – Nickolay

+0

szczegóły i przykłady dodane – jshen

Odpowiedz

7

Nagłówek Content-Type = octet/stream jest problemem, chociaż jeśli czytam specyfikację poprawnie, nie powinien. Oto przykład: http://mozilla.doslash.org/stuff/video-test/video.html

I filed a bug w bugzilli Mozilli na ten temat. [Edytuj] Odpowiedź:

Nie robimy żadnych treści wąchania wypracować co zawartość jest - możemy liczyć na odpowiedniego typu MIME udostępnione. Z tego powodu aplikacja/oktet-stream nie odtwarza się i nie zwracamy "" dla canPlayType.

+1

dzięki, myślę, że potrzebowałem snu, kiedy to opublikowałem. Mógłbym przysiąc, że przyjrzałem się typowi zawartości tego, który działał, i że był to strumień aplikacji/oktetu. Patrząc na to teraz to aplikacja/ogg – jshen

1

Problem to typ mime, z którym obsługujesz plik audio. Musi to być "audio/ogg", "application/ogg" lub "video/ogg", aby Firefox mógł go odtworzyć. Firefox nie wykonuje żadnej formy "wąchania treści", aby ustalić, w jakim formacie znajduje się plik - opiera się wyłącznie na typie MIME.