mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
RTC: Enable track of player when init done.
This commit is contained in:
parent
8aa20d390e
commit
0eae1bd493
6 changed files with 55 additions and 2 deletions
|
@ -525,6 +525,35 @@ void SrsRtcPlayStream::nack_fetch(vector<SrsRtpPacket2*>& pkts, uint32_t ssrc, u
|
|||
}
|
||||
}
|
||||
|
||||
void SrsRtcPlayStream::set_track_status(bool status)
|
||||
{
|
||||
std::ostringstream merged_log;
|
||||
|
||||
// set video track status
|
||||
if (true) {
|
||||
std::map<uint32_t, SrsRtcVideoSendTrack*>::iterator it;
|
||||
for (it = video_tracks_.begin(); it != video_tracks_.end(); ++it) {
|
||||
SrsRtcVideoSendTrack* track = it->second;
|
||||
|
||||
bool previous = track->set_track_status(status);
|
||||
merged_log << "{track: " << track->get_track_id() << ", is_active: " << previous << "=>" << status << "},";
|
||||
}
|
||||
}
|
||||
|
||||
// set audio track status
|
||||
if (true) {
|
||||
std::map<uint32_t, SrsRtcAudioSendTrack*>::iterator it;
|
||||
for (it = audio_tracks_.begin(); it != audio_tracks_.end(); ++it) {
|
||||
SrsRtcAudioSendTrack* track = it->second;
|
||||
|
||||
bool previous = track->set_track_status(status);
|
||||
merged_log << "{track: " << track->get_track_id() << ", is_active: " << previous << "=>" << status << "},";
|
||||
}
|
||||
}
|
||||
|
||||
srs_trace("set status, %s", merged_log.str().c_str());
|
||||
}
|
||||
|
||||
srs_error_t SrsRtcPlayStream::notify(int type, srs_utime_t interval, srs_utime_t tick)
|
||||
{
|
||||
srs_error_t err = srs_success;
|
||||
|
@ -2276,6 +2305,19 @@ srs_error_t SrsRtcConnection::do_send_packets(const std::vector<SrsRtpPacket2*>&
|
|||
return err;
|
||||
}
|
||||
|
||||
srs_error_t SrsRtcConnection::set_play_track_status(bool status)
|
||||
{
|
||||
srs_error_t err = srs_success;
|
||||
|
||||
if (!player_) {
|
||||
return srs_error_new(ERROR_RTC_NO_PLAYER, "set play track status");
|
||||
}
|
||||
|
||||
player_->set_track_status(status);
|
||||
|
||||
return err;
|
||||
}
|
||||
|
||||
#ifdef SRS_OSX
|
||||
// These functions are similar to the older byteorder(3) family of functions.
|
||||
// For example, be32toh() is identical to ntohl().
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue