我使用Twilio API在两个用户之间创建视频聊天。 第一个用户视频图片必须是第二个用户图片上方的较小圆圈。
第二个用户使用USB摄像头,我得到“水平矩形”视频,所以我需要在这个矩形上移动我的视频圈:
我尝试获取CMVideoDimensions:
extension VideoChatViewController: TVIParticipantDelegate {
func participant(_ participant: TVIParticipant, addedVideoTrack videoTrack: TVIVideoTrack) {
logMessage(messageText: "Participant \(participant.identity) added video track")
if (self.participant == participant) {
videoTrack.attach(self.remoteView)
let dimensions = videoTrack.videoDimensions
let height = dimensions.height
let width = dimensions.width
print ("\(height) ; \(width)")
}
}
}
但是我得到了height = 0和width = 0。 如何获得视频轨道的大小?
答案 0 :(得分:1)
Twilio开发者传道者在这里。
我已经与视频团队进行了交谈,我被告知videoDimensions
即将在即将到来的测试版中被TVIVideoTrack
课程弃用,因为它不能正常工作,因为你'我发现了。
获取videoDimensions
的更好方法是TVIVideoViewRenderer
。以下是将视频视图渲染器添加到视频轨道的代码段:
let renderer = TVIVideoViewRenderer.init(delegate: self)
videoTrack.addRenderer(renderer)
renderer.view.frame = view.bounds
renderer.view.contentMode = .scaleAspectFill
view.addSubview(renderer.view)
如果有帮助,请告诉我。