Skip to content

Commit

Permalink
Add releaseStream call before creating a stream
Browse files Browse the repository at this point in the history
  • Loading branch information
levs42 committed Mar 15, 2024
1 parent 17d67f5 commit 68d7212
Showing 1 changed file with 9 additions and 0 deletions.
9 changes: 9 additions & 0 deletions Sources/RTMP/RTMPStream.swift
Original file line number Diff line number Diff line change
Expand Up @@ -256,6 +256,7 @@ open class RTMPStream: IOStream {
addEventListener(.rtmpStatus, selector: #selector(on(status:)), observer: self)
connection.addEventListener(.rtmpStatus, selector: #selector(on(status:)), observer: self)
if connection.connected {
releaseStream()
connection.createStream(self)
}
mixer.muxer = muxer
Expand Down Expand Up @@ -548,6 +549,7 @@ open class RTMPStream: IOStream {
switch code {
case RTMPConnection.Code.connectSuccess.rawValue:
readyState = .initialized
releaseStream()
connection.createStream(self)
case RTMPStream.Code.playReset.rawValue:
readyState = .play
Expand All @@ -562,6 +564,13 @@ open class RTMPStream: IOStream {
}

extension RTMPStream {
func releaseStream() {
guard let connection, let name = info.resourceName, connection.flashVer.contains("FMLE/") else {
return
}
connection.call("releaseStream", responder: nil, arguments: name)
}

func FCPublish() {
guard let connection, let name = info.resourceName, connection.flashVer.contains("FMLE/") else {
return
Expand Down

0 comments on commit 68d7212

Please sign in to comment.