Код: Выделить всё
self.metalView = [RTC_OBJC_TYPE(XRTCMTLVideoView) createMetalView:self.bounds];
CAMetalLayer *layer = (CAMetalLayer *)self.metalView.layer;
[layer setMaximumDrawableCount:2];
self.metalView.delegate = self;
self.metalView.contentMode = UIViewContentModeScaleAspectFill;
self.metalView.preferredFramesPerSecond = [[UIScreen mainScreen] maximumFramesPerSecond];
< /code>
Два кадра ограниченных < /li>
Предполагаемый FPS составляет 60 Гц (iPhone13) < /li>
< /ol>
Я следил за задержкой, когда была представлена притяжение, и я могу видеть задержку на 32 мс больше или меньше. Presentstart - это время, когда мы совершаем команду. < /p>
[_view.currentDrawable addPresentedHandler:^(id _Nonnull drawable) {
CFTimeInterval presentEnd = CACurrentMediaTime();
RTCLogInfo(@"frame %@ drawable ID %lu of addr %p present cost %.3f ms,presentedTime:%.3f",
label,
drawable.drawableID,
drawable,
(presentEnd - presentStart) * 1000,
drawable.presentedTime);
}];
nated и не знаю. это то, что кодированная графическая кадр должна быть действительно отображена в следующем окне VSYNC.>
Подробнее здесь: https://stackoverflow.com/questions/795 ... on-the-scr