Comments (10)
@tompi : This error indicates that previous ACSRenderer
object for that LocalVideoStream
/VideoDeviceInfo
is not yet disposed. Your message also backs up this hypothesis. Please try disposing ACSRenderer
. You don't need to dispose the view; disposing renderer disposes view as well.
But, agreed that this should not be a crash. I have created task to handle this gracefully and raise a more appropriate error.
from communication.
Hi @tompi Can you give more information, like
- How often is this reproducible ?
- Exact steps, API calls done to repro the issue
- Can you attach the logs ?
Steps to get logs
- In Xcode, go to Windows -> Devices and Simulators -> Devices -> Select your device -> Under Installed Apps -> Select your application -> Select at the bottom the settings icon -> Download container
- You will get a file with extension xcappdata, Right-Click and select โShow package contentsโ
- Go to Appdata->Library->Caches and upload the .blog files
from communication.
@raosanat This crash was probably due to not disposing the renderers and/or the videostream after a call hangup. Works fine after I started doing that.
from communication.
@raosanat : Sorry, seems this is still happening.
I spent some time debugging, and it seems to happen every time I try to make an ACSRendererView from the local video stream(works fine first time, but not the second time). Even though I dispose this, and most of the others, I only reuse ACSDeviceManager, ACSCallClient and ACSCallClient, that should be fine right?
Anyway, exception is still the same, but I attached it and also the complete logs.
I suspect this is your code that is throwing, but I can figure out why...:
*** Assertion failure in virtual void PreviewVideoRenderedBindingEvent::OnBindingFailed()(), /Volumes/ServerHD2/agent/_work/1/s/SpoolCallingStack/spool/sdk/iOS/ACSCallingSDK/SKPPullVideoRenderer/SKPPreviewVideoRenderer.mm:95
from communication.
@sankum-msft Hey, I did some more debugging on this, and I cant make it work. I tried disposing ACSRenderer, but same problem. I then tried disposing every object: ACSRenderer, ACSLocalVideoStream, ACSCall, ACSCallAgent, ACSDeviceManager and the ACSCallClient.
I could NOT manage to dispose the ACSCallClient: the app just hangs(indefinitely...). SO my theory is that the ACSCallClient is hanging on to some resource which makes the second group-call crash. If you have tested this on your end, Im probably doing something wrong(but I really have a minimal setup now... Is there a specific sequence I need to dispose all the objects in to make this work? (If you have some example code in which multiple sequential calls work that would be great!)
from communication.
Hi @tompi if you download your app data there will be a file called "acs_sdk.blog" in Caches folder, can you attach that ?
from communication.
Hey @raosanat , sorry about the delay, I downloaded the container, zipped it and attached to message:
acs-container.zip
from communication.
Just to be clear: this happens when I make two consecutive calls to the same group.
I dispose everything, except the ACSCallAgent, since trying to dispose this object just hangs the app(no crash, just hang)
from communication.
@raosanat and @sankum-msft : I just figured out that this was entirely my own fault... Sorry!
I had commented out the dispose method in the bindings(due to a warning). Once I commented in this I can du multiple calls fine after disposing the renderer.
My fix is here if you are curious: Laerdal/Xamarin.AzureCommunicationCalling@d68a94f
Again, sorry about wasting your time :(
from communication.
Good to know, that's ok ๐
from communication.
Related Issues (20)
- Outgoing screen share in Android / iOS browser HOT 1
- Feature Request - Compatible Browser check in Web SDK HOT 3
- Bug - iOS/Android - OnIsTranscriptionActiveChangedListener fires when users leave/join meeting during active Transcription HOT 1
- The ACS .NET SDK shows less video devices than the ACS JS SDK HOT 2
- [iOS]CallingSDK crash with ACSException `Attempting to get event handler for a cookie which was never added.' HOT 2
- [Android][Calling -1.3.0-beta1] Host video stream is unavailable when joining HOT 1
- [Android][Chat -1.1.0-beta.3] I cannot see images when host attaches them to the chat HOT 1
- Xamarin / MAUI NuGet package for Azure Communication Services HOT 10
- [BUG] Front camera is mirrored on receiving end HOT 4
- [BUG] [iOS] Calling SDK 2.1.0-beta.1 - Re-joining a teams meeting shows displayName as "External" HOT 2
- [BUG] Audio doesn't work after ongoing was meeting was interrupted through a phone call HOT 5
- [FEATURE REQ] Calling SDK - iOS - Raw media access - outgoing video HOT 6
- [BUG] CommunicationCalling crashes on hangup HOT 4
- [Android] [Calling - 2.0.0] Absent library logs
- I can run the calling sample above fine as a desktop app on x64. If I build it for arm64 and deploy it to a HoloLens I get the exception below when I make the call. Specifically when calling StartCallAsync. Is this expected to work on HoloLens? HOT 1
- [BUG] Audio is not working after incoming alarm HOT 4
- [WEB] : rear camera local preview is rotating on the mobile device HOT 2
- Cannot accept/reject a call once initial invitation is rejected by the same user in azure communication service (web sdk) HOT 1
- BackgroundBlurEffect.isSupported() returns true on unsupported browsers. HOT 4
- Email Opt-out and Suppression list functionality
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from communication.