Ich versuche eine MP3-Datei abzuspielen und möchte zu einem bestimmten Ort in der Datei springen. In Chrome 33 unter Windows springt die Datei an die richtige Position (im Gegensatz zu VLC, das lokal die MP3-Datei abspielt), aber in Firefox 28 unter Windows zu weit und in Internet Explorer 11 zu weit nach hinten.
Früher funktionierte es in Firefox 27 und früher richtig.
Gibt es einen besseren Weg, dies zu tun?
BEARBEITEN: Das Problem erfordert nicht einmal SoundManager2. Sie können das gleiche Problem nur mit dem <audio>
-Tag in Firefox replizieren. Diese beiden Zeilen enthalten den Code, den Sie zum Reproduzieren benötigen:
Versuchen Sie es hier: Ссылка
EDIT: versucht mit Firefox Nightly, keine Verbesserung. Ich habe es als Fehler 994561 in Bugzilla gemeldet. Ich suche noch immer nach einem Workaround.
Ich arbeite an SoundJS und stieß bei der Implementierung von Audio-Sprites vor kurzem auf ähnliche Probleme. Laut Spezifikation kann die Position der HTML-Abspielposition um bis zu 300 ms falsch sein. Das könnte einige der Probleme erklären, die Sie sehen.
Interessanterweise spielt Ihre Fiedel in FF 28 auf Sieg 8.1 richtig, wenn ich sie einfach von Anfang an durchspielen lasse.
Es gibt auch einige bekannte Probleme mit der Genauigkeit der Audiolänge, die ebenfalls Auswirkungen haben können. Lesen Sie dazu hier .
Wenn Sie Präzision wünschen, würde ich definitiv Web Audio, wo möglich, oder eine Bibliothek wie SoundJS empfehlen.
Ich hoffe, das hilft.
Das Problem liegt in der VBR Codierung von mp3.
Laden Sie das MP3 auf die Festplatte herunter und konvertieren Sie es in eine feste Bitrate. sag mit Audacity.
Führen Sie das Beispiel von der Festplatte aus:
%Vor%und es funktioniert gut für mich.
Mein Vorschlag für die Problemumgehung lautet daher, eine alternative Fixed-Bit-MP3-Datei anstelle der von Ihnen verwendeten zu veröffentlichen. Dann sollte es im aktuellen FFx funktionieren.
Ich habe das gleiche Problem gefunden und es gelöst, indem ich meine MP3-Datei in das CBR-Format (Constant Bit Rate) konvertiert habe. Dann kann das inkonsistente Problem zwischen dem currentTime und dem echten Sound gelöst werden.
Schritte:
Es wird kein inkonsistentes / asynchrones Problem geben.
Siehe auch:
Ich habe gerade Ihren Code mit einer anderen Audio-URL versucht hier , es schien zu funktionieren und ich habe keine Verzögerung in Firefox (v29) erlebt, die ich zuvor gemacht habe.
%Vor%Ich denke, um eine Audiodatei zu überspringen, muss Ihr Server richtig konfiguriert sein.
Der Client sendet Bytebereich Anfragen bestimmte Bereiche einer Datei zu suchen und spielen , so muss der Server angemessen antworten:
Um das Suchen und Wiedergeben von Regionen der Medien zu unterstützen Noch nicht heruntergeladen, verwendet Gecko HTTP 1.1 Byte-Range-Anfragen an Abrufen des Mediums von der Suchzielposition. Außerdem, wenn Sie nicht X-Content-Dauer-Header dienen, Gecko nutzt Byte-Range-Anfragen bis zum Ende der Medien zu suchen (vorausgesetzt, Sie dienen der Inhaltslänge Header), um die Dauer der Medien zu bestimmen.
Hoffe das hilft .. Sie könnten auch versuchen, in der Suche Web Audio API für Sound-Effekt-ähnliche Wiedergabe, die Ihnen einige Garantien gibt die Wiedergabe verzögert sich.
Nach dem Testen der Geige ist es bemerkbar, dass es ein Problem mit FF gibt. Irgendwann, nach einer Suche, liegt das Problem an "Performance Lag", aber die gute Nachricht ist, dass jemand eine Lösung für dieses Problem gefunden hat Vielleicht möchten Sie dies lesen:
ein einzelnes Skript wird alles lösen.
Tags und Links javascript html5