/* * MediaRecorder.h * * Created on: 2016年12月8日 * Author: xzl */ #ifndef SRC_MEDIAFILE_MEDIARECORDER_H_ #define SRC_MEDIAFILE_MEDIARECORDER_H_ #include #include "Player/PlayerBase.h" #ifdef ENABLE_MP4V2 #include "Mp4Maker.h" #endif //ENABLE_MP4V2 #ifdef ENABLE_HLS #include "HLSMaker.h" #endif //ENABLE_HLS using namespace std; using namespace ZL::Player; namespace ZL { namespace MediaFile { class MediaRecorder { public: typedef std::shared_ptr Ptr; MediaRecorder(const string &strApp,const string &strId,const std::shared_ptr &pPlayer); virtual ~MediaRecorder(); void inputH264( void *pData, uint32_t ui32Length, uint32_t ui32TimeStamp, int iType); void inputAAC( void *pData, uint32_t ui32Length, uint32_t ui32TimeStamp); private: #ifdef ENABLE_HLS std::shared_ptr m_hlsMaker; #endif //ENABLE_HLS #ifdef ENABLE_MP4V2 std::shared_ptr m_mp4Maker; #endif //ENABLE_MP4V2 }; } /* namespace MediaFile */ } /* namespace ZL */ #endif /* SRC_MEDIAFILE_MEDIARECORDER_H_ */