werift 0.14.4-debug0 → 0.15.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/common/src/binary.d.ts +0 -1
- package/lib/common/src/binary.js +1 -2
- package/lib/common/src/binary.js.map +1 -1
- package/lib/dtls/src/context/cipher.js +5 -2
- package/lib/dtls/src/context/cipher.js.map +1 -1
- package/lib/dtls/src/handshake/extensions/useSrtp.js +5 -2
- package/lib/dtls/src/handshake/extensions/useSrtp.js.map +1 -1
- package/lib/ice/src/candidate.js +5 -2
- package/lib/ice/src/candidate.js.map +1 -1
- package/lib/ice/src/ice.d.ts +2 -2
- package/lib/ice/src/ice.js +6 -5
- package/lib/ice/src/ice.js.map +1 -1
- package/lib/ice/src/stun/attributes.js +5 -2
- package/lib/ice/src/stun/attributes.js.map +1 -1
- package/lib/rtp/src/rtcp/rr.js +5 -2
- package/lib/rtp/src/rtcp/rr.js.map +1 -1
- package/lib/rtp/src/rtcp/rtpfb/nack.js +6 -3
- package/lib/rtp/src/rtcp/rtpfb/nack.js.map +1 -1
- package/lib/rtp/src/rtcp/rtpfb/twcc.js +6 -6
- package/lib/rtp/src/rtcp/rtpfb/twcc.js.map +1 -1
- package/lib/rtp/src/rtcp/sr.js +5 -2
- package/lib/rtp/src/rtcp/sr.js.map +1 -1
- package/lib/rtp/src/srtp/cipher/ctr.js +5 -2
- package/lib/rtp/src/srtp/cipher/ctr.js.map +1 -1
- package/lib/rtp/src/srtp/cipher/gcm.js +6 -3
- package/lib/rtp/src/srtp/cipher/gcm.js.map +1 -1
- package/lib/sctp/src/param.js +5 -2
- package/lib/sctp/src/param.js.map +1 -1
- package/lib/sctp/src/sctp.js +5 -5
- package/lib/sctp/src/sctp.js.map +1 -1
- package/lib/webrtc/src/media/receiver/nack.js +2 -2
- package/lib/webrtc/src/media/receiver/nack.js.map +1 -1
- package/lib/webrtc/src/media/rtpReceiver.d.ts +3 -2
- package/lib/webrtc/src/media/rtpReceiver.js +4 -2
- package/lib/webrtc/src/media/rtpReceiver.js.map +1 -1
- package/lib/webrtc/src/media/rtpSender.d.ts +4 -2
- package/lib/webrtc/src/media/rtpSender.js +15 -7
- package/lib/webrtc/src/media/rtpSender.js.map +1 -1
- package/lib/webrtc/src/media/rtpTransceiver.d.ts +7 -6
- package/lib/webrtc/src/media/rtpTransceiver.js +8 -3
- package/lib/webrtc/src/media/rtpTransceiver.js.map +1 -1
- package/lib/webrtc/src/nonstandard/recorder/writer/webm.js +1 -1
- package/lib/webrtc/src/nonstandard/recorder/writer/webm.js.map +1 -1
- package/lib/webrtc/src/peerConnection.d.ts +10 -10
- package/lib/webrtc/src/peerConnection.js +324 -188
- package/lib/webrtc/src/peerConnection.js.map +1 -1
- package/lib/webrtc/src/sdp.js +5 -2
- package/lib/webrtc/src/sdp.js.map +1 -1
- package/lib/webrtc/src/transport/dtls.d.ts +3 -2
- package/lib/webrtc/src/transport/dtls.js +3 -0
- package/lib/webrtc/src/transport/dtls.js.map +1 -1
- package/lib/webrtc/src/transport/sctp.d.ts +5 -3
- package/lib/webrtc/src/transport/sctp.js +46 -34
- package/lib/webrtc/src/transport/sctp.js.map +1 -1
- package/package.json +2 -2
- package/src/media/receiver/nack.ts +1 -1
- package/src/media/rtpReceiver.ts +6 -5
- package/src/media/rtpSender.ts +18 -9
- package/src/media/rtpTransceiver.ts +13 -6
- package/src/nonstandard/recorder/writer/webm.ts +1 -1
- package/src/peerConnection.ts +386 -223
- package/src/sdp.ts +1 -1
- package/src/transport/dtls.ts +4 -1
- package/src/transport/sctp.ts +53 -33
package/src/media/rtpSender.ts
CHANGED
|
@@ -93,21 +93,15 @@ export class RTCRtpSender {
|
|
|
93
93
|
private seqOffset = 0;
|
|
94
94
|
private rtpCache: RtpPacket[] = [];
|
|
95
95
|
codec?: RTCRtpCodecParameters;
|
|
96
|
+
public dtlsTransport!: RTCDtlsTransport;
|
|
97
|
+
private dtlsDisposer: (() => void)[] = [];
|
|
96
98
|
|
|
97
99
|
track?: MediaStreamTrack;
|
|
98
100
|
stopped = false;
|
|
99
101
|
rtcpRunning = false;
|
|
100
102
|
private rtcpCancel = new AbortController();
|
|
101
103
|
|
|
102
|
-
constructor(
|
|
103
|
-
public trackOrKind: Kind | MediaStreamTrack,
|
|
104
|
-
public dtlsTransport: RTCDtlsTransport
|
|
105
|
-
) {
|
|
106
|
-
dtlsTransport.onStateChange.subscribe((state) => {
|
|
107
|
-
if (state === "connected") {
|
|
108
|
-
this.onReady.execute();
|
|
109
|
-
}
|
|
110
|
-
});
|
|
104
|
+
constructor(public trackOrKind: Kind | MediaStreamTrack) {
|
|
111
105
|
if (trackOrKind instanceof MediaStreamTrack) {
|
|
112
106
|
if (trackOrKind.streamId) {
|
|
113
107
|
this.streamId = trackOrKind.streamId;
|
|
@@ -116,6 +110,21 @@ export class RTCRtpSender {
|
|
|
116
110
|
}
|
|
117
111
|
}
|
|
118
112
|
|
|
113
|
+
setDtlsTransport(dtlsTransport: RTCDtlsTransport) {
|
|
114
|
+
if (this.dtlsTransport) {
|
|
115
|
+
this.dtlsDisposer.forEach((dispose) => dispose());
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
this.dtlsTransport = dtlsTransport;
|
|
119
|
+
this.dtlsDisposer = [
|
|
120
|
+
this.dtlsTransport.onStateChange.subscribe((state) => {
|
|
121
|
+
if (state === "connected") {
|
|
122
|
+
this.onReady.execute();
|
|
123
|
+
}
|
|
124
|
+
}).unSubscribe,
|
|
125
|
+
];
|
|
126
|
+
}
|
|
127
|
+
|
|
119
128
|
get redDistance() {
|
|
120
129
|
return this._redDistance;
|
|
121
130
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import Event from "rx.mini";
|
|
2
2
|
import * as uuid from "uuid";
|
|
3
3
|
|
|
4
|
+
import { RTCDtlsTransport } from "..";
|
|
4
5
|
import { SenderDirections } from "../const";
|
|
5
|
-
import { RTCDtlsTransport } from "../transport/dtls";
|
|
6
6
|
import { Kind } from "../types/domain";
|
|
7
7
|
import {
|
|
8
8
|
RTCRtpCodecParameters,
|
|
@@ -39,12 +39,19 @@ export class RTCRtpTransceiver {
|
|
|
39
39
|
|
|
40
40
|
constructor(
|
|
41
41
|
public readonly kind: Kind,
|
|
42
|
-
public
|
|
43
|
-
public
|
|
42
|
+
public dtlsTransport: RTCDtlsTransport,
|
|
43
|
+
public receiver: RTCRtpReceiver,
|
|
44
|
+
public sender: RTCRtpSender,
|
|
44
45
|
/**RFC 8829 4.2.4. direction the transceiver was initialized with */
|
|
45
|
-
public direction: Direction
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
public direction: Direction
|
|
47
|
+
) {
|
|
48
|
+
this.setDtlsTransport(dtlsTransport);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
setDtlsTransport(dtls: RTCDtlsTransport) {
|
|
52
|
+
this.receiver.setDtlsTransport(dtls);
|
|
53
|
+
this.sender.setDtlsTransport(dtls);
|
|
54
|
+
}
|
|
48
55
|
|
|
49
56
|
get msid() {
|
|
50
57
|
return `${this.sender.streamId} ${this.sender.trackId}`;
|
|
@@ -15,7 +15,7 @@ export class WebmFactory extends MediaWriter {
|
|
|
15
15
|
start(tracks: MediaStreamTrack[]) {
|
|
16
16
|
this.webm = new WebmOutput(
|
|
17
17
|
fs,
|
|
18
|
-
|
|
18
|
+
this.path,
|
|
19
19
|
tracks.map((track, i) => {
|
|
20
20
|
const trackNumber = i + 1;
|
|
21
21
|
const payloadType = track.codec!.payloadType;
|