2014-06-13 11 views
8

Ja (i około miliona innych) znalazłem błąd w IE11 (nie jestem pewien, czy inne wersje mają ten sam błąd), gdzie, jeśli utworzysz tag audio HTML5, przeglądarka zgłasza " Nieprawidłowe źródło "bez względu na wszystko. Próbowałem każdej kombinacji, o jakiej mogę myśleć bez powodzenia. Dotychczas: Zmiana znaczników końcowych HTML z samozamykających na jawne Zmiana nazwy pliku w celu wyeliminowania nieparzystych znaków Zmiana formatu sub-audio na wszystkie możliwe ustawienia Dodawanie jawnego identyfikatora URI ("http: // ... ") Wyłączanie wszystkich wtyczek (na wtyczkach giełdowych) Próbowanie każdego możliwego formatu audio Definiowanie typu MIME Zmiana parametrów znaczników dźwiękowych. Zmieniono ustawienia IIS, aby uwzględnić typy MIME.Błąd IE Nieprawidłowe źródło Dźwięk HTML5 - obejście

Sprawdzanie witryny Microsoft "Połącz" - (twierdzą, że nie jest ona odtwarzalna, ale setki tysięcy wyników Google sugerują inaczej).

Czy to w ogóle niemożliwe? WSZYSTKIE inne najnowsze najnowsze & najlepsze przeglądarki, które wypróbowałem (FireFox, Opera, Safari, Chrome). Jestem w świetnej sytuacji - żadne rozwiązania nie działają.

Oto kod:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="AudioPopupPlayer.aspx.vb" Inherits="AudioPopupPlayer" %> 

<!DOCTYPE html> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
     <div style="padding-top: 30px; margin: auto; width: 300px;"> 
     <asp:Literal ID="litVoiceOver" runat="server"></asp:Literal></div> 
</body> 
</html> 

Kod za:

Partial Class AudioPopupPlayer 
Inherits System.Web.UI.Page 

Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load 
    Dim VoiceOverFileName As String = Request.QueryString("vo") 
    If VoiceOverFileName.Length > 0 Then 
     Dim root As String = HttpContext.Current.Request.Url.GetLeftPart(UriPartial.Authority) + ResolveUrl("~/") 
     Dim audiosource As String = "<audio id=""VoiceOver"" autoplay=""autoplay"" preload=""preload"" controls=""controls""><source src=""" & root & "audio/" & VoiceOverFileName & ".ogg"" type=""audio/ogg"" ></source><source src=""" & root & "audio/" & VoiceOverFileName & ".mp3"" type=""audio/mpeg"" ></source><source src=""" & root & "audio/" & VoiceOverFileName & ".wav"" type=""audio/wav"" ></source></audio>" 
     Me.litVoiceOver.Text = audiosource 
    End If 
End Sub 

End Class 

I wreszcie, zrzut ekranu (w IE11) pokazując, że HTML jest renderowana doskonale, ale ja wciąż się bał " Nieprawidłowe źródło "(UWAGA: kopiowanie i wklejanie łącza powoduje odtwarzanie pliku audio - patrz rysunek).

bug in IE 11

+0

Inna uwaga: utworzyłem statyczną stronę HTML i uzyskałem ten sam wynik, więc nie jest to, że jest ona dynamicznie tworzona. Po prostu szukam hackowania w przeglądarce, więc nie muszę angażować się w Flash. – MC9000

+0

Mam ten sam problem i jestem poza sfrustrowanym. Próbowałem też wszystkiego, co wszyscy polecali. Nie ma kości. Fakt, że prawie nikt na SO nie ma wiele do powiedzenia, nie jest dobrym znakiem ... –

+0

Aktualizacja: W moim przypadku okazało się, że IE11 nie podoba mi się to, że podałem adresy URL src z parametrem zapytania na końcu. Zmieniłem go, aby przekazać parametr za pośrednictwem nagłówków i teraz działa dobrze. –

Odpowiedz

0

Próbowałem kilka nowych formatów plików. Program Internet Explorer 11 obsługuje tylko format audio M4A (pliki WAV, OGG & MP3 nie są obsługiwane). Microsoft naprawdę musi umieścić prawidłowe informacje na swojej stronie internetowej o tym, co obsługuje ich przeglądarka (twierdzą, że MP3 jest obsługiwany, ale wyraźnie, nie jest). Szaleństwo, mówię wam!

+0

Czy masz inne źródło potwierdzające, że IE11 nie obsługuje formatu mp3? –

+0

Not off hand. - Stworzyłem pliki M4A - działa jak urok. Nigdy nie mogłem dostać mp3 do pracy w IE11 (nadal może to być podformularz, którego IE nie obsługuje - próbowałem każdego subformatu w specyfikacji MP3 bez powodzenia). To jest IE11 działający pod Windows 8.1 (może być rzeczą OS - nie mam czasu na testowanie błędów MS) – MC9000

+0

Właściwie to w końcu udało mi się to zrobić sam. Ale moim problemem jest to, że żądałem src z parametrem zapytania po nazwie pliku, dla celów "podpisywania" (udostępnienie łącza przez kontrolowany czas). Zrobiłem to zamiast nagłówków i teraz moje znaczniki audio/mp3 działają dobrze z IE11. Mam przeczucie, że mogą istnieć różnego rodzaju problemy z tym związane, które powodują problemy dla ludzi. –

1

Miałem ten sam problem, próbując użyć prostego kodu HTML5. Adres URL i nazwa pliku również były prawidłowe. To jest to, co pracował dla mnie:

<audio src="song.mp3" controls autoplay></audio>

Można usunąć kontroli, jeśli nie są potrzebne, to nadal będzie działać. Mam nadzieję, że to pomoże!

+0

Wielkie dzięki, miałem ten problem i to naprawił to dla mnie! –

+0

Nie działa :( – Nitesh

0

Mamy doświadczonych ten sam problem w środowisku korporacyjnym ze świeżych instalacjach IE11 i Windows 7.

Mamy rozwiązany przez zainstalowanie multimedialny pakiet K-Lite i zainstalowany alternatywny kodek MP3. Potem zadziałało.

0

Komentarz od here:

Wysłany przez Jonathana Laughery na 23.5.2014 w 22:19 To dlatego tag audio HTML5 IE nie obsługuje formatu WAV PCM.Jest to szczególnie dziwne, ponieważ IE obsługuje WAV PCM w wycofanym tagu bgsound, WAV PCM jest natywnym formatem dźwięku Microsoft Windows na zawsze, a Microsoft jest jedyną większą przeglądarką, która go nie obsługuje. Pliki WAV są nadal popularne w archiwach dźwiękowych i wykorzystywane w sieciach korporacyjnych, ale granie WAV w IE wymaga tagu bgsound (specyficzny dla IE, przestarzały i kiepskiej kontroli), transkodowania na serwerze lub używania flash playera (jak fallback jPlayera), który jest to, co zaprojektowano w celu uniknięcia tagu HTML5. Dodaj ten format.

Oto dokumentacja na temat bgsound. Jeśli zamierzasz użyć bgsound this might, to bądź pomocny.

Powiązane problemy