-
Notifications
You must be signed in to change notification settings - Fork 178
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Distorted attached view to TVILocalVideoTrack #119
Comments
Hi @alexiss03! I'm working on reproducing this issue and have a couple questions for you.
Thanks! Ryan |
Hi Ryan! Thanks for the timely response.
I've created a fork of your repository for this issue, you may view it here in where I've edited the Best, |
Hi Ryan, Just checking if you were able to replicate this issue. Thanks! Best, |
Hi Lexi, I performed following tests on your branch but could not reproduce the problem.
Is it possible for you to provide the screenshot or video when problem reproduces? Also, can you send the device and iOS information where you are running the tests? Thanks, |
Hi Piyush, Thanks for the reply. I attached here a video of the issue. I put the video file inside the zipped file to be able to upload here in Github. Another thing, I forgot to tell you before that this issue is easily replicated on iPhone 5 devices while difficult on newer ones such as iPhone 6. The device used in the video is iPhone 5 running on iOS 10.2.1. After tapping the iPhone 5 10.2.1 TwilioVideo Distorted Local Video Track.zip Best, |
Thanks @alexiss03 Yes, I am able to reproduce the problem on your branch now. The problem you have found in Video SDK is a frame rotation bug in our OpenGL ES Renderer pipeline while previewing the local camera feed. The problem happens when you show the view and enable the local video track after disabling it. I was able to reproduce the problem on your branch without applying any changes. Then I modified
Video SDK supports two video renderer types: Metal and OpenGL ES. For 64-bit devices, the default renderer SDK uses is Metal Renderer, otherwise, OpenGL ES Renderer is used. Metal Renderer is not supported on non 64-bit devices. So, for iPhone 5, SDK uses Open GL ES Renderer pipeline for video rendering, where we have bug in our SDK and that's why the problem is reproducible on iPhone 5 but not on iPhone 6. (Here is the documentation) We will prioritize the issue and release the fix very soon. In the meantime is it possible for you to apply one of the following workarounds? : Workaround - 1 - Instead of enabling and disabling the track, can you remove the track and add it back in your app? Workaround -2 - Implementing I apologize for the inconvenience. I will let you know once the fix becomes available. |
Hi Piyush, Thank you for your timely and detailed response. I'll try the workarounds you suggested and will let you know what will work on my end. Best, |
Hi Piyush, I tried implementing the Workarounds you suggested.
As for Best, |
@alexiss03 When local video track gets disabled, other participants in the Room receives black frames. The renderer added to local video track on local device receives black frames as well. The root cause of the problem is, on Open GL ES renderer, after the local video track is disabled, frame rotation gets incorrect values. That's why At this point, I would recommend waiting for a few days until we fix the problem. As mentioned earlier, we have prioritized this issue and the fix will be released in a few day. I will update you when we release the fix. Thanks for your patience, and I apologize for the inconvenience! |
Hi Piyush, I'm looking forward on your fix. Thanks for the urgent response! Cheers, |
I just wanted to touch base to let you know that we just released 1.0.1 of Twilio Video and it contains the fix for the issue that you reported. Let us know if you have any further issues! Ryan |
Hi Ryan, The fix works perfectly on my end. Thanks! Best, |
Hi, I am now experiencing a similar issue on iOS 13 Beta. (Everything works perfectly on iOS 12 still) Everything works as intended initially, but when the camera source gets interrupted then uninterrupted (which i do at points intentionally in my app), and the function cameraSourceInterruptionEnded(_ source: TVICameraSource) Any help would be greatly appreciated Thank you! |
Hi @kselvin, Could you please open up a separate issue for the distortion you are seeing on iOS 13? It would be great to know exact reproduction steps, for example would backgrounding and foregrounding the QuickStart example cause the same distortion to occur? On what device model and SDK version does the bug occur? Thank you, |
It is not actually in the example app it is in my own application -- however I can confirm this is not an issue when running iOS 12 on the same device model (iPhone 7 Plus) To replicate
Using: Note: Backgrounding and foregrounding does NOT cause the issue -- only when interruption is caused with reason = "used by another client" Where would be a better place to write this? Thanks a ton!
|
Hi @kselvin, Thank you! If possible could you open an issue in: https://github.com/twilio/twilio-video-ios/issues with this information. I'd be happy to look into it. I tried the backgrounding and foregrounding case on iOS 13.0-beta8, but as you mentioned I was not able to reproduce the corruption that way. Best, |
Thanks doing it now! |
Hi!
I have
TVIVideoView
attached to aTVILocalVideoTrack
. ThisTVIVideoView
is a subview of a parentUIView
. ThisTVIVideoView
is horizontally or vertically flipped and thecontentMode
is set toscaleToFill
after doing the following steps.STEPS TO REPLICATE:
contentMode
of the parentUIView
toscaleAspectFill
.TVILocalVideoTrack isEnabled
property to false.isHIdden
property of the parentUIView
to true.CGAffineTransform.init(scaleX: 0, y: 0)
to the parentUIView
.TVILocalVideoTrack isEnabled
property to true.CGAffineTransform.init(scaleX: 1, y: 1)
to the parentUIView
.isHidden
property of the parentUIView
to false.Hoping you can help me this. Thanks you!
Best,
Lexi
The text was updated successfully, but these errors were encountered: