2017-06-11 12 views

Odpowiedz

4

To dokładnie to oznacza. Klienci, którzy zwrócą false dla tego warunku, nie mogą odtwarzać tego typu multimediów (starsze przeglądarki, nieobsługiwane ustawienia systemu operacyjnego lub klienta, które temu zapobiegają).

Dla strumieniowe formatów OGG można zdecydowanie wykorzystać Audio.play(); na większości nowoczesnych przeglądarek, ale niestety the MediaSource element nie obsługuje strumieniowe z żądania POST - trzeba by użyć klasyczną metodę przesyłania strumieniowego lub pobrać cały plik źródłowy jako cały, a następnie graj.

+0

Więc nie ma sposobu na strumieniowanie OGG z POST? –

+0

Przez GET Mogę 'new Audio (src) .play()' i słuchać dźwięku, gdy nie jest on w pełni pobrany, ale jeśli potrzebuję odtworzyć dźwięk jako odpowiedź POST, muszę przekonwertować tę odpowiedź na BLOB po tym, jak utworzę URL i odtwarzaj - ale usłyszę dźwięk tylko po pobraniu pełnego pliku: przykład audio 6mb 'fetch ('https://ia802607.us.archive.org/31/items/tom_sawyer_librivox/TSawyer_27-28_twain.ogg') .then (r => r.blob()). then (b => nowy dźwięk (URL.createObjectURL (b)). play()) ' –

+0

@VitalyZdanevich Zrobiłem trochę więcej badań i zaktualizowałem moją odpowiedź, wydaje się, że używanie 'fetch' dla obiektu blob OGG poprzez POST nie jest obsługiwane w' MediaSource'. –