2013-01-17 9 views
5

Ich versuche einen Sound (mp3) ab einem bestimmten Punkt in der Sounddatei abzuspielen. Ich will, dass es in den meisten mobilen Geräten funktioniert, und es tut, aber es scheint, dass es ein Problem mit Windows Phone 8 gibt. Es funktioniert gut auf einem Samsung Galaxy und auf dem iPhone, aber auf WP beginnt der Sound immer von Anfang an und ignoriert das currentTime-Set. Irgendwelche Ideen? Danke!HTML-Audio: currentTime in IE

var sfile = "test.mp3'; 
    var myobj; 
    function init() 
    { 

     myobj=document.createElement('audio'); 
     myobj.style.position="relative"; 
     myobj.style.bottom=0; 
     myobj.src = sfile; 
     myobj.id='sound'; 

     document.body.insertBefore(myobj,document.body.lastChild); 
     myobj.load(); 
    } 
    //called when pressing a button 
    function test() 
    { 
     myobj.currentTime=30.0; 
     myobj.play() 
    } 

Antwort

1

Haben Sie mehr Informationen dazu. Es stellt sich heraus, dass Sie currentTime nicht vor dem Aufruf von play() einstellen können. Zumindest nicht auf dem Windows Phone. Also muss ich zuerst play aufrufen und dann (nach x ms) kann ich die currentTime einstellen.

Meine Idee ist jetzt, etwas Stille in meiner Audiodatei zu haben und diese Stille kontinuierlich zu hören. Wenn ich einen Ton abspielen möchte, kann ich einfach die aktuelle Zeit einstellen. Wenn der Sound-Teil fertig ist, starte ich einfach die Stille-Schleife erneut. Es wäre viel einfacher, mehrere Spuren zu verwenden, aber ich habe diese Option leider nicht.

So ist es möglich, currentTime unter Windows Phone 8 zu verwenden. Allerdings stieß ich auf ein anderes Problem. Da ich jetzt den Ton die ganze Zeit spiele, wenn das Telefon in den Schlafmodus geht, scheint es, als friert das Javascript ein (wodurch die Stille-Schleife aufhört), aber trotzdem Töne zu hören. Also würde die ganze mp3 Datei von Anfang bis Ende laufen. Ich habe versucht, mit dem Onfocusout-Ereignis die Schleife zu stoppen und den Ton zu pausieren, aber es funktioniert nicht. Wir werden dieses eher seltene und fehlerhafte Verhalten weiter untersuchen.

+0

Hallo, ich habe ähnliche Probleme. Haben Sie eine Lösung gefunden? –