Search Unity

  1. Unity Asset Manager is now available in public beta. Try it out now and join the conversation here in the forums.
    Dismiss Notice

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

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

  1. Maktech

    Maktech

    Joined:
    Jan 15, 2015
    Posts:
    31
    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,
    1>::_Compressed_pair<std::default_delete<webrtc::RtcEventLogEncoder>,
    webrtc::RtcEventLogEncoder * __ptr64,
    1><std::default_delete<webrtc::RtcEventLogEncoderNewFormat>,
    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::allocator<std::unique_ptr<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?

    Thanks,
    Matt
     
  2. kazuki_unity729

    kazuki_unity729

    Unity Technologies

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