2013-07-22 4 views
11

Ich verwende die recorder.js und getUserMedia, um einige Audio-Aufnahme im Browser zu tun. Wenn die Aufnahme gestartet wird, wird der Benutzer auf die Aufforderung „diese Seite des Mikrofons zulassen verwenden“ gegeben, und wenn sie erlauben klicken, fügt Chrome einen Indikator auf das Favicon der Registerkarte zu zeigen, dass es aufnimmt:How to getUserMedia Indikator nach der Aufnahme

Recording indicator http://ubuntuone.com/1nBkbmc9vA313WeWtV03Kz

Mein Problem ist, dass der Indikator nicht verschwindet, auch nachdem meine Anwendung die Aufzeichnung beendet hat. Grundsätzlich möchte ich meine eigenen Aufnahmeberechtigungen widerrufen. Ist das möglich?

Antwort

10

Wenn Sie ein neues MediaStream Objekt von einem getUserMedia Aufruf generieren, enthält es ein MediaStreamTrack Objekt.

Der Aufruf MediaStream.getAudioTracks() sollte eine Sequenz zurückgeben, die eine Momentaufnahme aller MediaStreamTrack Objekte im Stream mit der Art "audio" darstellt. Gleiches gilt beim Aufruf von MediaStream.getVideoTracks() zum Abrufen von Video-Track-Objekten.

Gemäß der Spezifikation sieht es aus wie Sie alle angegebenen Berechtigungen für Ihre Anwendung durch den Aufruf MediaStreamTrack.stop() auf der Audiospur Objekt widerrufen können.

Quelle: Media Capture and Stream API spec

+0

Ehrfürchtig, danke! Es scheint auch so, als würde 'mediaStream.stop()' nur aufrufen, ohne die Spuren zu erhalten. – nickf

+0

Oh, großartig! Gut zu wissen! – mattfieldy

+0

Interessanterweise, obwohl dies den Indikator aus dem Favicon entfernt, kann die Aufzeichnung tatsächlich fortgesetzt werden ... – nickf