@@ -11,12 +11,12 @@ public class BroadcastSwift: NSObject {
1111 let uri = " rtmps://ingress.stream-io-video.com:443/par8f5s3gn2j.default.RdcC9Qr4j7pzr62FZbo8Q/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwczovL3Byb250by5nZXRzdHJlYW0uaW8iLCJzdWIiOiJ1c2VyL2phbmUiLCJ1c2VyX2lkIjoiamFuZSIsInZhbGlkaXR5X2luX3NlY29uZHMiOjYwNDgwMCwiZW52aXJvbm1lbnQiOiJwcm9udG8iLCJpYXQiOjE3NjA5Njc0MzMsImV4cCI6MTc2MTU3MjIzM30.pkBwlOMlo7wUJG4DSG7fk8QAxF912Y5UaErm4H6a59I "
1212
1313 print ( " [RTMP] Broadcast starting " )
14-
14+
1515 Task {
1616 do {
1717 let audioSourceService = AudioSourceService ( )
1818 await audioSourceService. setUp ( )
19-
19+
2020 print ( " [RTMP] Audio source created " )
2121
2222 let mixer = MediaMixer ( captureSessionMode: . single)
@@ -25,37 +25,31 @@ public class BroadcastSwift: NSObject {
2525 session. sessionPreset = . hd1280x720
2626 }
2727 await mixer. setMonitoringEnabled ( true )
28-
28+
2929 var videoMixerSettings = await mixer. videoMixerSettings
3030 videoMixerSettings. mode = . offscreen
3131 await mixer. setVideoMixerSettings ( videoMixerSettings)
32-
32+
3333 print ( " [RTMP] Mixer created " )
3434
3535 let front = AVCaptureDevice . default ( . builtInWideAngleCamera, for: . video, position: . front)
3636 try ? await mixer. attachVideo ( front, track: 0 ) { unit in unit. isVideoMirrored = true }
37-
37+
3838 let mic = AVCaptureDevice . default ( for: . audio)
3939 try ? await mixer. attachAudio ( mic)
4040
4141 await mixer. startCapturing ( )
4242 await mixer. startRunning ( )
43-
43+
4444 print ( " [RTMP] Mixer running " )
45-
46- await SessionBuilderFactory . shared. register ( RTMPSessionFactory ( ) )
47- let session = try await SessionBuilderFactory . shared. make ( URL ( string: uri) )
48- . setMode ( . publish)
49- . build ( )
50- guard let session else {
51- print ( " [RTMP] session is null " )
52- return completion ( - 1 , nil )
53- }
54-
45+
46+ let factory = RTMPSessionFactory . init ( )
47+ let session = factory. make ( URL ( string: uri) !, mode: . publish, configuration: nil )
48+
5549 print ( " [RTMP] Session created " )
5650
5751 await mixer. addOutput ( session. stream)
58-
52+
5953 var audioSettings = await session. stream. audioSettings
6054 audioSettings. format = . aac
6155 audioSettings. bitRate = 48000
@@ -64,7 +58,7 @@ public class BroadcastSwift: NSObject {
6458 var videoSettings = await session. stream. videoSettings
6559 videoSettings. isLowLatencyRateControlEnabled = false
6660 videoSettings. bitRateMode = . average
67- videoSettings. bitRate = 4200000
61+ videoSettings. bitRate = 2500000
6862 videoSettings. videoSize = CGSize ( width: 720 , height: 1280 )
6963 try await session. stream. setVideoSettings ( videoSettings)
7064
0 commit comments