调节视频播放页面中的customboard页面

This commit is contained in:
bluesea 2024-04-28 10:03:08 +08:00
parent 81152261cd
commit 00ad890c02
3 changed files with 46 additions and 4 deletions

View File

@ -425,11 +425,15 @@ class CCSpatialVideoDisplayController: BaseController {
//isAirPlayActive //isAirPlayActive
func setttinisScreenMirroring(isScreenMirroring:Bool){ func setttinisScreenMirroring(isScreenMirroring:Bool){
customPlayer.isPlayingOnExternalScreen = isScreenMirroring
releaseVideoComposition() releaseVideoComposition()
// //
if(isScreenMirroring){ if(isScreenMirroring){
self.dealTaskWhenExternalScreenConnect() self.dealTaskWhenExternalScreenConnect()
customPlayer.currentED = 0//,ed0
CustomParamBoardView.exHidenBoard()
}else{ }else{
// //
self.dealTaskWhenExternalScreenDisConnect() self.dealTaskWhenExternalScreenDisConnect()

View File

@ -17,6 +17,8 @@ class ZZHCustomPlayer: UIView {
var maskViewTapCallback:CustomMaskViewTapCallback? var maskViewTapCallback:CustomMaskViewTapCallback?
// //
var isLandscape:Bool = false var isLandscape:Bool = false
//
var isPlayingOnExternalScreen = false
// //
var sourceVideoURL:URL? var sourceVideoURL:URL?
var assetTrack:AVAssetTrack? var assetTrack:AVAssetTrack?
@ -233,7 +235,7 @@ class ZZHCustomPlayer: UIView {
self?.currentED = 0 self?.currentED = 0
}, dismissCallback:{[weak self] in }, dismissCallback:{[weak self] in
self?.saveParams() self?.saveParams()
},scale: currentScale, ed: currentED) },scale: currentScale, ed: currentED,canChangeED: isPlayingOnExternalScreen)
} }
//sliderseek //sliderseek

View File

@ -325,6 +325,12 @@ class CustomParamBoardView: UIView {
var edSlider:CCSlider? var edSlider:CCSlider?
var edTitleLabel:UILabel? var edTitleLabel:UILabel?
//,,,
var isPlayingOnExternalScreen = false {
didSet {
upadteUIWithIsPlayingOnExternalScreen(isPlayingOnExternalScreen)
}
}
let bgViewHeight = 400 let bgViewHeight = 400
lazy var bgView:UIView = { lazy var bgView:UIView = {
let bg = UIView() let bg = UIView()
@ -357,6 +363,25 @@ class CustomParamBoardView: UIView {
let superBgView = UIView() let superBgView = UIView()
//
func upadteUIWithIsPlayingOnExternalScreen(_ isPlayingOnExternalScreen:Bool) {
edSlider?.isHidden = isPlayingOnExternalScreen
edTitleLabel?.isHidden = isPlayingOnExternalScreen
if isPlayingOnExternalScreen {
self.superBgView.snp.updateConstraints { make in
make.height.equalTo(116)
}
}
else{
self.superBgView.snp.updateConstraints { make in
make.height.equalTo(170)
}
}
self.layoutIfNeeded()
}
override init(frame: CGRect) { override init(frame: CGRect) {
super.init(frame: frame) super.init(frame: frame)
let tgrBgView = UIView() let tgrBgView = UIView()
@ -476,7 +501,6 @@ class CustomParamBoardView: UIView {
self.scaleTitleLabel?.text = formattedValue self.scaleTitleLabel?.text = formattedValue
let minValue = 0.3 let minValue = 0.3
let maxValue = 1.8 let maxValue = 1.8
// let resultValue = minValue + (maxValue - minValue) * Double(value)
let v = (resultValue - minValue) / (maxValue - minValue) let v = (resultValue - minValue) / (maxValue - minValue)
self.scaleSlider?.slider?.value = Float(v) self.scaleSlider?.slider?.value = Float(v)
} }
@ -540,8 +564,18 @@ class CustomParamBoardView: UIView {
} }
} }
//,
class func showBoard(scaleCallback:@escaping CustomParamBoardViewScaleCallback,edCallback:@escaping CustomParamBoardViewEDCallback,resetCallback:@escaping CustomParamBoardViewResetCallback,dismissCallback:@escaping CustomParamBoardViewDismissCallback,scale:CGFloat,ed:Int) { class func exHidenBoard(){
if let view = KWindow?.viewWithTag(3100) {
UIView.animate(withDuration: 0.25) {
view.alpha = 0
} completion: { finish in
view.removeFromSuperview()
}
}
}
class func showBoard(scaleCallback:@escaping CustomParamBoardViewScaleCallback,edCallback:@escaping CustomParamBoardViewEDCallback,resetCallback:@escaping CustomParamBoardViewResetCallback,dismissCallback:@escaping CustomParamBoardViewDismissCallback,scale:CGFloat,ed:Int,canChangeED:Bool) {
let view = CustomParamBoardView(frame: .zero) let view = CustomParamBoardView(frame: .zero)
view.scaleCallback = scaleCallback view.scaleCallback = scaleCallback
view.edCallback = edCallback view.edCallback = edCallback
@ -549,6 +583,8 @@ class CustomParamBoardView: UIView {
view.dismissCallback = dismissCallback view.dismissCallback = dismissCallback
view.exUpdateEDTitleLabelWith(currED: ed) view.exUpdateEDTitleLabelWith(currED: ed)
view.exUpdateScaleTitleWithValue(resultValue: scale) view.exUpdateScaleTitleWithValue(resultValue: scale)
view.isPlayingOnExternalScreen = canChangeED
view.tag = 3100
KWindow?.addSubview(view) KWindow?.addSubview(view)
view.snp.makeConstraints { make in view.snp.makeConstraints { make in
make.left.top.right.bottom.equalToSuperview() make.left.top.right.bottom.equalToSuperview()