Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions lib/RTSPClient.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ import {
import * as transform from "sdp-transform";
import RTPPacket from "./transports/RTPPacket";
const RTP_AVP = "RTP/AVP";
const RTP_AVPF = "RTP/AVPF"; // Used by AV1. This is RTP with Feedback (via RTCP) to request Keyframes via RTCP

const STATUS_OK = 200;
const STATUS_UNAUTH = 401;
Expand Down Expand Up @@ -267,7 +268,7 @@ export default class RTSPClient extends EventEmitter {
);
}

// For now, only RTP/AVP is supported. (Some RTSPS servers use RTP/SAVP)
// For now, only RTP/AVP and RTP/AVPF are supported. (Some RTSPS servers use RTP/SAVP)
const { media } = transform.parse(describeRes.mediaHeaders.join("\r\n"));

// Loop over the Media Streams in the SDP looking for Video or Audio
Expand Down Expand Up @@ -315,7 +316,7 @@ export default class RTSPClient extends EventEmitter {

if (
mediaSource.type === "video" &&
mediaSource.protocol === RTP_AVP &&
(mediaSource.protocol === RTP_AVP || mediaSource.protocol === RTP_AVPF) &&
mediaSource.rtp[0].codec === "AV1"
) {
this.emit("log", "AV1 Video Stream Found in SDP", "");
Expand Down
Loading