Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Join us on Thursday, June 8, for a Q&A with Unity's Content Pipeline group here on the forum, and on the Unity Discord, and discuss topics around Content Build, Import Workflows, Asset Database, and Addressables!
    Dismiss Notice

New Native Level Crash - webrtc::RtcEventLogImpl::StartLogging

Discussion in 'Unity Render Streaming' started by Maktech, Feb 5, 2022.

  1. Maktech


    Jan 15, 2015
    We have started to experience a new crash over the last month (01/2022) when having multiple users join the streaming session. We have not seen this before, we have been using the same webrtc.dll / com.unity.webrtc package (2.1.3) 05/2021. Before we have tested with up to 20 people in a session without a crash. Now this happens when we reach 3 to 4 in a session, at times it does take to have players join and leave to catch it.

    After moving the webrtc.pdb to where the exe can see it (in the same directory as the game exe, not the webrtc.dll as you would expect). We have seen this crash in and out of the editor.

    In a stand alone build we see this callstack as the 3rd or 4th user attempts to join the session:

    0x00007FFA73CB7412 (webrtc) aom_highbd_sad64x16x4d_sse2
    0x00007FFA73CAB3ED (webrtc) aom_highbd_sad64x16x4d_sse2
    0x00007FFA74299CAB (webrtc) std::_Compressed_pair<std::default_delete<webrtc::RtcEventLogEncoder>,
    webrtc::RtcEventLogEncoder * __ptr64,
    webrtc::RtcEventLogEncoder * __ptr64,
    webrtc::RtcEventLogEncoderNewFormat * __ptr64>
    0x00007FFA7429A65B (webrtc) rtc::safe_cmp_impl::LeOp::Op<__int64,int>
    0x00007FFA742988B6 (webrtc) std::vector<webrtc::RtpHeaderExtensionCapability,std::allocator<webrtc::RtpHeaderExtensionCapability> >::_Umove
    0x00007FFA7429ECE1 (webrtc) webrtc::RtcEventLogImpl::StartLogging
    0x00007FFA73D3932A (webrtc) aom_sad64x16x4d_avg_sse2
    0x00007FFA73D76639 (webrtc) vpx_highbd_sad64x32x4d_sse2
    0x00007FFAB35A7974 (KERNEL32) BaseThreadInitThunk
    0x00007FFAB615A2F1 (ntdll) RtlUserThreadStart

    In editor we see this call stack after the 3rd or 4th user attempts to join the session:

    0x00007FFEF1304F69 (KERNELBASE) RaiseException
    0x00007FFE5827C45C (webrtc) std::vector<std::unique_ptr<webrtc::GainControlImpl::MonoAgcState,
    std::default_delete<webrtc::GainControlImpl::MonoAgcState> >,
    std::default_delete<webrtc::GainControlImpl::MonoAgcState> > > >::_Calculate_growth
    0x00007FFE57A04C43 (webrtc) aom_highbd_sad64x16x4d_sse2
    0x00007FFE579FB76E (webrtc) aom_highbd_sad64x16x4d_sse2
    0x00007FFE57FEE07D (webrtc) webrtc::RtcEventLogImpl::LogEventsFromMemoryToOutput
    0x00007FFE57FEA342 (webrtc) rtc::webrtc_logging_impl::LogStreamer<rtc::webrtc_logging_impl::Val<3,__int64>,rtc::webrtc_logging_impl::Val<9,char const * __ptr64>,rtc::webrtc_logging_impl::Val<3,__int64>,rtc::webrtc_logging_impl::Val<9,char const * __ptr64>,rtc::webrtc_logging_impl::Val<13,rtc::webrtc_logging_impl::LogMetadata> >::eek:perator<<<char [3],rtc::webrtc_logging_impl::Val<9,char const * __ptr64>,0>
    0x00007FFE57FE88B6 (webrtc) std::vector<webrtc::RtpHeaderExtensionCapability,std::allocator<webrtc::RtpHeaderExtensionCapability> >::_Umove
    0x00007FFE57FEECE1 (webrtc) webrtc::RtcEventLogImpl::StartLogging
    0x00007FFE57A8932A (webrtc) aom_sad64x16x4d_avg_sse2
    0x00007FFE57AC6639 (webrtc) vpx_highbd_sad64x32x4d_sse2
    0x00007FFEF3657034 (KERNEL32) BaseThreadInitThunk
    0x00007FFEF3B02651 (ntdll) RtlUserThreadStart

    We are working on disabling the native logging but, so far can't get the StartLogging's passed in RtcEventLogOutput to be set to inactive.

    Any suggestions? Has anyone else seen this?

  2. kazuki_unity729


    Unity Technologies

    Aug 2, 2018
    Are you using the version 2.1.3?
    It is difficult to say for the issue about the old version.