RTCPeerConnection: phương thức addTransceiver()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.

Phương thức addTransceiver() của giao diện RTCPeerConnection tạo một RTCRtpTransceiver mới và thêm nó vào tập các transceiver gắn với RTCPeerConnection. Mỗi transceiver biểu diễn một luồng hai chiều, với cả một RTCRtpSender và một RTCRtpReceiver gắn với nó.

Cú pháp

js
addTransceiver(trackOrKind)
addTransceiver(trackOrKind, init)

Tham số

trackOrKind

Một MediaStreamTrack để liên kết với transceiver, hoặc một chuỗi được dùng làm kind của track của bộ nhận, và mở rộng là của chính RTCRtpReceiver.

init Optional

Đối tượng để chỉ định các tùy chọn khi tạo transceiver mới. Các giá trị có thể có là:

direction Optional

Hướng ưu tiên của transceiver mới. Giá trị này được dùng để khởi tạo thuộc tính RTCRtpTransceiver.direction của đối tượng RTCRtpTransceiver mới.

sendEncodings Optional

Mảng các encoding được phép khi gửi media RTP từ RTCRtpSender. Điều này tương đương với mảng parameter.encodings được truyền vào RTCRtpSender.setParameters().

streams Optional

Danh sách các đối tượng MediaStream sẽ được thêm vào RTCRtpReceiver của transceiver; khi sự kiện track của RTCPeerConnection phía máy ngang hàng từ xa xảy ra, đây sẽ là các stream được chỉ định bởi sự kiện đó.

Giá trị trả về

Đối tượng RTCRtpTransceiver sẽ được dùng để trao đổi dữ liệu media.

Ngoại lệ

TypeError

Ném ra nếu trackOrKind không phải "audio" hoặc "video".

Nếu dùng đối số sendEncodings, lỗi này cũng có thể được ném ra nếu có một thành viên rid định dạng sai, một số nhưng không phải tất cả các encoding có thành viên rid, hoặc các encoding khác nhau có cùng giá trị rid.

RangeError

Ném ra nếu bất kỳ encoding nào trong sendEncodings có giá trị maxFramerate nhỏ hơn 0.0, hoặc giá trị scaleResolutionDownBy nhỏ hơn 1.0.

InvalidStateError DOMException

Ném ra nếu phương thức được gọi khi kết nối liên quan đã đóng.

InvalidAccessError DOMException

Ném ra nếu dùng đối số sendEncodings, và nó chứa một tham số chỉ đọc ngoài rid.

Thông số kỹ thuật

Thông số kỹ thuật
WebRTC: Real-Time Communication in Browsers
# dom-rtcpeerconnection-addtransceiver

Tương thích trình duyệt

Xem thêm