Remove pause(), resume(), togglePause(). Please use paused property.

This commit is contained in:
shogo4405 2019-09-08 00:23:02 +09:00
parent 055b8e4488
commit 2ef37d495f
2 changed files with 23 additions and 48 deletions

View File

@ -100,7 +100,7 @@ final class LiveViewController: UIViewController {
}
@IBAction func toggleTorch(_ sender: UIButton) {
rtmpStream.torch = !rtmpStream.torch
rtmpStream.torch.toggle()
}
@IBAction func on(slider: UISlider) {
@ -118,7 +118,7 @@ final class LiveViewController: UIViewController {
}
@IBAction func on(pause: UIButton) {
rtmpStream.togglePause()
rtmpStream.paused.toggle()
}
@IBAction func on(close: UIButton) {
@ -139,7 +139,7 @@ final class LiveViewController: UIViewController {
rtmpConnection.connect(Preference.defaultInstance.uri!)
publish.setTitle("", for: [])
}
publish.isSelected = !publish.isSelected
publish.isSelected.toggle()
}
@objc

View File

@ -229,7 +229,7 @@ open class RTMPStream: NetStream {
get { return mixer.audioIO.soundTransform }
set { mixer.audioIO.soundTransform = newValue }
}
open var receiveAudio: Bool = true {
open var receiveAudio = true {
didSet {
lockQueue.async {
guard self.readyState == .playing else {
@ -246,7 +246,8 @@ open class RTMPStream: NetStream {
}
}
}
open var receiveVideo: Bool = true {
open var receiveVideo = true {
didSet {
lockQueue.async {
guard self.readyState == .playing else {
@ -264,6 +265,20 @@ open class RTMPStream: NetStream {
}
}
open var paused = false {
didSet {
lockQueue.async {
switch self.readyState {
case .publish, .publishing:
self.mixer.audioIO.encoder.muted = self.paused
self.mixer.videoIO.encoder.muted = self.paused
default:
break
}
}
}
}
var id: UInt32 = RTMPStream.defaultID
var readyState: ReadyState = .initialized {
didSet {
@ -330,14 +345,13 @@ open class RTMPStream: NetStream {
var audioTimestamp: Double = 0
var videoTimestamp: Double = 0
private(set) var muxer = RTMPMuxer()
private var paused: Bool = false
private var sampler: MP4Sampler?
private var frameCount: UInt16 = 0
private var dispatcher: IEventDispatcher!
private var audioWasSent: Bool = false
private var videoWasSent: Bool = false
private var audioWasSent = false
private var videoWasSent = false
private var howToPublish: RTMPStream.HowToPublish = .live
private var isBeingClosed: Bool = false
private var isBeingClosed = false
private var rtmpConnection: RTMPConnection
public init(connection: RTMPConnection) {
@ -520,45 +534,6 @@ open class RTMPStream: NetStream {
}
}
open func pause() {
lockQueue.async {
self.paused = true
switch self.readyState {
case .publish, .publishing:
self.mixer.audioIO.encoder.muted = true
self.mixer.videoIO.encoder.muted = true
default:
break
}
}
}
open func resume() {
lockQueue.async {
self.paused = false
switch self.readyState {
case .publish, .publishing:
self.mixer.audioIO.encoder.muted = false
self.mixer.videoIO.encoder.muted = false
default:
break
}
}
}
open func togglePause() {
lockQueue.async {
switch self.readyState {
case .publish, .publishing:
self.paused = !self.paused
self.mixer.audioIO.encoder.muted = self.paused
self.mixer.videoIO.encoder.muted = self.paused
default:
break
}
}
}
open func appendFile(_ file: URL, completionHandler: MP4Sampler.Handler? = nil) {
lockQueue.async {
if self.sampler == nil {