Go to the documentation of this file.
6 #include <openssl/aes.h>
7 #endif // USING_LIBCRYPTO
20 #ifdef USING_LIBCRYPTO
21 using AESKeyMap = QMap<QString, AES_KEY* >;
24 HLSRecStream(
int seq, uint64_t bitrate, QString m3u8_url, QString segment_base_url);
27 int Read(uint8_t* buffer,
int len);
50 std::chrono::seconds
Duration(
void)
const;
63 #ifdef USING_LIBCRYPTO
66 const QString& keypath, AES_KEY* aeskey);
68 const QByteArray& IV,
const QString& keypath,
69 QByteArray& data, int64_t sequence);
70 bool SetAESIV(QString line);
71 bool IVLoaded(
void)
const {
return m_ivLoaded; }
73 QByteArray AESIV(
void) {
return m_aesIV; }
74 void SetKeyPath(
const QString& x) { m_keypath = x; }
75 #endif // USING_LIBCRYPTO
99 #ifdef USING_LIBCRYPTO
102 bool m_ivLoaded {
false};
103 QByteArray m_aesIV {AES_BLOCK_SIZE,0};
105 #endif // USING_LIBCRYPTO
108 #endif // HLS_STREAM_H
int DiscontinuitySequence(void)
std::chrono::seconds Duration(void) const
uint NumReleasedSegments(void) const
int RetryCount(void) const
HLSRecStream(int seq, uint64_t bitrate, QString m3u8_url, QString segment_base_url)
bool operator<(const HLSRecStream &b) const
static bool IsGreater(const HLSRecStream *s1, const HLSRecStream *s2)
void SetDiscontinuitySequence(int s)
std::chrono::seconds m_duration
int Read(uint8_t *buffer, int len)
uint NumTotalSegments(void) const
QString SegmentBaseUrl(void) const
std::chrono::seconds m_targetDuration
void SetBitrate(uint64_t bitrate)
std::chrono::seconds TargetDuration(void) const
uint64_t AverageBandwidth(void) const
QString toString(void) const
QQueue< int64_t > m_bandwidthSegs
void SetTargetDuration(std::chrono::seconds x)
uint64_t Bitrate(void) const
bool operator>(const HLSRecStream &b) const
void SetSegmentBaseUrl(const QString &n)
void SetCurrentByteRate(uint64_t byterate)
uint64_t CurrentByteRate(void) const
uint NumCachedSegments(void) const
QString M3U8Url(void) const