36 FlvMuxer(std::shared_ptr<StreamStats> streamStats);
71 size_t WriteToOutput(
const uint8_t* data,
size_t length,
bool rtmpData =
true);
73 template <
class _T>
size_t WriteToOutput(_T* data,
bool rtmpData =
true)
75 return WriteToOutput(reinterpret_cast<const uint8_t*> (data),
sizeof(_T), rtmpData);
78 size_t WriteToOutput(
const std::vector<uint8_t>& data,
bool rtmpData =
true)
FILE * mOutputFile
Definition: flvmuxer.h:83
TTV_ErrorCode EndChunk(size_t length)
void SetFlvPath(const std::wstring &path)
Definition: flvmuxer.h:62
std::unique_ptr< RtmpStream > mRtmpStream
Definition: flvmuxer.h:85
std::shared_ptr< StreamStats > mStreamStats
Definition: flvmuxer.h:86
TTV_ErrorCode GetAverageSendBitRate(uint64_t measurementWindowMilliseconds, uint64_t &bitsPerSecond) const
MuxerParameters mInitParams
Definition: flvmuxer.h:91
TTV_ErrorCode WriteAudioHeader(uint8_t audioFlags, AudioFormat encodingFormat)
uint64_t mTotalVideoPacketsSent
Definition: flvmuxer.h:95
std::string mRtmpUrl
Definition: flvmuxer.h:92
std::wstring mFlvPath
Definition: flvmuxer.h:93
JSON (JavaScript Object Notation).
Definition: adsapi.h:16
virtual TTV_ErrorCode WriteAudioPacket(const Packet &packet) override
virtual TTV_ErrorCode WriteVideoSpsPps(const std::vector< uint8_t > &sps, const std::vector< uint8_t > &pps) override
size_t WriteToOutput(const std::vector< uint8_t > &data, bool rtmpData=true)
Definition: flvmuxer.h:78
TTV_ErrorCode BeginChunk(flv::TagTypes type, uint32_t timestamp, size_t length)
FlvMuxer(std::shared_ptr< StreamStats > streamStats)
TagTypes
Definition: flvformat.h:22
void SetRtmpUrl(const std::string &url)
Definition: flvmuxer.h:61
uint32_t TTV_ErrorCode
Definition: errortypes.h:30
virtual TTV_ErrorCode Start(const MuxerParameters ¶ms) override
std::vector< uint8_t > mAudioFlags
Definition: flvmuxer.h:88
std::vector< uint8_t > mVideoFlags
Definition: flvmuxer.h:89
virtual TTV_ErrorCode WriteVideoPacket(const Packet &packet) override
size_t WriteToOutput(const uint8_t *data, size_t length, bool rtmpData=true)
TTV_ErrorCode WriteMetaPacket(const std::shared_ptr< AMF0Encoder > &encoder)
Definition: flvmuxer.h:33
Definition: broadcasttypes.h:253
AudioFormat
Definition: broadcasttypes.h:166
TTV_ErrorCode GetCongestionLevel(uint64_t measurementWindowMilliseconds, double &congestionLevel) const
size_t WriteToOutput(_T *data, bool rtmpData=true)
Definition: flvmuxer.h:73
virtual TTV_ErrorCode Stop() override