子视图未通过 twilio 传输
Subview not getting transmitted over twilio
我是 twilio 的新手,我正在尝试在快速入门教程中将 subview
添加到 localVideoTrack
,UIView
正在获取添加到移动设备上显示的渲染器,但不添加到 localVideoTrack
,并且不会传输给其他用户。请任何人都可以指导我通过这里吗?我在互联网上查过,但没有 material 可以帮助我从相机中添加遮罩或 UIView 到捕获的视图并通过移动设备发送。提前谢谢你。
UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"mask.png"]];
imageView.bounds = self.camera.previewView.bounds;
[self.camera.previewView addSubview:imageView];
imageView.bounds = self.previewView.bounds;
[self.previewView addSubview:imageView];
self.localVideoTrack = [TVILocalVideoTrack trackWithCapturer:self.camera];
if (!self.localVideoTrack) {
[self logMessage:@"Failed to add video track"];
} else {
// Add renderer to video track for local preview
[self.localVideoTrack addRenderer:self.previewView];
}
这里是 Twilio 开发人员布道者。
当您向 localVideoTrack
添加子视图时,您仅在主机设备上使用 UIViews
,而不是直接使用视频流,因此它不会出现在另一端。
对我来说,您似乎有两个选择。您可以尝试在摄像头和 Twilio SDK 之间拦截视频流本身,并即时更改视频流本身。您可能需要为此实现自己的 TVIVideoCapturer
。
或者,您可以将要在视频上显示的任何内容共享到视频流本身之外的连接的另一端。您可以使用 Twilio Sync 共享状态来实现此目的,并以与现在使用轨道渲染器相同的方式实现覆盖。
如果有帮助请告诉我。
我是 twilio 的新手,我正在尝试在快速入门教程中将 subview
添加到 localVideoTrack
,UIView
正在获取添加到移动设备上显示的渲染器,但不添加到 localVideoTrack
,并且不会传输给其他用户。请任何人都可以指导我通过这里吗?我在互联网上查过,但没有 material 可以帮助我从相机中添加遮罩或 UIView 到捕获的视图并通过移动设备发送。提前谢谢你。
UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"mask.png"]];
imageView.bounds = self.camera.previewView.bounds;
[self.camera.previewView addSubview:imageView];
imageView.bounds = self.previewView.bounds;
[self.previewView addSubview:imageView];
self.localVideoTrack = [TVILocalVideoTrack trackWithCapturer:self.camera];
if (!self.localVideoTrack) {
[self logMessage:@"Failed to add video track"];
} else {
// Add renderer to video track for local preview
[self.localVideoTrack addRenderer:self.previewView];
}
这里是 Twilio 开发人员布道者。
当您向 localVideoTrack
添加子视图时,您仅在主机设备上使用 UIViews
,而不是直接使用视频流,因此它不会出现在另一端。
对我来说,您似乎有两个选择。您可以尝试在摄像头和 Twilio SDK 之间拦截视频流本身,并即时更改视频流本身。您可能需要为此实现自己的 TVIVideoCapturer
。
或者,您可以将要在视频上显示的任何内容共享到视频流本身之外的连接的另一端。您可以使用 Twilio Sync 共享状态来实现此目的,并以与现在使用轨道渲染器相同的方式实现覆盖。
如果有帮助请告诉我。