mirror of
https://github.com/ZLMediaKit/ZLMediaKit.git
synced 2026-06-13 03:31:45 +08:00
完善MediaRecord 类
This commit is contained in:
@@ -70,24 +70,24 @@ MediaRecorder::MediaRecorder(const string &strVhost_tmp,
|
||||
MediaRecorder::~MediaRecorder() {
|
||||
}
|
||||
|
||||
void MediaRecorder::inputH264(void* pData, uint32_t ui32Length, uint32_t ui32TimeStamp, int iType) {
|
||||
if(_hlsMaker){
|
||||
// _hlsMaker->inputH264(pData, ui32Length, ui32TimeStamp, iType);
|
||||
void MediaRecorder::inputFrame(const Frame::Ptr &frame) {
|
||||
if (_hlsMaker) {
|
||||
_hlsMaker->inputFrame(frame);
|
||||
}
|
||||
#ifdef ENABLE_MP4V2
|
||||
if(_mp4Maker){
|
||||
// _mp4Maker->inputH264(pData, ui32Length, ui32TimeStamp, iType);
|
||||
if (_mp4Maker) {
|
||||
_mp4Maker->inputFrame(frame);
|
||||
}
|
||||
#endif //ENABLE_MP4V2
|
||||
}
|
||||
|
||||
void MediaRecorder::inputAAC(void* pData, uint32_t ui32Length, uint32_t ui32TimeStamp) {
|
||||
if(_hlsMaker){
|
||||
// _hlsMaker->inputAAC(pData, ui32Length, ui32TimeStamp);
|
||||
void MediaRecorder::addTrack(const Track::Ptr &track) {
|
||||
if (_hlsMaker) {
|
||||
_hlsMaker->addTrack(track);
|
||||
}
|
||||
#ifdef ENABLE_MP4V2
|
||||
if(_mp4Maker){
|
||||
// _mp4Maker->inputAAC(pData, ui32Length, ui32TimeStamp);
|
||||
if (_mp4Maker) {
|
||||
_mp4Maker->addTrack(track);
|
||||
}
|
||||
#endif //ENABLE_MP4V2
|
||||
}
|
||||
|
||||
@@ -39,7 +39,7 @@ using namespace toolkit;
|
||||
|
||||
namespace mediakit {
|
||||
|
||||
class MediaRecorder {
|
||||
class MediaRecorder : public MediaSink{
|
||||
public:
|
||||
typedef std::shared_ptr<MediaRecorder> Ptr;
|
||||
MediaRecorder(const string &strVhost,
|
||||
@@ -48,15 +48,19 @@ public:
|
||||
bool enableHls = true,
|
||||
bool enableMp4 = false);
|
||||
virtual ~MediaRecorder();
|
||||
protected:
|
||||
/**
|
||||
* 输入frame
|
||||
* @param frame
|
||||
*/
|
||||
void inputFrame(const Frame::Ptr &frame) override ;
|
||||
|
||||
void inputH264( void *pData,
|
||||
uint32_t ui32Length,
|
||||
uint32_t ui32TimeStamp,
|
||||
int iType);
|
||||
|
||||
void inputAAC( void *pData,
|
||||
uint32_t ui32Length,
|
||||
uint32_t ui32TimeStamp);
|
||||
/**
|
||||
* 添加track,内部会调用Track的clone方法
|
||||
* 只会克隆sps pps这些信息 ,而不会克隆Delegate相关关系
|
||||
* @param track
|
||||
*/
|
||||
void addTrack(const Track::Ptr & track) override;
|
||||
private:
|
||||
std::shared_ptr<HLSMaker> _hlsMaker;
|
||||
#ifdef ENABLE_MP4V2
|
||||
|
||||
Reference in New Issue
Block a user