in AliRTC2.5/Windows/MFC Demo/RtcSample/RTCSampleMainInterface.cpp [1860:1900]
void CRTCSampleMainInterface::MonitorSortingErrorReset()
{
if (m_vecRemoteInfoList.size() >= 5)
{
for (int index = 0; index < 5; index++)
{
if (m_vecThrowingScreenInfo[index].s_strRemoteUserUid == m_vecRemoteInfoList[index])
continue;
AliEngineVideoTrack vt = AliEngineVideoTrackCamera;
if (0 < index && m_vecRemoteInfoList[index - 1] == m_vecRemoteInfoList[index])
vt = AliEngineVideoTrackScreen;
ReplaceSubscribeFlow(m_vecThrowingScreenInfo[index].s_strRemoteUserUid, m_vecThrowingScreenInfo[index].vt,m_vecRemoteInfoList[index],vt, index);
}
}
else if (m_vecRemoteInfoList.size() > 0)
{
for (int index = 0; index < (int)m_vecRemoteInfoList.size(); index++)
{
if (m_vecThrowingScreenInfo[index].s_strRemoteUserUid == m_vecRemoteInfoList[index])
continue;
AliEngineVideoTrack vt = AliEngineVideoTrackCamera;
if (0 < index && m_vecRemoteInfoList[index - 1] == m_vecRemoteInfoList[index])
vt = AliEngineVideoTrackScreen;
ReplaceSubscribeFlow(m_vecThrowingScreenInfo[index].s_strRemoteUserUid, m_vecThrowingScreenInfo[index].vt, m_vecRemoteInfoList[index], vt, index);
}
for (int index2 = m_vecRemoteInfoList.size(); index2 < 5; index2++)
{
if (m_vecThrowingScreenInfo[index2].s_strRemoteUserUid == "") continue;
ClearChannel(m_vecThrowingScreenInfo[index2].s_strRemoteUserUid, m_vecThrowingScreenInfo[index2].vt);
m_vecThrowingScreenInfo[index2].s_strRemoteUserUid = "";
GetDlgItem(m_vecThrowingScreenInfo[index2].s_iReflectID)->SetWindowTextA("无信号");
GetDlgItem(m_vecThrowingScreenInfo[index2].s_iReflectTips)->SetWindowTextA("");
}
}
}