1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-03-09 15:49:59 +00:00

Refine dash controller publish or unpublish

This commit is contained in:
winlin 2019-04-17 07:34:01 +08:00
parent 6380e8f1c0
commit e9770933a6
2 changed files with 23 additions and 4 deletions

View file

@ -310,7 +310,12 @@ srs_error_t SrsDashController::initialize(SrsRequest* r)
return srs_error_wrap(err, "mpd");
}
string home, path;
return err;
}
srs_error_t SrsDashController::on_publish()
{
srs_error_t err = srs_success;
srs_freep(vcurrent);
vcurrent = new SrsFragmentedMp4();
@ -327,6 +332,12 @@ srs_error_t SrsDashController::initialize(SrsRequest* r)
return err;
}
void SrsDashController::on_unpublish()
{
srs_freep(vcurrent);
srs_freep(acurrent);
}
srs_error_t SrsDashController::on_audio(SrsSharedPtrMessage* shared_audio, SrsFormat* format)
{
srs_error_t err = srs_success;
@ -491,6 +502,10 @@ srs_error_t SrsDash::on_publish()
}
enabled = true;
if ((err = controller->on_publish()) != srs_success) {
return srs_error_wrap(err, "controller");
}
return err;
}
@ -532,5 +547,7 @@ void SrsDash::on_unpublish()
}
enabled = false;
controller->on_unpublish();
}

View file

@ -138,6 +138,8 @@ public:
virtual ~SrsDashController();
public:
virtual srs_error_t initialize(SrsRequest* r);
virtual srs_error_t on_publish();
virtual void on_unpublish();
virtual srs_error_t on_audio(SrsSharedPtrMessage* shared_audio, SrsFormat* format);
virtual srs_error_t on_video(SrsSharedPtrMessage* shared_video, SrsFormat* format);
private: