Dieses Beispiel richtet einen Handler für bufferedamountlow
ein, um jedes Mal mehr Daten anzufordern, wenn der Puffer des Datenkanals unter die durch bufferedAmountLowThreshold
angegebene Anzahl von Bytes fällt, die wir auf 65536 gesetzt haben. Mit anderen Worten, wir versuchen, mindestens 64 kB Daten im Puffer zu halten, indem wir jeweils 64 kB aus der Quelle lesen.
let pc = new RTCPeerConnection();
let dc = pc.createDataChannel("SendFile");
// Replace with your own source object, such as a file handle
let source = null;
dc.bufferedAmountLowThreshold = 65536;
pc.addEventListener(
"bufferedamountlow",
(ev) => {
if (source.position <= source.length) {
dc.send(source.readFile(65536));
}
},
false,
);
Nach der Erstellung der RTCPeerConnection
wird RTCPeerConnection.createDataChannel()
aufgerufen, um den Datenkanal zu erstellen. Dann wird ein Listener für bufferedamountlow
eingerichtet, um den eingehenden Datenpuffer jedes Mal aufzufüllen, wenn sein Inhalt unter 65536 Bytes fällt.
Sie können auch einen Listener für bufferedamountlow
über seine Event-Handler-Eigenschaft onbufferedamountlow
einrichten:
pc.onbufferedamountlow = (ev) => {
if (source.position <= source.length) {
dc.send(source.readFile(65536));
}
};
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4