Исправлена ​​ориентация захвата видео для RTCMTLVideoView webrtc - PullRequest
0 голосов
/ 30 ноября 2018

У меня есть приложение для iOS, которое поддерживает только портретную ориентацию при повороте устройства, когда видео, снятое с помощью RTCMTLVideoView, поворачивается в альбомную ориентацию, даже когда остальная часть пользовательского интерфейса остается в портретной ориентации.

Пока единственное решение, котороеЯ обнаружил, что нужно прослушать UIDeviceOrientationDidChangeNotification уведомление

[[NSNotificationCenter defaultCenter] addObserver:self  selector:@selector(orientationChanged:) name:UIDeviceOrientationDidChangeNotification  object:nil];

и отключить его

- (void)orientationChanged:(NSNotification *)notification{
    NSLog(@"orientation changed");
    [[UIDevice currentDevice] endGeneratingDeviceOrientationNotifications];
}

Есть ли способ предотвратить это поведение и оставить его заблокированным для портретабез этого уродливого обходного пути?

Ответы [ 2 ]

0 голосов
/ 06 декабря 2018

Проблема в моем случае заключалась в том, что видео, снятое фронтальной камерой, не было зеркальным.

Я исправил проблему, переворачивающую RTCMTLVideoView

self.myRTCMTLVideoView.transform = CGAffineTransformMakeScale(-1.0, 1.0)

0 голосов
/ 01 декабря 2018

Ответ предполагает использование последней стабильной M70 ветви WebRTC на данный момент, так как это движущаяся цель и API ее внутренних классов часто меняется.


ПохожеRTCMTLVideoView все еще находится в стадии разработки и не обрабатывает все сценарии надлежащим образом.У него есть свойство rotationOverride, но нет документации или примера того, как его использовать.В группах Google есть похожий вопрос , на который еще не обратили внимания, я призываю вас принять участие в обсуждении там, чтобы разработчики WebRTC знали об актуальности этой проблемы и предпринимали действия для ее устранения.

А пока предлагаю перейти на RTCEAGLVideoView, который в этом случае должен работать нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...