将远端视频渲染视图和内容视图的视频内容模式从 `.fit` 改为 `.fill`,并调整控制面板布局,将录制与断开按钮单独成行,提升界面利用率与操作体验。
16 lines
507 B
Swift
16 lines
507 B
Swift
import SwiftUI
|
||
import WebRTC
|
||
|
||
/// SwiftUI 包装:WebRTC Metal 视频渲染视图(UIKit)。
|
||
/// 渲染视图实例由 ViewModel 持有,保证视频轨道 attach 后跨 SwiftUI 刷新周期不丢失。
|
||
struct RemoteVideoView: UIViewRepresentable {
|
||
let videoView: RTCMTLVideoView
|
||
|
||
func makeUIView(context: Context) -> RTCMTLVideoView {
|
||
videoView.videoContentMode = .scaleAspectFill
|
||
return videoView
|
||
}
|
||
|
||
func updateUIView(_ uiView: RTCMTLVideoView, context: Context) {}
|
||
}
|