mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
for #299, refine code.
This commit is contained in:
parent
ede1c34a25
commit
cee9d736a4
4 changed files with 64 additions and 13 deletions
|
@ -28,19 +28,45 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||
#include <srs_app_config.hpp>
|
||||
#include <srs_rtmp_stack.hpp>
|
||||
|
||||
SrsMpegDash::SrsMpegDash()
|
||||
SrsFragmentedMp4::SrsFragmentedMp4()
|
||||
{
|
||||
}
|
||||
|
||||
SrsFragmentedMp4::~SrsFragmentedMp4()
|
||||
{
|
||||
}
|
||||
|
||||
SrsMpdWriter::SrsMpdWriter()
|
||||
{
|
||||
}
|
||||
|
||||
SrsMpdWriter::~SrsMpdWriter()
|
||||
{
|
||||
}
|
||||
|
||||
SrsDashController::SrsDashController()
|
||||
{
|
||||
}
|
||||
|
||||
SrsDashController::~SrsDashController()
|
||||
{
|
||||
}
|
||||
|
||||
SrsDash::SrsDash()
|
||||
{
|
||||
hub = NULL;
|
||||
req = NULL;
|
||||
controller = new SrsDashController();
|
||||
|
||||
enabled = false;
|
||||
}
|
||||
|
||||
SrsMpegDash::~SrsMpegDash()
|
||||
SrsDash::~SrsDash()
|
||||
{
|
||||
srs_freep(controller);
|
||||
}
|
||||
|
||||
int SrsMpegDash::initialize(SrsOriginHub* h, SrsRequest* r)
|
||||
int SrsDash::initialize(SrsOriginHub* h, SrsRequest* r)
|
||||
{
|
||||
int ret = ERROR_SUCCESS;
|
||||
|
||||
|
@ -50,7 +76,7 @@ int SrsMpegDash::initialize(SrsOriginHub* h, SrsRequest* r)
|
|||
return ret;
|
||||
}
|
||||
|
||||
int SrsMpegDash::on_publish()
|
||||
int SrsDash::on_publish()
|
||||
{
|
||||
int ret = ERROR_SUCCESS;
|
||||
|
||||
|
@ -68,7 +94,7 @@ int SrsMpegDash::on_publish()
|
|||
return ret;
|
||||
}
|
||||
|
||||
int SrsMpegDash::on_audio(SrsSharedPtrMessage* shared_audio, SrsFormat* format)
|
||||
int SrsDash::on_audio(SrsSharedPtrMessage* shared_audio, SrsFormat* format)
|
||||
{
|
||||
int ret = ERROR_SUCCESS;
|
||||
|
||||
|
@ -79,7 +105,7 @@ int SrsMpegDash::on_audio(SrsSharedPtrMessage* shared_audio, SrsFormat* format)
|
|||
return ret;
|
||||
}
|
||||
|
||||
int SrsMpegDash::on_video(SrsSharedPtrMessage* shared_video, SrsFormat* format)
|
||||
int SrsDash::on_video(SrsSharedPtrMessage* shared_video, SrsFormat* format)
|
||||
{
|
||||
int ret = ERROR_SUCCESS;
|
||||
|
||||
|
@ -90,7 +116,7 @@ int SrsMpegDash::on_video(SrsSharedPtrMessage* shared_video, SrsFormat* format)
|
|||
return ret;
|
||||
}
|
||||
|
||||
void SrsMpegDash::on_unpublish()
|
||||
void SrsDash::on_unpublish()
|
||||
{
|
||||
// Prevent duplicated unpublish.
|
||||
if (!enabled) {
|
||||
|
|
|
@ -35,25 +35,49 @@ class SrsSharedPtrMessage;
|
|||
class SrsFormat;
|
||||
|
||||
/**
|
||||
* The FMP4(Fragmented MP4) for DASH streaming.
|
||||
*/
|
||||
class SrsFragmentedMp4
|
||||
{
|
||||
public:
|
||||
SrsFragmentedMp4();
|
||||
virtual ~SrsFragmentedMp4();
|
||||
};
|
||||
|
||||
/**
|
||||
* The writer to write MPD for DASH.
|
||||
*/
|
||||
class SrsMpdWriter
|
||||
{
|
||||
public:
|
||||
SrsMpdWriter();
|
||||
virtual ~SrsMpdWriter();
|
||||
};
|
||||
|
||||
/**
|
||||
* The controller for DASH, control the MPD and FMP4 generating system.
|
||||
*/
|
||||
class SrsDashController
|
||||
{
|
||||
public:
|
||||
SrsDashController();
|
||||
virtual ~SrsDashController();
|
||||
};
|
||||
|
||||
/**
|
||||
* The MPEG-DASH encoder, transmux RTMP to DASH.
|
||||
*/
|
||||
class SrsMpegDash
|
||||
class SrsDash
|
||||
{
|
||||
private:
|
||||
bool enabled;
|
||||
private:
|
||||
SrsRequest* req;
|
||||
SrsOriginHub* hub;
|
||||
SrsDashController* controller;
|
||||
public:
|
||||
SrsMpegDash();
|
||||
virtual ~SrsMpegDash();
|
||||
SrsDash();
|
||||
virtual ~SrsDash();
|
||||
public:
|
||||
// Initalize the encoder.
|
||||
virtual int initialize(SrsOriginHub* h, SrsRequest* r);
|
||||
|
@ -68,3 +92,4 @@ public:
|
|||
};
|
||||
|
||||
#endif
|
||||
|
||||
|
|
|
@ -845,7 +845,7 @@ SrsOriginHub::SrsOriginHub()
|
|||
is_active = false;
|
||||
|
||||
hls = new SrsHls();
|
||||
dash = new SrsMpegDash();
|
||||
dash = new SrsDash();
|
||||
dvr = new SrsDvr();
|
||||
#ifdef SRS_AUTO_TRANSCODE
|
||||
encoder = new SrsEncoder();
|
||||
|
|
|
@ -57,7 +57,7 @@ class SrsConnection;
|
|||
class SrsMessageHeader;
|
||||
class SrsHls;
|
||||
class SrsDvr;
|
||||
class SrsMpegDash;
|
||||
class SrsDash;
|
||||
#ifdef SRS_AUTO_TRANSCODE
|
||||
class SrsEncoder;
|
||||
#endif
|
||||
|
@ -427,7 +427,7 @@ private:
|
|||
// hls handler.
|
||||
SrsHls* hls;
|
||||
// The DASH encoder.
|
||||
SrsMpegDash* dash;
|
||||
SrsDash* dash;
|
||||
// dvr handler.
|
||||
SrsDvr* dvr;
|
||||
// transcoding handler.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue