MediaSink忽略重复的track

This commit is contained in:
xia-chu 2023-12-09 21:04:07 +08:00
parent f100ea583e
commit 1c73be2e3f
1 changed files with 4 additions and 1 deletions

View File

@ -38,7 +38,10 @@ bool MediaSink::addTrack(const Track::Ptr &track_in) {
//克隆Track只拷贝其数据不拷贝其数据转发关系 //克隆Track只拷贝其数据不拷贝其数据转发关系
auto track = track_in->clone(); auto track = track_in->clone();
auto index = track->getIndex(); auto index = track->getIndex();
_track_map[index] = std::make_pair(track, false); if (!_track_map.emplace(index, std::make_pair(track, false)).second) {
WarnL << "Already add a same track: " << track->getIndex() << ", codec: " << track->getCodecName();
return false;
}
_track_ready_callback[index] = [this, track]() { _track_ready_callback[index] = [this, track]() {
onTrackReady(track); onTrackReady(track);
}; };