1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-03-09 15:49:59 +00:00

rename SrsStream to SrsBuffer

This commit is contained in:
winlin 2015-09-22 08:57:31 +08:00
parent ca3577e11b
commit 0e52fc6d5b
42 changed files with 440 additions and 440 deletions

View file

@ -212,7 +212,7 @@ int SrsFlvSegment::write_metadata(SrsSharedPtrMessage* metadata)
return ret; return ret;
} }
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(metadata->payload, metadata->size)) != ERROR_SUCCESS) { if ((ret = stream.initialize(metadata->payload, metadata->size)) != ERROR_SUCCESS) {
return ret; return ret;
} }
@ -357,7 +357,7 @@ int SrsFlvSegment::update_flv_metadata()
char* buf = new char[SrsAmf0Size::number()]; char* buf = new char[SrsAmf0Size::number()];
SrsAutoFree(char, buf); SrsAutoFree(char, buf);
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(buf, SrsAmf0Size::number())) != ERROR_SUCCESS) { if ((ret = stream.initialize(buf, SrsAmf0Size::number())) != ERROR_SUCCESS) {
return ret; return ret;
} }

View file

@ -36,7 +36,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
class SrsSource; class SrsSource;
class SrsRequest; class SrsRequest;
class SrsStream; class SrsBuffer;
class SrsRtmpJitter; class SrsRtmpJitter;
class SrsOnMetaDataPacket; class SrsOnMetaDataPacket;
class SrsSharedPtrMessage; class SrsSharedPtrMessage;

View file

@ -57,7 +57,7 @@ char flv_header[] = {'F', 'L', 'V',
string serialFlv(SrsSharedPtrMessage *msg) string serialFlv(SrsSharedPtrMessage *msg)
{ {
SrsStream *stream = new SrsStream; SrsBuffer *stream = new SrsBuffer;
int size = 15 + msg->size; int size = 15 + msg->size;
char *byte = new char[size]; char *byte = new char[size];
@ -147,7 +147,7 @@ public:
} }
char box_header[8]; char box_header[8];
SrsStream ss; SrsBuffer ss;
ss.initialize(box_header, 8); ss.initialize(box_header, 8);
ss.write_4bytes(8 + data.size()); ss.write_4bytes(8 + data.size());
ss.write_string("mdat"); ss.write_string("mdat");
@ -477,7 +477,7 @@ int SrsHds::flush_bootstrap()
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
SrsStream abst; SrsBuffer abst;
int size = 1024*100; int size = 1024*100;

View file

@ -60,7 +60,7 @@ using namespace std;
#ifdef SRS_AUTO_HTTP_SERVER #ifdef SRS_AUTO_HTTP_SERVER
SrsStreamCache::SrsStreamCache(SrsSource* s, SrsRequest* r) SrsBufferCache::SrsBufferCache(SrsSource* s, SrsRequest* r)
{ {
req = r->copy(); req = r->copy();
source = s; source = s;
@ -71,7 +71,7 @@ SrsStreamCache::SrsStreamCache(SrsSource* s, SrsRequest* r)
fast_cache = _srs_config->get_vhost_http_remux_fast_cache(req->vhost); fast_cache = _srs_config->get_vhost_http_remux_fast_cache(req->vhost);
} }
SrsStreamCache::~SrsStreamCache() SrsBufferCache::~SrsBufferCache()
{ {
srs_freep(pthread); srs_freep(pthread);
@ -79,12 +79,12 @@ SrsStreamCache::~SrsStreamCache()
srs_freep(req); srs_freep(req);
} }
int SrsStreamCache::start() int SrsBufferCache::start()
{ {
return pthread->start(); return pthread->start();
} }
int SrsStreamCache::dump_cache(SrsConsumer* consumer, SrsRtmpJitterAlgorithm jitter) int SrsBufferCache::dump_cache(SrsConsumer* consumer, SrsRtmpJitterAlgorithm jitter)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -104,7 +104,7 @@ int SrsStreamCache::dump_cache(SrsConsumer* consumer, SrsRtmpJitterAlgorithm jit
return ret; return ret;
} }
int SrsStreamCache::cycle() int SrsBufferCache::cycle()
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -167,11 +167,11 @@ int SrsStreamCache::cycle()
return ret; return ret;
} }
ISrsStreamEncoder::ISrsStreamEncoder() ISrsBufferEncoder::ISrsBufferEncoder()
{ {
} }
ISrsStreamEncoder::~ISrsStreamEncoder() ISrsBufferEncoder::~ISrsBufferEncoder()
{ {
} }
@ -185,7 +185,7 @@ SrsTsStreamEncoder::~SrsTsStreamEncoder()
srs_freep(enc); srs_freep(enc);
} }
int SrsTsStreamEncoder::initialize(SrsFileWriter* w, SrsStreamCache* /*c*/) int SrsTsStreamEncoder::initialize(SrsFileWriter* w, SrsBufferCache* /*c*/)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -233,7 +233,7 @@ SrsFlvStreamEncoder::~SrsFlvStreamEncoder()
srs_freep(enc); srs_freep(enc);
} }
int SrsFlvStreamEncoder::initialize(SrsFileWriter* w, SrsStreamCache* /*c*/) int SrsFlvStreamEncoder::initialize(SrsFileWriter* w, SrsBufferCache* /*c*/)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -302,7 +302,7 @@ SrsAacStreamEncoder::~SrsAacStreamEncoder()
srs_freep(enc); srs_freep(enc);
} }
int SrsAacStreamEncoder::initialize(SrsFileWriter* w, SrsStreamCache* c) int SrsAacStreamEncoder::initialize(SrsFileWriter* w, SrsBufferCache* c)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -354,7 +354,7 @@ SrsMp3StreamEncoder::~SrsMp3StreamEncoder()
srs_freep(enc); srs_freep(enc);
} }
int SrsMp3StreamEncoder::initialize(SrsFileWriter* w, SrsStreamCache* c) int SrsMp3StreamEncoder::initialize(SrsFileWriter* w, SrsBufferCache* c)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -399,35 +399,35 @@ int SrsMp3StreamEncoder::dump_cache(SrsConsumer* consumer, SrsRtmpJitterAlgorith
return cache->dump_cache(consumer, jitter); return cache->dump_cache(consumer, jitter);
} }
SrsStreamWriter::SrsStreamWriter(ISrsHttpResponseWriter* w) SrsBufferWriter::SrsBufferWriter(ISrsHttpResponseWriter* w)
{ {
writer = w; writer = w;
} }
SrsStreamWriter::~SrsStreamWriter() SrsBufferWriter::~SrsBufferWriter()
{ {
} }
int SrsStreamWriter::open(std::string /*file*/) int SrsBufferWriter::open(std::string /*file*/)
{ {
return ERROR_SUCCESS; return ERROR_SUCCESS;
} }
void SrsStreamWriter::close() void SrsBufferWriter::close()
{ {
} }
bool SrsStreamWriter::is_open() bool SrsBufferWriter::is_open()
{ {
return true; return true;
} }
int64_t SrsStreamWriter::tellg() int64_t SrsBufferWriter::tellg()
{ {
return 0; return 0;
} }
int SrsStreamWriter::write(void* buf, size_t count, ssize_t* pnwrite) int SrsBufferWriter::write(void* buf, size_t count, ssize_t* pnwrite)
{ {
if (pnwrite) { if (pnwrite) {
*pnwrite = count; *pnwrite = count;
@ -435,12 +435,12 @@ int SrsStreamWriter::write(void* buf, size_t count, ssize_t* pnwrite)
return writer->write((char*)buf, (int)count); return writer->write((char*)buf, (int)count);
} }
int SrsStreamWriter::writev(iovec* iov, int iovcnt, ssize_t* pnwrite) int SrsBufferWriter::writev(iovec* iov, int iovcnt, ssize_t* pnwrite)
{ {
return writer->writev(iov, iovcnt, pnwrite); return writer->writev(iov, iovcnt, pnwrite);
} }
SrsLiveStream::SrsLiveStream(SrsSource* s, SrsRequest* r, SrsStreamCache* c) SrsLiveStream::SrsLiveStream(SrsSource* s, SrsRequest* r, SrsBufferCache* c)
{ {
source = s; source = s;
cache = c; cache = c;
@ -456,7 +456,7 @@ int SrsLiveStream::serve_http(ISrsHttpResponseWriter* w, ISrsHttpMessage* r)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
ISrsStreamEncoder* enc = NULL; ISrsBufferEncoder* enc = NULL;
srs_assert(entry); srs_assert(entry);
if (srs_string_ends_with(entry->pattern, ".flv")) { if (srs_string_ends_with(entry->pattern, ".flv")) {
@ -480,7 +480,7 @@ int SrsLiveStream::serve_http(ISrsHttpResponseWriter* w, ISrsHttpMessage* r)
srs_error("http: unsupported pattern %s", entry->pattern.c_str()); srs_error("http: unsupported pattern %s", entry->pattern.c_str());
return ret; return ret;
} }
SrsAutoFree(ISrsStreamEncoder, enc); SrsAutoFree(ISrsBufferEncoder, enc);
// create consumer of souce, ignore gop cache, use the audio gop cache. // create consumer of souce, ignore gop cache, use the audio gop cache.
SrsConsumer* consumer = NULL; SrsConsumer* consumer = NULL;
@ -504,7 +504,7 @@ int SrsLiveStream::serve_http(ISrsHttpResponseWriter* w, ISrsHttpMessage* r)
} }
// the memory writer. // the memory writer.
SrsStreamWriter writer(w); SrsBufferWriter writer(w);
if ((ret = enc->initialize(&writer, cache)) != ERROR_SUCCESS) { if ((ret = enc->initialize(&writer, cache)) != ERROR_SUCCESS) {
srs_error("http: initialize stream encoder failed. ret=%d", ret); srs_error("http: initialize stream encoder failed. ret=%d", ret);
return ret; return ret;
@ -577,7 +577,7 @@ int SrsLiveStream::serve_http(ISrsHttpResponseWriter* w, ISrsHttpMessage* r)
return ret; return ret;
} }
int SrsLiveStream::streaming_send_messages(ISrsStreamEncoder* enc, SrsSharedPtrMessage** msgs, int nb_msgs) int SrsLiveStream::streaming_send_messages(ISrsBufferEncoder* enc, SrsSharedPtrMessage** msgs, int nb_msgs)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -811,7 +811,7 @@ int SrsHttpStreamServer::http_mount(SrsSource* s, SrsRequest* r)
entry = new SrsLiveEntry(mount, tmpl->hstrs); entry = new SrsLiveEntry(mount, tmpl->hstrs);
entry->cache = new SrsStreamCache(s, r); entry->cache = new SrsBufferCache(s, r);
entry->stream = new SrsLiveStream(s, r, entry->cache); entry->stream = new SrsLiveStream(s, r, entry->cache);
// TODO: FIXME: maybe refine the logic of http remux service. // TODO: FIXME: maybe refine the logic of http remux service.

View file

@ -39,7 +39,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
* for example, the audio stream cache to make android(weixin) happy. * for example, the audio stream cache to make android(weixin) happy.
* we start a thread to shrink the queue. * we start a thread to shrink the queue.
*/ */
class SrsStreamCache : public ISrsEndlessThreadHandler class SrsBufferCache : public ISrsEndlessThreadHandler
{ {
private: private:
double fast_cache; double fast_cache;
@ -49,8 +49,8 @@ private:
SrsRequest* req; SrsRequest* req;
SrsEndlessThread* pthread; SrsEndlessThread* pthread;
public: public:
SrsStreamCache(SrsSource* s, SrsRequest* r); SrsBufferCache(SrsSource* s, SrsRequest* r);
virtual ~SrsStreamCache(); virtual ~SrsBufferCache();
public: public:
virtual int start(); virtual int start();
virtual int dump_cache(SrsConsumer* consumer, SrsRtmpJitterAlgorithm jitter); virtual int dump_cache(SrsConsumer* consumer, SrsRtmpJitterAlgorithm jitter);
@ -62,18 +62,18 @@ public:
/** /**
* the stream encoder in some codec, for example, flv or aac. * the stream encoder in some codec, for example, flv or aac.
*/ */
class ISrsStreamEncoder class ISrsBufferEncoder
{ {
public: public:
ISrsStreamEncoder(); ISrsBufferEncoder();
virtual ~ISrsStreamEncoder(); virtual ~ISrsBufferEncoder();
public: public:
/** /**
* initialize the encoder with file writer(to http response) and stream cache. * initialize the encoder with file writer(to http response) and stream cache.
* @param w the writer to write to http response. * @param w the writer to write to http response.
* @param c the stream cache for audio stream fast startup. * @param c the stream cache for audio stream fast startup.
*/ */
virtual int initialize(SrsFileWriter* w, SrsStreamCache* c) = 0; virtual int initialize(SrsFileWriter* w, SrsBufferCache* c) = 0;
/** /**
* write rtmp video/audio/metadata. * write rtmp video/audio/metadata.
*/ */
@ -96,7 +96,7 @@ public:
/** /**
* the flv stream encoder, remux rtmp stream to flv stream. * the flv stream encoder, remux rtmp stream to flv stream.
*/ */
class SrsFlvStreamEncoder : public ISrsStreamEncoder class SrsFlvStreamEncoder : public ISrsBufferEncoder
{ {
protected: protected:
SrsFlvEncoder* enc; SrsFlvEncoder* enc;
@ -104,7 +104,7 @@ public:
SrsFlvStreamEncoder(); SrsFlvStreamEncoder();
virtual ~SrsFlvStreamEncoder(); virtual ~SrsFlvStreamEncoder();
public: public:
virtual int initialize(SrsFileWriter* w, SrsStreamCache* c); virtual int initialize(SrsFileWriter* w, SrsBufferCache* c);
virtual int write_audio(int64_t timestamp, char* data, int size); virtual int write_audio(int64_t timestamp, char* data, int size);
virtual int write_video(int64_t timestamp, char* data, int size); virtual int write_video(int64_t timestamp, char* data, int size);
virtual int write_metadata(int64_t timestamp, char* data, int size); virtual int write_metadata(int64_t timestamp, char* data, int size);
@ -134,7 +134,7 @@ public:
/** /**
* the ts stream encoder, remux rtmp stream to ts stream. * the ts stream encoder, remux rtmp stream to ts stream.
*/ */
class SrsTsStreamEncoder : public ISrsStreamEncoder class SrsTsStreamEncoder : public ISrsBufferEncoder
{ {
private: private:
SrsTsEncoder* enc; SrsTsEncoder* enc;
@ -142,7 +142,7 @@ public:
SrsTsStreamEncoder(); SrsTsStreamEncoder();
virtual ~SrsTsStreamEncoder(); virtual ~SrsTsStreamEncoder();
public: public:
virtual int initialize(SrsFileWriter* w, SrsStreamCache* c); virtual int initialize(SrsFileWriter* w, SrsBufferCache* c);
virtual int write_audio(int64_t timestamp, char* data, int size); virtual int write_audio(int64_t timestamp, char* data, int size);
virtual int write_video(int64_t timestamp, char* data, int size); virtual int write_video(int64_t timestamp, char* data, int size);
virtual int write_metadata(int64_t timestamp, char* data, int size); virtual int write_metadata(int64_t timestamp, char* data, int size);
@ -154,16 +154,16 @@ public:
/** /**
* the aac stream encoder, remux rtmp stream to aac stream. * the aac stream encoder, remux rtmp stream to aac stream.
*/ */
class SrsAacStreamEncoder : public ISrsStreamEncoder class SrsAacStreamEncoder : public ISrsBufferEncoder
{ {
private: private:
SrsAacEncoder* enc; SrsAacEncoder* enc;
SrsStreamCache* cache; SrsBufferCache* cache;
public: public:
SrsAacStreamEncoder(); SrsAacStreamEncoder();
virtual ~SrsAacStreamEncoder(); virtual ~SrsAacStreamEncoder();
public: public:
virtual int initialize(SrsFileWriter* w, SrsStreamCache* c); virtual int initialize(SrsFileWriter* w, SrsBufferCache* c);
virtual int write_audio(int64_t timestamp, char* data, int size); virtual int write_audio(int64_t timestamp, char* data, int size);
virtual int write_video(int64_t timestamp, char* data, int size); virtual int write_video(int64_t timestamp, char* data, int size);
virtual int write_metadata(int64_t timestamp, char* data, int size); virtual int write_metadata(int64_t timestamp, char* data, int size);
@ -175,16 +175,16 @@ public:
/** /**
* the mp3 stream encoder, remux rtmp stream to mp3 stream. * the mp3 stream encoder, remux rtmp stream to mp3 stream.
*/ */
class SrsMp3StreamEncoder : public ISrsStreamEncoder class SrsMp3StreamEncoder : public ISrsBufferEncoder
{ {
private: private:
SrsMp3Encoder* enc; SrsMp3Encoder* enc;
SrsStreamCache* cache; SrsBufferCache* cache;
public: public:
SrsMp3StreamEncoder(); SrsMp3StreamEncoder();
virtual ~SrsMp3StreamEncoder(); virtual ~SrsMp3StreamEncoder();
public: public:
virtual int initialize(SrsFileWriter* w, SrsStreamCache* c); virtual int initialize(SrsFileWriter* w, SrsBufferCache* c);
virtual int write_audio(int64_t timestamp, char* data, int size); virtual int write_audio(int64_t timestamp, char* data, int size);
virtual int write_video(int64_t timestamp, char* data, int size); virtual int write_video(int64_t timestamp, char* data, int size);
virtual int write_metadata(int64_t timestamp, char* data, int size); virtual int write_metadata(int64_t timestamp, char* data, int size);
@ -196,13 +196,13 @@ public:
/** /**
* write stream to http response direclty. * write stream to http response direclty.
*/ */
class SrsStreamWriter : public SrsFileWriter class SrsBufferWriter : public SrsFileWriter
{ {
private: private:
ISrsHttpResponseWriter* writer; ISrsHttpResponseWriter* writer;
public: public:
SrsStreamWriter(ISrsHttpResponseWriter* w); SrsBufferWriter(ISrsHttpResponseWriter* w);
virtual ~SrsStreamWriter(); virtual ~SrsBufferWriter();
public: public:
virtual int open(std::string file); virtual int open(std::string file);
virtual void close(); virtual void close();
@ -223,14 +223,14 @@ class SrsLiveStream : public ISrsHttpHandler
private: private:
SrsRequest* req; SrsRequest* req;
SrsSource* source; SrsSource* source;
SrsStreamCache* cache; SrsBufferCache* cache;
public: public:
SrsLiveStream(SrsSource* s, SrsRequest* r, SrsStreamCache* c); SrsLiveStream(SrsSource* s, SrsRequest* r, SrsBufferCache* c);
virtual ~SrsLiveStream(); virtual ~SrsLiveStream();
public: public:
virtual int serve_http(ISrsHttpResponseWriter* w, ISrsHttpMessage* r); virtual int serve_http(ISrsHttpResponseWriter* w, ISrsHttpMessage* r);
private: private:
virtual int streaming_send_messages(ISrsStreamEncoder* enc, SrsSharedPtrMessage** msgs, int nb_msgs); virtual int streaming_send_messages(ISrsBufferEncoder* enc, SrsSharedPtrMessage** msgs, int nb_msgs);
}; };
/** /**
@ -254,7 +254,7 @@ public:
bool hstrs; bool hstrs;
SrsLiveStream* stream; SrsLiveStream* stream;
SrsStreamCache* cache; SrsBufferCache* cache;
SrsLiveEntry(std::string m, bool h); SrsLiveEntry(std::string m, bool h);
void reset_hstrs(bool h); void reset_hstrs(bool h);

View file

@ -126,7 +126,7 @@ SrsSharedPtrMessage* SrsMpegtsQueue::dequeue()
SrsMpegtsOverUdp::SrsMpegtsOverUdp(SrsConfDirective* c) SrsMpegtsOverUdp::SrsMpegtsOverUdp(SrsConfDirective* c)
{ {
stream = new SrsStream(); stream = new SrsBuffer();
context = new SrsTsContext(); context = new SrsTsContext();
buffer = new SrsSimpleBuffer(); buffer = new SrsSimpleBuffer();
output = _srs_config->get_stream_caster_output(c); output = _srs_config->get_stream_caster_output(c);
@ -317,7 +317,7 @@ int SrsMpegtsOverUdp::on_ts_message(SrsTsMessage* msg)
} }
// parse the stream. // parse the stream.
SrsStream avs; SrsBuffer avs;
if ((ret = avs.initialize(msg->payload->bytes(), msg->payload->length())) != ERROR_SUCCESS) { if ((ret = avs.initialize(msg->payload->bytes(), msg->payload->length())) != ERROR_SUCCESS) {
srs_error("mpegts: initialize av stream failed. ret=%d", ret); srs_error("mpegts: initialize av stream failed. ret=%d", ret);
return ret; return ret;
@ -335,7 +335,7 @@ int SrsMpegtsOverUdp::on_ts_message(SrsTsMessage* msg)
return ret; return ret;
} }
int SrsMpegtsOverUdp::on_ts_video(SrsTsMessage* msg, SrsStream* avs) int SrsMpegtsOverUdp::on_ts_video(SrsTsMessage* msg, SrsBuffer* avs)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -494,7 +494,7 @@ int SrsMpegtsOverUdp::write_h264_ipb_frame(char* frame, int frame_size, u_int32_
return rtmp_write_packet(SrsCodecFlvTagVideo, timestamp, flv, nb_flv); return rtmp_write_packet(SrsCodecFlvTagVideo, timestamp, flv, nb_flv);
} }
int SrsMpegtsOverUdp::on_ts_audio(SrsTsMessage* msg, SrsStream* avs) int SrsMpegtsOverUdp::on_ts_audio(SrsTsMessage* msg, SrsBuffer* avs)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;

View file

@ -36,7 +36,7 @@ struct sockaddr_in;
#include <string> #include <string>
#include <map> #include <map>
class SrsStream; class SrsBuffer;
class SrsTsContext; class SrsTsContext;
class SrsConfDirective; class SrsConfDirective;
class SrsSimpleBuffer; class SrsSimpleBuffer;
@ -80,7 +80,7 @@ class SrsMpegtsOverUdp : virtual public ISrsTsHandler
, virtual public ISrsUdpHandler , virtual public ISrsUdpHandler
{ {
private: private:
SrsStream* stream; SrsBuffer* stream;
SrsTsContext* context; SrsTsContext* context;
SrsSimpleBuffer* buffer; SrsSimpleBuffer* buffer;
std::string output; std::string output;
@ -115,10 +115,10 @@ private:
public: public:
virtual int on_ts_message(SrsTsMessage* msg); virtual int on_ts_message(SrsTsMessage* msg);
private: private:
virtual int on_ts_video(SrsTsMessage* msg, SrsStream* avs); virtual int on_ts_video(SrsTsMessage* msg, SrsBuffer* avs);
virtual int write_h264_sps_pps(u_int32_t dts, u_int32_t pts); virtual int write_h264_sps_pps(u_int32_t dts, u_int32_t pts);
virtual int write_h264_ipb_frame(char* frame, int frame_size, u_int32_t dts, u_int32_t pts); virtual int write_h264_ipb_frame(char* frame, int frame_size, u_int32_t dts, u_int32_t pts);
virtual int on_ts_audio(SrsTsMessage* msg, SrsStream* avs); virtual int on_ts_audio(SrsTsMessage* msg, SrsBuffer* avs);
virtual int write_audio_raw_frame(char* frame, int frame_size, SrsRawAacStreamCodec* codec, u_int32_t dts); virtual int write_audio_raw_frame(char* frame, int frame_size, SrsRawAacStreamCodec* codec, u_int32_t dts);
private: private:
virtual int rtmp_write_packet(char type, u_int32_t timestamp, char* data, int size); virtual int rtmp_write_packet(char type, u_int32_t timestamp, char* data, int size);

View file

@ -80,7 +80,7 @@ int SrsRtpConn::on_udp_packet(sockaddr_in* from, char* buf, int nb_buf)
pprint->elapse(); pprint->elapse();
if (true) { if (true) {
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(buf, nb_buf)) != ERROR_SUCCESS) { if ((ret = stream.initialize(buf, nb_buf)) != ERROR_SUCCESS) {
return ret; return ret;

View file

@ -128,17 +128,17 @@ SrsListenerType SrsListener::listen_type()
return type; return type;
} }
SrsStreamListener::SrsStreamListener(SrsServer* svr, SrsListenerType t) : SrsListener(svr, t) SrsBufferListener::SrsBufferListener(SrsServer* svr, SrsListenerType t) : SrsListener(svr, t)
{ {
listener = NULL; listener = NULL;
} }
SrsStreamListener::~SrsStreamListener() SrsBufferListener::~SrsBufferListener()
{ {
srs_freep(listener); srs_freep(listener);
} }
int SrsStreamListener::listen(string i, int p) int SrsBufferListener::listen(string i, int p)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -162,7 +162,7 @@ int SrsStreamListener::listen(string i, int p)
return ret; return ret;
} }
int SrsStreamListener::on_tcp_client(st_netfd_t stfd) int SrsBufferListener::on_tcp_client(st_netfd_t stfd)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1087,7 +1087,7 @@ int SrsServer::listen_rtmp()
close_listeners(SrsListenerRtmpStream); close_listeners(SrsListenerRtmpStream);
for (int i = 0; i < (int)ip_ports.size(); i++) { for (int i = 0; i < (int)ip_ports.size(); i++) {
SrsListener* listener = new SrsStreamListener(this, SrsListenerRtmpStream); SrsListener* listener = new SrsBufferListener(this, SrsListenerRtmpStream);
listeners.push_back(listener); listeners.push_back(listener);
std::string ip; std::string ip;
@ -1110,7 +1110,7 @@ int SrsServer::listen_http_api()
#ifdef SRS_AUTO_HTTP_API #ifdef SRS_AUTO_HTTP_API
close_listeners(SrsListenerHttpApi); close_listeners(SrsListenerHttpApi);
if (_srs_config->get_http_api_enabled()) { if (_srs_config->get_http_api_enabled()) {
SrsListener* listener = new SrsStreamListener(this, SrsListenerHttpApi); SrsListener* listener = new SrsBufferListener(this, SrsListenerHttpApi);
listeners.push_back(listener); listeners.push_back(listener);
std::string ep = _srs_config->get_http_api_listen(); std::string ep = _srs_config->get_http_api_listen();
@ -1136,7 +1136,7 @@ int SrsServer::listen_http_stream()
#ifdef SRS_AUTO_HTTP_SERVER #ifdef SRS_AUTO_HTTP_SERVER
close_listeners(SrsListenerHttpStream); close_listeners(SrsListenerHttpStream);
if (_srs_config->get_http_stream_enabled()) { if (_srs_config->get_http_stream_enabled()) {
SrsListener* listener = new SrsStreamListener(this, SrsListenerHttpStream); SrsListener* listener = new SrsBufferListener(this, SrsListenerHttpStream);
listeners.push_back(listener); listeners.push_back(listener);
std::string ep = _srs_config->get_http_stream_listen(); std::string ep = _srs_config->get_http_stream_listen();

View file

@ -96,13 +96,13 @@ public:
/** /**
* tcp listener. * tcp listener.
*/ */
class SrsStreamListener : virtual public SrsListener, virtual public ISrsTcpHandler class SrsBufferListener : virtual public SrsListener, virtual public ISrsTcpHandler
{ {
private: private:
SrsTcpListener* listener; SrsTcpListener* listener;
public: public:
SrsStreamListener(SrsServer* server, SrsListenerType type); SrsBufferListener(SrsServer* server, SrsListenerType type);
virtual ~SrsStreamListener(); virtual ~SrsBufferListener();
public: public:
virtual int listen(std::string ip, int port); virtual int listen(std::string ip, int port);
// ISrsTcpHandler // ISrsTcpHandler

View file

@ -926,7 +926,7 @@ SrsSource::SrsSource()
play_edge = new SrsPlayEdge(); play_edge = new SrsPlayEdge();
publish_edge = new SrsPublishEdge(); publish_edge = new SrsPublishEdge();
gop_cache = new SrsGopCache(); gop_cache = new SrsGopCache();
aggregate_stream = new SrsStream(); aggregate_stream = new SrsBuffer();
ng_exec = new SrsNgExec(); ng_exec = new SrsNgExec();
is_monotonically_increase = false; is_monotonically_increase = false;
@ -1322,7 +1322,7 @@ int SrsSource::on_dvr_request_sh()
char* payload = cache_metadata->payload; char* payload = cache_metadata->payload;
int size = cache_metadata->size; int size = cache_metadata->size;
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(payload, size)) != ERROR_SUCCESS) { if ((ret = stream.initialize(payload, size)) != ERROR_SUCCESS) {
srs_error("dvr decode metadata stream failed. ret=%d", ret); srs_error("dvr decode metadata stream failed. ret=%d", ret);
return ret; return ret;
@ -1919,7 +1919,7 @@ int SrsSource::on_aggregate(SrsCommonMessage* msg)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
SrsStream* stream = aggregate_stream; SrsBuffer* stream = aggregate_stream;
if ((ret = stream->initialize(msg->payload, msg->size)) != ERROR_SUCCESS) { if ((ret = stream->initialize(msg->payload, msg->size)) != ERROR_SUCCESS) {
return ret; return ret;
} }

View file

@ -61,7 +61,7 @@ class SrsDvr;
#ifdef SRS_AUTO_TRANSCODE #ifdef SRS_AUTO_TRANSCODE
class SrsEncoder; class SrsEncoder;
#endif #endif
class SrsStream; class SrsBuffer;
class ISrsHlsHandler; class ISrsHlsHandler;
#ifdef SRS_AUTO_HDS #ifdef SRS_AUTO_HDS
class SrsHds; class SrsHds;
@ -497,7 +497,7 @@ private:
// to forward stream to other servers // to forward stream to other servers
std::vector<SrsForwarder*> forwarders; std::vector<SrsForwarder*> forwarders;
// for aggregate message // for aggregate message
SrsStream* aggregate_stream; SrsBuffer* aggregate_stream;
// the event handler. // the event handler.
ISrsSourceHandler* handler; ISrsSourceHandler* handler;
private: private:

View file

@ -37,8 +37,8 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
* the step to create a thread never stop: * the step to create a thread never stop:
* 1. create SrsEndlessThread field. * 1. create SrsEndlessThread field.
* for example: * for example:
* class SrsStreamCache : public ISrsEndlessThreadHandler { * class SrsBufferCache : public ISrsEndlessThreadHandler {
* public: SrsStreamCache() { pthread = new SrsEndlessThread("http-stream", this); } * public: SrsBufferCache() { pthread = new SrsEndlessThread("http-stream", this); }
* public: virtual int cycle() { * public: virtual int cycle() {
* // do some work never end. * // do some work never end.
* } * }

View file

@ -40,7 +40,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include <srs_app_st.hpp> #include <srs_app_st.hpp>
class SrsKbps; class SrsKbps;
class SrsStream; class SrsBuffer;
class SrsJsonObject; class SrsJsonObject;
// client open socket and connect to server. // client open socket and connect to server.

View file

@ -42,7 +42,7 @@ SrsAacEncoder::SrsAacEncoder()
{ {
_fs = NULL; _fs = NULL;
got_sequence_header = false; got_sequence_header = false;
tag_stream = new SrsStream(); tag_stream = new SrsBuffer();
aac_object = SrsAacObjectTypeReserved; aac_object = SrsAacObjectTypeReserved;
} }
@ -76,7 +76,7 @@ int SrsAacEncoder::write_audio(int64_t timestamp, char* data, int size)
timestamp &= 0x7fffffff; timestamp &= 0x7fffffff;
SrsStream* stream = tag_stream; SrsBuffer* stream = tag_stream;
if ((ret = stream->initialize(data, size)) != ERROR_SUCCESS) { if ((ret = stream->initialize(data, size)) != ERROR_SUCCESS) {
return ret; return ret;
} }

View file

@ -33,7 +33,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include <srs_kernel_codec.hpp> #include <srs_kernel_codec.hpp>
class SrsStream; class SrsBuffer;
class SrsFileWriter; class SrsFileWriter;
class SrsFileReader; class SrsFileReader;
@ -50,7 +50,7 @@ private:
int8_t aac_channels; int8_t aac_channels;
bool got_sequence_header; bool got_sequence_header;
private: private:
SrsStream* tag_stream; SrsBuffer* tag_stream;
public: public:
SrsAacEncoder(); SrsAacEncoder();
virtual ~SrsAacEncoder(); virtual ~SrsAacEncoder();

View file

@ -29,7 +29,7 @@ using namespace std;
#include <srs_kernel_error.hpp> #include <srs_kernel_error.hpp>
#include <srs_kernel_utility.hpp> #include <srs_kernel_utility.hpp>
SrsStream::SrsStream() SrsBuffer::SrsBuffer()
{ {
p = bytes = NULL; p = bytes = NULL;
nb_bytes = 0; nb_bytes = 0;
@ -38,11 +38,11 @@ SrsStream::SrsStream()
srs_assert(srs_is_little_endian()); srs_assert(srs_is_little_endian());
} }
SrsStream::~SrsStream() SrsBuffer::~SrsBuffer()
{ {
} }
int SrsStream::initialize(char* b, int nb) int SrsBuffer::initialize(char* b, int nb)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -65,48 +65,48 @@ int SrsStream::initialize(char* b, int nb)
return ret; return ret;
} }
char* SrsStream::data() char* SrsBuffer::data()
{ {
return bytes; return bytes;
} }
int SrsStream::size() int SrsBuffer::size()
{ {
return nb_bytes; return nb_bytes;
} }
int SrsStream::pos() int SrsBuffer::pos()
{ {
return (int)(p - bytes); return (int)(p - bytes);
} }
bool SrsStream::empty() bool SrsBuffer::empty()
{ {
return !bytes || (p >= bytes + nb_bytes); return !bytes || (p >= bytes + nb_bytes);
} }
bool SrsStream::require(int required_size) bool SrsBuffer::require(int required_size)
{ {
srs_assert(required_size > 0); srs_assert(required_size > 0);
return required_size <= nb_bytes - (p - bytes); return required_size <= nb_bytes - (p - bytes);
} }
void SrsStream::skip(int size) void SrsBuffer::skip(int size)
{ {
srs_assert(p); srs_assert(p);
p += size; p += size;
} }
int8_t SrsStream::read_1bytes() int8_t SrsBuffer::read_1bytes()
{ {
srs_assert(require(1)); srs_assert(require(1));
return (int8_t)*p++; return (int8_t)*p++;
} }
int16_t SrsStream::read_2bytes() int16_t SrsBuffer::read_2bytes()
{ {
srs_assert(require(2)); srs_assert(require(2));
@ -118,7 +118,7 @@ int16_t SrsStream::read_2bytes()
return value; return value;
} }
int32_t SrsStream::read_3bytes() int32_t SrsBuffer::read_3bytes()
{ {
srs_assert(require(3)); srs_assert(require(3));
@ -131,7 +131,7 @@ int32_t SrsStream::read_3bytes()
return value; return value;
} }
int32_t SrsStream::read_4bytes() int32_t SrsBuffer::read_4bytes()
{ {
srs_assert(require(4)); srs_assert(require(4));
@ -145,7 +145,7 @@ int32_t SrsStream::read_4bytes()
return value; return value;
} }
int64_t SrsStream::read_8bytes() int64_t SrsBuffer::read_8bytes()
{ {
srs_assert(require(8)); srs_assert(require(8));
@ -163,7 +163,7 @@ int64_t SrsStream::read_8bytes()
return value; return value;
} }
string SrsStream::read_string(int len) string SrsBuffer::read_string(int len)
{ {
srs_assert(require(len)); srs_assert(require(len));
@ -175,7 +175,7 @@ string SrsStream::read_string(int len)
return value; return value;
} }
void SrsStream::read_bytes(char* data, int size) void SrsBuffer::read_bytes(char* data, int size)
{ {
srs_assert(require(size)); srs_assert(require(size));
@ -184,14 +184,14 @@ void SrsStream::read_bytes(char* data, int size)
p += size; p += size;
} }
void SrsStream::write_1bytes(int8_t value) void SrsBuffer::write_1bytes(int8_t value)
{ {
srs_assert(require(1)); srs_assert(require(1));
*p++ = value; *p++ = value;
} }
void SrsStream::write_2bytes(int16_t value) void SrsBuffer::write_2bytes(int16_t value)
{ {
srs_assert(require(2)); srs_assert(require(2));
@ -200,7 +200,7 @@ void SrsStream::write_2bytes(int16_t value)
*p++ = pp[0]; *p++ = pp[0];
} }
void SrsStream::write_4bytes(int32_t value) void SrsBuffer::write_4bytes(int32_t value)
{ {
srs_assert(require(4)); srs_assert(require(4));
@ -211,7 +211,7 @@ void SrsStream::write_4bytes(int32_t value)
*p++ = pp[0]; *p++ = pp[0];
} }
void SrsStream::write_3bytes(int32_t value) void SrsBuffer::write_3bytes(int32_t value)
{ {
srs_assert(require(3)); srs_assert(require(3));
@ -221,7 +221,7 @@ void SrsStream::write_3bytes(int32_t value)
*p++ = pp[0]; *p++ = pp[0];
} }
void SrsStream::write_8bytes(int64_t value) void SrsBuffer::write_8bytes(int64_t value)
{ {
srs_assert(require(8)); srs_assert(require(8));
@ -236,7 +236,7 @@ void SrsStream::write_8bytes(int64_t value)
*p++ = pp[0]; *p++ = pp[0];
} }
void SrsStream::write_string(string value) void SrsBuffer::write_string(string value)
{ {
srs_assert(require((int)value.length())); srs_assert(require((int)value.length()));
@ -244,7 +244,7 @@ void SrsStream::write_string(string value)
p += value.length(); p += value.length();
} }
void SrsStream::write_bytes(char* data, int size) void SrsBuffer::write_bytes(char* data, int size)
{ {
srs_assert(require(size)); srs_assert(require(size));
@ -263,7 +263,7 @@ SrsBitStream::~SrsBitStream()
{ {
} }
int SrsBitStream::initialize(SrsStream* s) { int SrsBitStream::initialize(SrsBuffer* s) {
stream = s; stream = s;
return ERROR_SUCCESS; return ERROR_SUCCESS;
} }

View file

@ -38,7 +38,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
* convert basic types to bytes, * convert basic types to bytes,
* build basic types from bytes. * build basic types from bytes.
*/ */
class SrsStream class SrsBuffer
{ {
private: private:
// current position at bytes. // current position at bytes.
@ -48,8 +48,8 @@ private:
// the total number of bytes. // the total number of bytes.
int nb_bytes; int nb_bytes;
public: public:
SrsStream(); SrsBuffer();
virtual ~SrsStream(); virtual ~SrsBuffer();
public: public:
/** /**
* initialize the stream from bytes. * initialize the stream from bytes.
@ -164,12 +164,12 @@ class SrsBitStream
private: private:
int8_t cb; int8_t cb;
u_int8_t cb_left; u_int8_t cb_left;
SrsStream* stream; SrsBuffer* stream;
public: public:
SrsBitStream(); SrsBitStream();
virtual ~SrsBitStream(); virtual ~SrsBitStream();
public: public:
virtual int initialize(SrsStream* s); virtual int initialize(SrsBuffer* s);
virtual bool empty(); virtual bool empty();
virtual int8_t read_bit(); virtual int8_t read_bit();
}; };

View file

@ -412,7 +412,7 @@ SrsAvcAacCodec::SrsAvcAacCodec()
pictureParameterSetNALUnit = NULL; pictureParameterSetNALUnit = NULL;
payload_format = SrsAvcPayloadFormatGuess; payload_format = SrsAvcPayloadFormatGuess;
stream = new SrsStream(); stream = new SrsBuffer();
} }
SrsAvcAacCodec::~SrsAvcAacCodec() SrsAvcAacCodec::~SrsAvcAacCodec()
@ -754,7 +754,7 @@ int SrsAvcAacCodec::video_avc_demux(char* data, int size, SrsCodecSample* sample
return ret; return ret;
} }
int SrsAvcAacCodec::avc_demux_sps_pps(SrsStream* stream) int SrsAvcAacCodec::avc_demux_sps_pps(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -868,7 +868,7 @@ int SrsAvcAacCodec::avc_demux_sps()
return ret; return ret;
} }
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(sequenceParameterSetNALUnit, sequenceParameterSetLength)) != ERROR_SUCCESS) { if ((ret = stream.initialize(sequenceParameterSetNALUnit, sequenceParameterSetLength)) != ERROR_SUCCESS) {
return ret; return ret;
} }
@ -948,7 +948,7 @@ int SrsAvcAacCodec::avc_demux_sps_rbsp(char* rbsp, int nb_rbsp)
} }
// reparse the rbsp. // reparse the rbsp.
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(rbsp, nb_rbsp)) != ERROR_SUCCESS) { if ((ret = stream.initialize(rbsp, nb_rbsp)) != ERROR_SUCCESS) {
return ret; return ret;
} }
@ -1115,7 +1115,7 @@ int SrsAvcAacCodec::avc_demux_sps_rbsp(char* rbsp, int nb_rbsp)
return ret; return ret;
} }
int SrsAvcAacCodec::avc_demux_annexb_format(SrsStream* stream, SrsCodecSample* sample) int SrsAvcAacCodec::avc_demux_annexb_format(SrsBuffer* stream, SrsCodecSample* sample)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1168,7 +1168,7 @@ int SrsAvcAacCodec::avc_demux_annexb_format(SrsStream* stream, SrsCodecSample* s
return ret; return ret;
} }
int SrsAvcAacCodec::avc_demux_ibmf_format(SrsStream* stream, SrsCodecSample* sample) int SrsAvcAacCodec::avc_demux_ibmf_format(SrsBuffer* stream, SrsCodecSample* sample)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;

View file

@ -32,7 +32,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include <string> #include <string>
class SrsStream; class SrsBuffer;
// AACPacketType IF SoundFormat == 10 UI8 // AACPacketType IF SoundFormat == 10 UI8
// The following values are defined: // The following values are defined:
@ -542,7 +542,7 @@ std::string srs_codec_avc_level2str(SrsAvcLevel level);
class SrsAvcAacCodec class SrsAvcAacCodec
{ {
private: private:
SrsStream* stream; SrsBuffer* stream;
public: public:
/** /**
* metadata specified * metadata specified
@ -644,7 +644,7 @@ private:
* when avc packet type is SrsCodecVideoAVCTypeSequenceHeader, * when avc packet type is SrsCodecVideoAVCTypeSequenceHeader,
* decode the sps and pps. * decode the sps and pps.
*/ */
virtual int avc_demux_sps_pps(SrsStream* stream); virtual int avc_demux_sps_pps(SrsBuffer* stream);
/** /**
* decode the sps rbsp stream. * decode the sps rbsp stream.
*/ */
@ -654,12 +654,12 @@ private:
* demux the avc NALU in "AnnexB" * demux the avc NALU in "AnnexB"
* from H.264-AVC-ISO_IEC_14496-10.pdf, page 211. * from H.264-AVC-ISO_IEC_14496-10.pdf, page 211.
*/ */
virtual int avc_demux_annexb_format(SrsStream* stream, SrsCodecSample* sample); virtual int avc_demux_annexb_format(SrsBuffer* stream, SrsCodecSample* sample);
/** /**
* demux the avc NALU in "ISO Base Media File Format" * demux the avc NALU in "ISO Base Media File Format"
* from H.264-AVC-ISO_IEC_14496-15.pdf, page 20 * from H.264-AVC-ISO_IEC_14496-15.pdf, page 20
*/ */
virtual int avc_demux_ibmf_format(SrsStream* stream, SrsCodecSample* sample); virtual int avc_demux_ibmf_format(SrsBuffer* stream, SrsCodecSample* sample);
}; };
#endif #endif

View file

@ -333,7 +333,7 @@ SrsSharedPtrMessage* SrsSharedPtrMessage::copy()
SrsFlvEncoder::SrsFlvEncoder() SrsFlvEncoder::SrsFlvEncoder()
{ {
reader = NULL; reader = NULL;
tag_stream = new SrsStream(); tag_stream = new SrsBuffer();
#ifdef SRS_PERF_FAST_FLV_ENCODER #ifdef SRS_PERF_FAST_FLV_ENCODER
nb_tag_headers = 0; nb_tag_headers = 0;
@ -696,7 +696,7 @@ int SrsFlvEncoder::write_tag(char* header, int header_size, char* tag, int tag_s
SrsFlvDecoder::SrsFlvDecoder() SrsFlvDecoder::SrsFlvDecoder()
{ {
reader = NULL; reader = NULL;
tag_stream = new SrsStream(); tag_stream = new SrsBuffer();
} }
SrsFlvDecoder::~SrsFlvDecoder() SrsFlvDecoder::~SrsFlvDecoder()
@ -820,7 +820,7 @@ int SrsFlvDecoder::read_previous_tag_size(char previous_tag_size[4])
SrsFlvVodStreamDecoder::SrsFlvVodStreamDecoder() SrsFlvVodStreamDecoder::SrsFlvVodStreamDecoder()
{ {
reader = NULL; reader = NULL;
tag_stream = new SrsStream(); tag_stream = new SrsBuffer();
} }
SrsFlvVodStreamDecoder::~SrsFlvVodStreamDecoder() SrsFlvVodStreamDecoder::~SrsFlvVodStreamDecoder()

View file

@ -36,7 +36,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include <sys/uio.h> #include <sys/uio.h>
#endif #endif
class SrsStream; class SrsBuffer;
class SrsFileWriter; class SrsFileWriter;
class SrsFileReader; class SrsFileReader;
@ -436,7 +436,7 @@ class SrsFlvEncoder
private: private:
SrsFileWriter* reader; SrsFileWriter* reader;
private: private:
SrsStream* tag_stream; SrsBuffer* tag_stream;
char tag_header[SRS_FLV_TAG_HEADER_SIZE]; char tag_header[SRS_FLV_TAG_HEADER_SIZE];
public: public:
SrsFlvEncoder(); SrsFlvEncoder();
@ -514,7 +514,7 @@ class SrsFlvDecoder
private: private:
SrsFileReader* reader; SrsFileReader* reader;
private: private:
SrsStream* tag_stream; SrsBuffer* tag_stream;
public: public:
SrsFlvDecoder(); SrsFlvDecoder();
virtual ~SrsFlvDecoder(); virtual ~SrsFlvDecoder();
@ -558,7 +558,7 @@ class SrsFlvVodStreamDecoder
private: private:
SrsFileReader* reader; SrsFileReader* reader;
private: private:
SrsStream* tag_stream; SrsBuffer* tag_stream;
public: public:
SrsFlvVodStreamDecoder(); SrsFlvVodStreamDecoder();
virtual ~SrsFlvVodStreamDecoder(); virtual ~SrsFlvVodStreamDecoder();

View file

@ -41,7 +41,7 @@ using namespace std;
SrsMp3Encoder::SrsMp3Encoder() SrsMp3Encoder::SrsMp3Encoder()
{ {
writer = NULL; writer = NULL;
tag_stream = new SrsStream(); tag_stream = new SrsBuffer();
} }
SrsMp3Encoder::~SrsMp3Encoder() SrsMp3Encoder::~SrsMp3Encoder()
@ -89,7 +89,7 @@ int SrsMp3Encoder::write_audio(int64_t timestamp, char* data, int size)
timestamp &= 0x7fffffff; timestamp &= 0x7fffffff;
SrsStream* stream = tag_stream; SrsBuffer* stream = tag_stream;
if ((ret = stream->initialize(data, size)) != ERROR_SUCCESS) { if ((ret = stream->initialize(data, size)) != ERROR_SUCCESS) {
return ret; return ret;
} }

View file

@ -31,7 +31,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include <string> #include <string>
class SrsStream; class SrsBuffer;
class SrsFileWriter; class SrsFileWriter;
/** /**
@ -42,7 +42,7 @@ class SrsMp3Encoder
private: private:
SrsFileWriter* writer; SrsFileWriter* writer;
private: private:
SrsStream* tag_stream; SrsBuffer* tag_stream;
public: public:
SrsMp3Encoder(); SrsMp3Encoder();
virtual ~SrsMp3Encoder(); virtual ~SrsMp3Encoder();

View file

@ -107,7 +107,7 @@ SrsTsMessage::~SrsTsMessage()
srs_freep(payload); srs_freep(payload);
} }
int SrsTsMessage::dump(SrsStream* stream, int* pnb_bytes) int SrsTsMessage::dump(SrsBuffer* stream, int* pnb_bytes)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -262,7 +262,7 @@ void SrsTsContext::set(int pid, SrsTsPidApply apply_pid, SrsTsStream stream)
channel->stream = stream; channel->stream = stream;
} }
int SrsTsContext::decode(SrsStream* stream, ISrsTsHandler* handler) int SrsTsContext::decode(SrsBuffer* stream, ISrsTsHandler* handler)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -400,7 +400,7 @@ int SrsTsContext::encode_pat_pmt(SrsFileWriter* writer, int16_t vpid, SrsTsStrea
srs_assert(nb_buf < SRS_TS_PACKET_SIZE); srs_assert(nb_buf < SRS_TS_PACKET_SIZE);
memset(buf + nb_buf, 0xFF, SRS_TS_PACKET_SIZE - nb_buf); memset(buf + nb_buf, 0xFF, SRS_TS_PACKET_SIZE - nb_buf);
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(buf, nb_buf)) != ERROR_SUCCESS) { if ((ret = stream.initialize(buf, nb_buf)) != ERROR_SUCCESS) {
return ret; return ret;
} }
@ -427,7 +427,7 @@ int SrsTsContext::encode_pat_pmt(SrsFileWriter* writer, int16_t vpid, SrsTsStrea
srs_assert(nb_buf < SRS_TS_PACKET_SIZE); srs_assert(nb_buf < SRS_TS_PACKET_SIZE);
memset(buf + nb_buf, 0xFF, SRS_TS_PACKET_SIZE - nb_buf); memset(buf + nb_buf, 0xFF, SRS_TS_PACKET_SIZE - nb_buf);
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(buf, nb_buf)) != ERROR_SUCCESS) { if ((ret = stream.initialize(buf, nb_buf)) != ERROR_SUCCESS) {
return ret; return ret;
} }
@ -518,7 +518,7 @@ int SrsTsContext::encode_pes(SrsFileWriter* writer, SrsTsMessage* msg, int16_t p
memcpy(buf + nb_buf, p, left); memcpy(buf + nb_buf, p, left);
p += left; p += left;
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(buf, nb_buf)) != ERROR_SUCCESS) { if ((ret = stream.initialize(buf, nb_buf)) != ERROR_SUCCESS) {
return ret; return ret;
} }
@ -557,7 +557,7 @@ SrsTsPacket::~SrsTsPacket()
srs_freep(payload); srs_freep(payload);
} }
int SrsTsPacket::decode(SrsStream* stream, SrsTsMessage** ppmsg) int SrsTsPacket::decode(SrsBuffer* stream, SrsTsMessage** ppmsg)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -650,7 +650,7 @@ int SrsTsPacket::size()
return sz; return sz;
} }
int SrsTsPacket::encode(SrsStream* stream) int SrsTsPacket::encode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -925,7 +925,7 @@ SrsTsAdaptationField::~SrsTsAdaptationField()
srs_freep(transport_private_data); srs_freep(transport_private_data);
} }
int SrsTsAdaptationField::decode(SrsStream* stream) int SrsTsAdaptationField::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1145,7 +1145,7 @@ int SrsTsAdaptationField::size()
return sz; return sz;
} }
int SrsTsAdaptationField::encode(SrsStream* stream) int SrsTsAdaptationField::encode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1337,7 +1337,7 @@ SrsTsPayloadPES::~SrsTsPayloadPES()
srs_freep(PES_extension_field); srs_freep(PES_extension_field);
} }
int SrsTsPayloadPES::decode(SrsStream* stream, SrsTsMessage** ppmsg) int SrsTsPayloadPES::decode(SrsBuffer* stream, SrsTsMessage** ppmsg)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1808,7 +1808,7 @@ int SrsTsPayloadPES::size()
return sz; return sz;
} }
int SrsTsPayloadPES::encode(SrsStream* stream) int SrsTsPayloadPES::encode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1969,7 +1969,7 @@ int SrsTsPayloadPES::encode(SrsStream* stream)
return ret; return ret;
} }
int SrsTsPayloadPES::decode_33bits_dts_pts(SrsStream* stream, int64_t* pv) int SrsTsPayloadPES::decode_33bits_dts_pts(SrsBuffer* stream, int64_t* pv)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -2030,7 +2030,7 @@ int SrsTsPayloadPES::decode_33bits_dts_pts(SrsStream* stream, int64_t* pv)
return ret; return ret;
} }
int SrsTsPayloadPES::encode_33bits_dts_pts(SrsStream* stream, u_int8_t fb, int64_t v) int SrsTsPayloadPES::encode_33bits_dts_pts(SrsBuffer* stream, u_int8_t fb, int64_t v)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -2071,7 +2071,7 @@ SrsTsPayloadPSI::~SrsTsPayloadPSI()
{ {
} }
int SrsTsPayloadPSI::decode(SrsStream* stream, SrsTsMessage** /*ppmsg*/) int SrsTsPayloadPSI::decode(SrsBuffer* stream, SrsTsMessage** /*ppmsg*/)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -2180,7 +2180,7 @@ int SrsTsPayloadPSI::size()
return sz; return sz;
} }
int SrsTsPayloadPSI::encode(SrsStream* stream) int SrsTsPayloadPSI::encode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -2253,7 +2253,7 @@ SrsTsPayloadPATProgram::~SrsTsPayloadPATProgram()
{ {
} }
int SrsTsPayloadPATProgram::decode(SrsStream* stream) int SrsTsPayloadPATProgram::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -2277,7 +2277,7 @@ int SrsTsPayloadPATProgram::size()
return 4; return 4;
} }
int SrsTsPayloadPATProgram::encode(SrsStream* stream) int SrsTsPayloadPATProgram::encode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -2311,7 +2311,7 @@ SrsTsPayloadPAT::~SrsTsPayloadPAT()
programs.clear(); programs.clear();
} }
int SrsTsPayloadPAT::psi_decode(SrsStream* stream) int SrsTsPayloadPAT::psi_decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -2373,7 +2373,7 @@ int SrsTsPayloadPAT::psi_size()
return sz; return sz;
} }
int SrsTsPayloadPAT::psi_encode(SrsStream* stream) int SrsTsPayloadPAT::psi_encode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -2431,7 +2431,7 @@ SrsTsPayloadPMTESInfo::~SrsTsPayloadPMTESInfo()
srs_freep(ES_info); srs_freep(ES_info);
} }
int SrsTsPayloadPMTESInfo::decode(SrsStream* stream) int SrsTsPayloadPMTESInfo::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -2471,7 +2471,7 @@ int SrsTsPayloadPMTESInfo::size()
return 5 + ES_info_length; return 5 + ES_info_length;
} }
int SrsTsPayloadPMTESInfo::encode(SrsStream* stream) int SrsTsPayloadPMTESInfo::encode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -2525,7 +2525,7 @@ SrsTsPayloadPMT::~SrsTsPayloadPMT()
infos.clear(); infos.clear();
} }
int SrsTsPayloadPMT::psi_decode(SrsStream* stream) int SrsTsPayloadPMT::psi_decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -2619,7 +2619,7 @@ int SrsTsPayloadPMT::psi_size()
return sz; return sz;
} }
int SrsTsPayloadPMT::psi_encode(SrsStream* stream) int SrsTsPayloadPMT::psi_encode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;

View file

@ -35,7 +35,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include <srs_kernel_codec.hpp> #include <srs_kernel_codec.hpp>
class SrsStream; class SrsBuffer;
class SrsTsCache; class SrsTsCache;
class SrsTSMuxer; class SrsTSMuxer;
class SrsFileWriter; class SrsFileWriter;
@ -282,7 +282,7 @@ public:
/** /**
* dumps all bytes in stream to ts message. * dumps all bytes in stream to ts message.
*/ */
virtual int dump(SrsStream* stream, int* pnb_bytes); virtual int dump(SrsBuffer* stream, int* pnb_bytes);
/** /**
* whether ts message is completed to reap. * whether ts message is completed to reap.
* @param payload_unit_start_indicator whether new ts message start. * @param payload_unit_start_indicator whether new ts message start.
@ -385,7 +385,7 @@ public:
* @param handler the ts message handler to process the msg. * @param handler the ts message handler to process the msg.
* @remark we will consume all bytes in stream. * @remark we will consume all bytes in stream.
*/ */
virtual int decode(SrsStream* stream, ISrsTsHandler* handler); virtual int decode(SrsBuffer* stream, ISrsTsHandler* handler);
// encode methods // encode methods
public: public:
/** /**
@ -509,10 +509,10 @@ public:
SrsTsPacket(SrsTsContext* c); SrsTsPacket(SrsTsContext* c);
virtual ~SrsTsPacket(); virtual ~SrsTsPacket();
public: public:
virtual int decode(SrsStream* stream, SrsTsMessage** ppmsg); virtual int decode(SrsBuffer* stream, SrsTsMessage** ppmsg);
public: public:
virtual int size(); virtual int size();
virtual int encode(SrsStream* stream); virtual int encode(SrsBuffer* stream);
virtual void padding(int nb_stuffings); virtual void padding(int nb_stuffings);
public: public:
static SrsTsPacket* create_pat(SrsTsContext* context, static SrsTsPacket* create_pat(SrsTsContext* context,
@ -838,10 +838,10 @@ public:
SrsTsAdaptationField(SrsTsPacket* pkt); SrsTsAdaptationField(SrsTsPacket* pkt);
virtual ~SrsTsAdaptationField(); virtual ~SrsTsAdaptationField();
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
public: public:
virtual int size(); virtual int size();
virtual int encode(SrsStream* stream); virtual int encode(SrsBuffer* stream);
}; };
/** /**
@ -886,10 +886,10 @@ public:
SrsTsPayload(SrsTsPacket* p); SrsTsPayload(SrsTsPacket* p);
virtual ~SrsTsPayload(); virtual ~SrsTsPayload();
public: public:
virtual int decode(SrsStream* stream, SrsTsMessage** ppmsg) = 0; virtual int decode(SrsBuffer* stream, SrsTsMessage** ppmsg) = 0;
public: public:
virtual int size() = 0; virtual int size() = 0;
virtual int encode(SrsStream* stream) = 0; virtual int encode(SrsBuffer* stream) = 0;
}; };
/** /**
@ -1237,13 +1237,13 @@ public:
SrsTsPayloadPES(SrsTsPacket* p); SrsTsPayloadPES(SrsTsPacket* p);
virtual ~SrsTsPayloadPES(); virtual ~SrsTsPayloadPES();
public: public:
virtual int decode(SrsStream* stream, SrsTsMessage** ppmsg); virtual int decode(SrsBuffer* stream, SrsTsMessage** ppmsg);
public: public:
virtual int size(); virtual int size();
virtual int encode(SrsStream* stream); virtual int encode(SrsBuffer* stream);
private: private:
virtual int decode_33bits_dts_pts(SrsStream* stream, int64_t* pv); virtual int decode_33bits_dts_pts(SrsBuffer* stream, int64_t* pv);
virtual int encode_33bits_dts_pts(SrsStream* stream, u_int8_t fb, int64_t v); virtual int encode_33bits_dts_pts(SrsBuffer* stream, u_int8_t fb, int64_t v);
}; };
/** /**
@ -1304,14 +1304,14 @@ public:
SrsTsPayloadPSI(SrsTsPacket* p); SrsTsPayloadPSI(SrsTsPacket* p);
virtual ~SrsTsPayloadPSI(); virtual ~SrsTsPayloadPSI();
public: public:
virtual int decode(SrsStream* stream, SrsTsMessage** ppmsg); virtual int decode(SrsBuffer* stream, SrsTsMessage** ppmsg);
public: public:
virtual int size(); virtual int size();
virtual int encode(SrsStream* stream); virtual int encode(SrsBuffer* stream);
protected: protected:
virtual int psi_size() = 0; virtual int psi_size() = 0;
virtual int psi_encode(SrsStream* stream) = 0; virtual int psi_encode(SrsBuffer* stream) = 0;
virtual int psi_decode(SrsStream* stream) = 0; virtual int psi_decode(SrsBuffer* stream) = 0;
}; };
/** /**
@ -1344,10 +1344,10 @@ public:
SrsTsPayloadPATProgram(int16_t n = 0, int16_t p = 0); SrsTsPayloadPATProgram(int16_t n = 0, int16_t p = 0);
virtual ~SrsTsPayloadPATProgram(); virtual ~SrsTsPayloadPATProgram();
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
public: public:
virtual int size(); virtual int size();
virtual int encode(SrsStream* stream); virtual int encode(SrsBuffer* stream);
}; };
/** /**
@ -1408,10 +1408,10 @@ public:
SrsTsPayloadPAT(SrsTsPacket* p); SrsTsPayloadPAT(SrsTsPacket* p);
virtual ~SrsTsPayloadPAT(); virtual ~SrsTsPayloadPAT();
protected: protected:
virtual int psi_decode(SrsStream* stream); virtual int psi_decode(SrsBuffer* stream);
protected: protected:
virtual int psi_size(); virtual int psi_size();
virtual int psi_encode(SrsStream* stream); virtual int psi_encode(SrsBuffer* stream);
}; };
/** /**
@ -1453,10 +1453,10 @@ public:
SrsTsPayloadPMTESInfo(SrsTsStream st = SrsTsStreamReserved, int16_t epid = 0); SrsTsPayloadPMTESInfo(SrsTsStream st = SrsTsStreamReserved, int16_t epid = 0);
virtual ~SrsTsPayloadPMTESInfo(); virtual ~SrsTsPayloadPMTESInfo();
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
public: public:
virtual int size(); virtual int size();
virtual int encode(SrsStream* stream); virtual int encode(SrsBuffer* stream);
}; };
/** /**
@ -1544,10 +1544,10 @@ public:
SrsTsPayloadPMT(SrsTsPacket* p); SrsTsPayloadPMT(SrsTsPacket* p);
virtual ~SrsTsPayloadPMT(); virtual ~SrsTsPayloadPMT();
protected: protected:
virtual int psi_decode(SrsStream* stream); virtual int psi_decode(SrsBuffer* stream);
protected: protected:
virtual int psi_size(); virtual int psi_size();
virtual int psi_encode(SrsStream* stream); virtual int psi_encode(SrsBuffer* stream);
}; };
/** /**

View file

@ -418,7 +418,7 @@ string srs_path_basename(string path)
return dirname; return dirname;
} }
bool srs_avc_startswith_annexb(SrsStream* stream, int* pnb_start_code) bool srs_avc_startswith_annexb(SrsBuffer* stream, int* pnb_start_code)
{ {
char* bytes = stream->data() + stream->pos(); char* bytes = stream->data() + stream->pos();
char* p = bytes; char* p = bytes;
@ -447,7 +447,7 @@ bool srs_avc_startswith_annexb(SrsStream* stream, int* pnb_start_code)
return false; return false;
} }
bool srs_aac_startswith_adts(SrsStream* stream) bool srs_aac_startswith_adts(SrsBuffer* stream)
{ {
char* bytes = stream->data() + stream->pos(); char* bytes = stream->data() + stream->pos();
char* p = bytes; char* p = bytes;

View file

@ -33,7 +33,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include <string> #include <string>
#include <vector> #include <vector>
class SrsStream; class SrsBuffer;
class SrsBitStream; class SrsBitStream;
// compare // compare
@ -93,14 +93,14 @@ extern std::string srs_path_basename(std::string path);
* @param pnb_start_code output the size of start code, must >=3. * @param pnb_start_code output the size of start code, must >=3.
* NULL to ignore. * NULL to ignore.
*/ */
extern bool srs_avc_startswith_annexb(SrsStream* stream, int* pnb_start_code = NULL); extern bool srs_avc_startswith_annexb(SrsBuffer* stream, int* pnb_start_code = NULL);
/** /**
* whether stream starts with the aac ADTS * whether stream starts with the aac ADTS
* from aac-mp4a-format-ISO_IEC_14496-3+2001.pdf, page 75, 1.A.2.2 ADTS. * from aac-mp4a-format-ISO_IEC_14496-3+2001.pdf, page 75, 1.A.2.2 ADTS.
* start code must be '1111 1111 1111'B, that is 0xFFF * start code must be '1111 1111 1111'B, that is 0xFFF
*/ */
extern bool srs_aac_startswith_adts(SrsStream* stream); extern bool srs_aac_startswith_adts(SrsBuffer* stream);
/** /**
* cacl the crc32 of bytes in buf. * cacl the crc32 of bytes in buf.

View file

@ -88,7 +88,7 @@ struct Context
// for h264 raw stream, // for h264 raw stream,
// @see: https://github.com/simple-rtmp-server/srs/issues/66#issuecomment-62240521 // @see: https://github.com/simple-rtmp-server/srs/issues/66#issuecomment-62240521
SrsStream h264_raw_stream; SrsBuffer h264_raw_stream;
// about SPS, @see: 7.3.2.1.1, H.264-AVC-ISO_IEC_14496-10-2012.pdf, page 62 // about SPS, @see: 7.3.2.1.1, H.264-AVC-ISO_IEC_14496-10-2012.pdf, page 62
std::string h264_sps; std::string h264_sps;
std::string h264_pps; std::string h264_pps;
@ -101,7 +101,7 @@ struct Context
bool h264_pps_changed; bool h264_pps_changed;
// for aac raw stream, // for aac raw stream,
// @see: https://github.com/simple-rtmp-server/srs/issues/212#issuecomment-64146250 // @see: https://github.com/simple-rtmp-server/srs/issues/212#issuecomment-64146250
SrsStream aac_raw_stream; SrsBuffer aac_raw_stream;
// the aac sequence header. // the aac sequence header.
std::string aac_specific_config; std::string aac_specific_config;
@ -823,8 +823,8 @@ int srs_rtmp_on_aggregate(Context* context, SrsCommonMessage* msg)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
SrsStream aggregate_stream; SrsBuffer aggregate_stream;
SrsStream* stream = &aggregate_stream; SrsBuffer* stream = &aggregate_stream;
if ((ret = stream->initialize(msg->payload, msg->size)) != ERROR_SUCCESS) { if ((ret = stream->initialize(msg->payload, msg->size)) != ERROR_SUCCESS) {
return ret; return ret;
} }
@ -1049,7 +1049,7 @@ srs_bool srs_rtmp_is_onMetaData(char type, char* data, int size)
return false; return false;
} }
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(data, size)) != ERROR_SUCCESS) { if ((ret = stream.initialize(data, size)) != ERROR_SUCCESS) {
return false; return false;
} }
@ -1123,7 +1123,7 @@ int srs_write_aac_adts_frames(Context* context,
) { ) {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
SrsStream* stream = &context->aac_raw_stream; SrsBuffer* stream = &context->aac_raw_stream;
if ((ret = stream->initialize(frames, frames_size)) != ERROR_SUCCESS) { if ((ret = stream->initialize(frames, frames_size)) != ERROR_SUCCESS) {
return ret; return ret;
} }
@ -1195,7 +1195,7 @@ int srs_audio_write_raw_frame(srs_rtmp_t rtmp,
*/ */
srs_bool srs_aac_is_adts(char* aac_raw_data, int ac_raw_size) srs_bool srs_aac_is_adts(char* aac_raw_data, int ac_raw_size)
{ {
SrsStream stream; SrsBuffer stream;
if (stream.initialize(aac_raw_data, ac_raw_size) != ERROR_SUCCESS) { if (stream.initialize(aac_raw_data, ac_raw_size) != ERROR_SUCCESS) {
return false; return false;
} }
@ -1432,7 +1432,7 @@ srs_bool srs_h264_is_duplicated_pps_error(int error_code)
srs_bool srs_h264_startswith_annexb(char* h264_raw_data, int h264_raw_size, int* pnb_start_code) srs_bool srs_h264_startswith_annexb(char* h264_raw_data, int h264_raw_size, int* pnb_start_code)
{ {
SrsStream stream; SrsBuffer stream;
if (stream.initialize(h264_raw_data, h264_raw_size) != ERROR_SUCCESS) { if (stream.initialize(h264_raw_data, h264_raw_size) != ERROR_SUCCESS) {
return false; return false;
} }
@ -1629,7 +1629,7 @@ srs_amf0_t srs_amf0_parse(char* data, int size, int* nparsed)
srs_amf0_t amf0 = NULL; srs_amf0_t amf0 = NULL;
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(data, size)) != ERROR_SUCCESS) { if ((ret = stream.initialize(data, size)) != ERROR_SUCCESS) {
return amf0; return amf0;
} }
@ -1712,7 +1712,7 @@ int srs_amf0_serialize(srs_amf0_t amf0, char* data, int size)
SrsAmf0Any* any = (SrsAmf0Any*)amf0; SrsAmf0Any* any = (SrsAmf0Any*)amf0;
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(data, size)) != ERROR_SUCCESS) { if ((ret = stream.initialize(data, size)) != ERROR_SUCCESS) {
return ret; return ret;
} }

View file

@ -166,14 +166,14 @@ private:
std::vector<SrsTsPiece*> pieces; std::vector<SrsTsPiece*> pieces;
int64_t next_connect_time; int64_t next_connect_time;
private: private:
SrsStream* stream; SrsBuffer* stream;
SrsTsContext* context; SrsTsContext* context;
public: public:
SrsIngestSrsInput(SrsHttpUri* hls) { SrsIngestSrsInput(SrsHttpUri* hls) {
in_hls = hls; in_hls = hls;
next_connect_time = 0; next_connect_time = 0;
stream = new SrsStream(); stream = new SrsBuffer();
context = new SrsTsContext(); context = new SrsTsContext();
} }
virtual ~SrsIngestSrsInput() { virtual ~SrsIngestSrsInput() {
@ -689,12 +689,12 @@ public:
public: public:
virtual int on_aac_frame(char* frame, int frame_size, double duration); virtual int on_aac_frame(char* frame, int frame_size, double duration);
private: private:
virtual int do_on_aac_frame(SrsStream* avs, double duration); virtual int do_on_aac_frame(SrsBuffer* avs, double duration);
virtual int parse_message_queue(); virtual int parse_message_queue();
virtual int on_ts_video(SrsTsMessage* msg, SrsStream* avs); virtual int on_ts_video(SrsTsMessage* msg, SrsBuffer* avs);
virtual int write_h264_sps_pps(u_int32_t dts, u_int32_t pts); virtual int write_h264_sps_pps(u_int32_t dts, u_int32_t pts);
virtual int write_h264_ipb_frame(std::string ibps, SrsCodecVideoAVCFrame frame_type, u_int32_t dts, u_int32_t pts); virtual int write_h264_ipb_frame(std::string ibps, SrsCodecVideoAVCFrame frame_type, u_int32_t dts, u_int32_t pts);
virtual int on_ts_audio(SrsTsMessage* msg, SrsStream* avs); virtual int on_ts_audio(SrsTsMessage* msg, SrsBuffer* avs);
virtual int write_audio_raw_frame(char* frame, int frame_size, SrsRawAacStreamCodec* codec, u_int32_t dts); virtual int write_audio_raw_frame(char* frame, int frame_size, SrsRawAacStreamCodec* codec, u_int32_t dts);
private: private:
virtual int rtmp_write_packet(char type, u_int32_t timestamp, char* data, int size); virtual int rtmp_write_packet(char type, u_int32_t timestamp, char* data, int size);
@ -789,7 +789,7 @@ int SrsIngestSrsOutput::on_aac_frame(char* frame, int frame_size, double duratio
srs_trace("handle aac frames, size=%dB, duration=%.2f, dts=%"PRId64, frame_size, duration, raw_aac_dts); srs_trace("handle aac frames, size=%dB, duration=%.2f, dts=%"PRId64, frame_size, duration, raw_aac_dts);
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(frame, frame_size)) != ERROR_SUCCESS) { if ((ret = stream.initialize(frame, frame_size)) != ERROR_SUCCESS) {
return ret; return ret;
} }
@ -797,7 +797,7 @@ int SrsIngestSrsOutput::on_aac_frame(char* frame, int frame_size, double duratio
return do_on_aac_frame(&stream, duration); return do_on_aac_frame(&stream, duration);
} }
int SrsIngestSrsOutput::do_on_aac_frame(SrsStream* avs, double duration) int SrsIngestSrsOutput::do_on_aac_frame(SrsBuffer* avs, double duration)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -898,7 +898,7 @@ int SrsIngestSrsOutput::parse_message_queue()
queue.erase(it); queue.erase(it);
// parse the stream. // parse the stream.
SrsStream avs; SrsBuffer avs;
if ((ret = avs.initialize(msg->payload->bytes(), msg->payload->length())) != ERROR_SUCCESS) { if ((ret = avs.initialize(msg->payload->bytes(), msg->payload->length())) != ERROR_SUCCESS) {
srs_error("mpegts: initialize av stream failed. ret=%d", ret); srs_error("mpegts: initialize av stream failed. ret=%d", ret);
return ret; return ret;
@ -932,7 +932,7 @@ int SrsIngestSrsOutput::flush_message_queue()
queue.erase(it); queue.erase(it);
// parse the stream. // parse the stream.
SrsStream avs; SrsBuffer avs;
if ((ret = avs.initialize(msg->payload->bytes(), msg->payload->length())) != ERROR_SUCCESS) { if ((ret = avs.initialize(msg->payload->bytes(), msg->payload->length())) != ERROR_SUCCESS) {
srs_error("mpegts: initialize av stream failed. ret=%d", ret); srs_error("mpegts: initialize av stream failed. ret=%d", ret);
return ret; return ret;
@ -954,7 +954,7 @@ int SrsIngestSrsOutput::flush_message_queue()
return ret; return ret;
} }
int SrsIngestSrsOutput::on_ts_video(SrsTsMessage* msg, SrsStream* avs) int SrsIngestSrsOutput::on_ts_video(SrsTsMessage* msg, SrsBuffer* avs)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1109,7 +1109,7 @@ int SrsIngestSrsOutput::write_h264_ipb_frame(string ibps, SrsCodecVideoAVCFrame
return rtmp_write_packet(SrsCodecFlvTagVideo, timestamp, flv, nb_flv); return rtmp_write_packet(SrsCodecFlvTagVideo, timestamp, flv, nb_flv);
} }
int SrsIngestSrsOutput::on_ts_audio(SrsTsMessage* msg, SrsStream* avs) int SrsIngestSrsOutput::on_ts_audio(SrsTsMessage* msg, SrsBuffer* avs)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;

View file

@ -41,7 +41,7 @@ SrsRawH264Stream::~SrsRawH264Stream()
{ {
} }
int SrsRawH264Stream::annexb_demux(SrsStream* stream, char** pframe, int* pnb_frame) int SrsRawH264Stream::annexb_demux(SrsBuffer* stream, char** pframe, int* pnb_frame)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -160,7 +160,7 @@ int SrsRawH264Stream::mux_sequence_header(string sps, string pps, u_int32_t dts,
SrsAutoFree(char, packet); SrsAutoFree(char, packet);
// use stream to generate the h264 packet. // use stream to generate the h264 packet.
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(packet, nb_packet)) != ERROR_SUCCESS) { if ((ret = stream.initialize(packet, nb_packet)) != ERROR_SUCCESS) {
return ret; return ret;
} }
@ -239,7 +239,7 @@ int SrsRawH264Stream::mux_ipb_frame(char* frame, int nb_frame, string& ibp)
SrsAutoFree(char, packet); SrsAutoFree(char, packet);
// use stream to generate the h264 packet. // use stream to generate the h264 packet.
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(packet, nb_packet)) != ERROR_SUCCESS) { if ((ret = stream.initialize(packet, nb_packet)) != ERROR_SUCCESS) {
return ret; return ret;
} }
@ -310,7 +310,7 @@ SrsRawAacStream::~SrsRawAacStream()
{ {
} }
int SrsRawAacStream::adts_demux(SrsStream* stream, char** pframe, int* pnb_frame, SrsRawAacStreamCodec& codec) int SrsRawAacStream::adts_demux(SrsBuffer* stream, char** pframe, int* pnb_frame, SrsRawAacStreamCodec& codec)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;

View file

@ -34,7 +34,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include <srs_kernel_codec.hpp> #include <srs_kernel_codec.hpp>
class SrsStream; class SrsBuffer;
/** /**
* the raw h.264 stream, in annexb. * the raw h.264 stream, in annexb.
@ -51,7 +51,7 @@ public:
* @param pframe the output h.264 frame in stream. user should never free it. * @param pframe the output h.264 frame in stream. user should never free it.
* @param pnb_frame the output h.264 frame size. * @param pnb_frame the output h.264 frame size.
*/ */
virtual int annexb_demux(SrsStream* stream, char** pframe, int* pnb_frame); virtual int annexb_demux(SrsBuffer* stream, char** pframe, int* pnb_frame);
/** /**
* whether the frame is sps or pps. * whether the frame is sps or pps.
*/ */
@ -123,7 +123,7 @@ public:
* @param pnb_frame the output aac frame size. * @param pnb_frame the output aac frame size.
* @param codec the output codec info. * @param codec the output codec info.
*/ */
virtual int adts_demux(SrsStream* stream, char** pframe, int* pnb_frame, SrsRawAacStreamCodec& codec); virtual int adts_demux(SrsBuffer* stream, char** pframe, int* pnb_frame, SrsRawAacStreamCodec& codec);
/** /**
* aac raw data to aac packet, without flv payload header. * aac raw data to aac packet, without flv payload header.
* mux the aac specific config to flv sequence header packet. * mux the aac specific config to flv sequence header packet.

View file

@ -379,7 +379,7 @@ SrsAmf0Any* SrsAmf0Any::date(int64_t value)
return new SrsAmf0Date(value); return new SrsAmf0Date(value);
} }
int SrsAmf0Any::discovery(SrsStream* stream, SrsAmf0Any** ppvalue) int SrsAmf0Any::discovery(SrsBuffer* stream, SrsAmf0Any** ppvalue)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -586,7 +586,7 @@ int SrsAmf0ObjectEOF::total_size()
return SrsAmf0Size::object_eof(); return SrsAmf0Size::object_eof();
} }
int SrsAmf0ObjectEOF::read(SrsStream* stream) int SrsAmf0ObjectEOF::read(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -624,7 +624,7 @@ int SrsAmf0ObjectEOF::read(SrsStream* stream)
return ret; return ret;
} }
int SrsAmf0ObjectEOF::write(SrsStream* stream) int SrsAmf0ObjectEOF::write(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -686,7 +686,7 @@ int SrsAmf0Object::total_size()
return size; return size;
} }
int SrsAmf0Object::read(SrsStream* stream) int SrsAmf0Object::read(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -741,7 +741,7 @@ int SrsAmf0Object::read(SrsStream* stream)
return ret; return ret;
} }
int SrsAmf0Object::write(SrsStream* stream) int SrsAmf0Object::write(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -880,7 +880,7 @@ int SrsAmf0EcmaArray::total_size()
return size; return size;
} }
int SrsAmf0EcmaArray::read(SrsStream* stream) int SrsAmf0EcmaArray::read(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -945,7 +945,7 @@ int SrsAmf0EcmaArray::read(SrsStream* stream)
return ret; return ret;
} }
int SrsAmf0EcmaArray::write(SrsStream* stream) int SrsAmf0EcmaArray::write(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1092,7 +1092,7 @@ int SrsAmf0StrictArray::total_size()
return size; return size;
} }
int SrsAmf0StrictArray::read(SrsStream* stream) int SrsAmf0StrictArray::read(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1139,7 +1139,7 @@ int SrsAmf0StrictArray::read(SrsStream* stream)
return ret; return ret;
} }
int SrsAmf0StrictArray::write(SrsStream* stream) int SrsAmf0StrictArray::write(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1322,12 +1322,12 @@ int SrsAmf0String::total_size()
return SrsAmf0Size::str(value); return SrsAmf0Size::str(value);
} }
int SrsAmf0String::read(SrsStream* stream) int SrsAmf0String::read(SrsBuffer* stream)
{ {
return srs_amf0_read_string(stream, value); return srs_amf0_read_string(stream, value);
} }
int SrsAmf0String::write(SrsStream* stream) int SrsAmf0String::write(SrsBuffer* stream)
{ {
return srs_amf0_write_string(stream, value); return srs_amf0_write_string(stream, value);
} }
@ -1353,12 +1353,12 @@ int SrsAmf0Boolean::total_size()
return SrsAmf0Size::boolean(); return SrsAmf0Size::boolean();
} }
int SrsAmf0Boolean::read(SrsStream* stream) int SrsAmf0Boolean::read(SrsBuffer* stream)
{ {
return srs_amf0_read_boolean(stream, value); return srs_amf0_read_boolean(stream, value);
} }
int SrsAmf0Boolean::write(SrsStream* stream) int SrsAmf0Boolean::write(SrsBuffer* stream)
{ {
return srs_amf0_write_boolean(stream, value); return srs_amf0_write_boolean(stream, value);
} }
@ -1384,12 +1384,12 @@ int SrsAmf0Number::total_size()
return SrsAmf0Size::number(); return SrsAmf0Size::number();
} }
int SrsAmf0Number::read(SrsStream* stream) int SrsAmf0Number::read(SrsBuffer* stream)
{ {
return srs_amf0_read_number(stream, value); return srs_amf0_read_number(stream, value);
} }
int SrsAmf0Number::write(SrsStream* stream) int SrsAmf0Number::write(SrsBuffer* stream)
{ {
return srs_amf0_write_number(stream, value); return srs_amf0_write_number(stream, value);
} }
@ -1416,7 +1416,7 @@ int SrsAmf0Date::total_size()
return SrsAmf0Size::date(); return SrsAmf0Size::date();
} }
int SrsAmf0Date::read(SrsStream* stream) int SrsAmf0Date::read(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1465,7 +1465,7 @@ int SrsAmf0Date::read(SrsStream* stream)
return ret; return ret;
} }
int SrsAmf0Date::write(SrsStream* stream) int SrsAmf0Date::write(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1538,12 +1538,12 @@ int SrsAmf0Null::total_size()
return SrsAmf0Size::null(); return SrsAmf0Size::null();
} }
int SrsAmf0Null::read(SrsStream* stream) int SrsAmf0Null::read(SrsBuffer* stream)
{ {
return srs_amf0_read_null(stream); return srs_amf0_read_null(stream);
} }
int SrsAmf0Null::write(SrsStream* stream) int SrsAmf0Null::write(SrsBuffer* stream)
{ {
return srs_amf0_write_null(stream); return srs_amf0_write_null(stream);
} }
@ -1568,12 +1568,12 @@ int SrsAmf0Undefined::total_size()
return SrsAmf0Size::undefined(); return SrsAmf0Size::undefined();
} }
int SrsAmf0Undefined::read(SrsStream* stream) int SrsAmf0Undefined::read(SrsBuffer* stream)
{ {
return srs_amf0_read_undefined(stream); return srs_amf0_read_undefined(stream);
} }
int SrsAmf0Undefined::write(SrsStream* stream) int SrsAmf0Undefined::write(SrsBuffer* stream)
{ {
return srs_amf0_write_undefined(stream); return srs_amf0_write_undefined(stream);
} }
@ -1584,7 +1584,7 @@ SrsAmf0Any* SrsAmf0Undefined::copy()
return copy; return copy;
} }
int srs_amf0_read_any(SrsStream* stream, SrsAmf0Any** ppvalue) int srs_amf0_read_any(SrsBuffer* stream, SrsAmf0Any** ppvalue)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1604,7 +1604,7 @@ int srs_amf0_read_any(SrsStream* stream, SrsAmf0Any** ppvalue)
return ret; return ret;
} }
int srs_amf0_read_string(SrsStream* stream, string& value) int srs_amf0_read_string(SrsBuffer* stream, string& value)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1627,7 +1627,7 @@ int srs_amf0_read_string(SrsStream* stream, string& value)
return srs_amf0_read_utf8(stream, value); return srs_amf0_read_utf8(stream, value);
} }
int srs_amf0_write_string(SrsStream* stream, string value) int srs_amf0_write_string(SrsBuffer* stream, string value)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1644,7 +1644,7 @@ int srs_amf0_write_string(SrsStream* stream, string value)
return srs_amf0_write_utf8(stream, value); return srs_amf0_write_utf8(stream, value);
} }
int srs_amf0_read_boolean(SrsStream* stream, bool& value) int srs_amf0_read_boolean(SrsBuffer* stream, bool& value)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1677,7 +1677,7 @@ int srs_amf0_read_boolean(SrsStream* stream, bool& value)
return ret; return ret;
} }
int srs_amf0_write_boolean(SrsStream* stream, bool value) int srs_amf0_write_boolean(SrsBuffer* stream, bool value)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1708,7 +1708,7 @@ int srs_amf0_write_boolean(SrsStream* stream, bool value)
return ret; return ret;
} }
int srs_amf0_read_number(SrsStream* stream, double& value) int srs_amf0_read_number(SrsBuffer* stream, double& value)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1742,7 +1742,7 @@ int srs_amf0_read_number(SrsStream* stream, double& value)
return ret; return ret;
} }
int srs_amf0_write_number(SrsStream* stream, double value) int srs_amf0_write_number(SrsBuffer* stream, double value)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1772,7 +1772,7 @@ int srs_amf0_write_number(SrsStream* stream, double value)
return ret; return ret;
} }
int srs_amf0_read_null(SrsStream* stream) int srs_amf0_read_null(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1794,7 +1794,7 @@ int srs_amf0_read_null(SrsStream* stream)
return ret; return ret;
} }
int srs_amf0_write_null(SrsStream* stream) int srs_amf0_write_null(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1811,7 +1811,7 @@ int srs_amf0_write_null(SrsStream* stream)
return ret; return ret;
} }
int srs_amf0_read_undefined(SrsStream* stream) int srs_amf0_read_undefined(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1833,7 +1833,7 @@ int srs_amf0_read_undefined(SrsStream* stream)
return ret; return ret;
} }
int srs_amf0_write_undefined(SrsStream* stream) int srs_amf0_write_undefined(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1853,7 +1853,7 @@ int srs_amf0_write_undefined(SrsStream* stream)
namespace _srs_internal namespace _srs_internal
{ {
int srs_amf0_read_utf8(SrsStream* stream, string& value) int srs_amf0_read_utf8(SrsBuffer* stream, string& value)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1898,7 +1898,7 @@ namespace _srs_internal
return ret; return ret;
} }
int srs_amf0_write_utf8(SrsStream* stream, string value) int srs_amf0_write_utf8(SrsBuffer* stream, string value)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1929,7 +1929,7 @@ namespace _srs_internal
return ret; return ret;
} }
bool srs_amf0_is_object_eof(SrsStream* stream) bool srs_amf0_is_object_eof(SrsBuffer* stream)
{ {
// detect the object-eof specially // detect the object-eof specially
if (stream->require(3)) { if (stream->require(3)) {
@ -1942,7 +1942,7 @@ namespace _srs_internal
return false; return false;
} }
int srs_amf0_write_object_eof(SrsStream* stream, SrsAmf0ObjectEOF* value) int srs_amf0_write_object_eof(SrsBuffer* stream, SrsAmf0ObjectEOF* value)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1971,7 +1971,7 @@ namespace _srs_internal
return ret; return ret;
} }
int srs_amf0_write_any(SrsStream* stream, SrsAmf0Any* value) int srs_amf0_write_any(SrsBuffer* stream, SrsAmf0Any* value)
{ {
srs_assert(value != NULL); srs_assert(value != NULL);
return value->write(stream); return value->write(stream);

View file

@ -33,7 +33,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include <string> #include <string>
#include <vector> #include <vector>
class SrsStream; class SrsBuffer;
class SrsAmf0Object; class SrsAmf0Object;
class SrsAmf0EcmaArray; class SrsAmf0EcmaArray;
class SrsAmf0StrictArray; class SrsAmf0StrictArray;
@ -53,15 +53,15 @@ namespace _srs_internal
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
Usages: Usages:
1. the bytes proxy: SrsStream 1. the bytes proxy: SrsBuffer
// when we got some bytes from file or network, // when we got some bytes from file or network,
// use SrsStream proxy to read/write bytes // use SrsBuffer proxy to read/write bytes
// for example, read bytes from file or network. // for example, read bytes from file or network.
char* bytes = ...; char* bytes = ...;
// initialize the stream, proxy for bytes. // initialize the stream, proxy for bytes.
SrsStream stream; SrsBuffer stream;
stream.initialize(bytes); stream.initialize(bytes);
// use stream instead. // use stream instead.
@ -106,7 +106,7 @@ Usages:
char* bytes = new char[any->total_size()]; char* bytes = new char[any->total_size()];
SrsStream stream; SrsBuffer stream;
stream.initialize(bytes); stream.initialize(bytes);
any->write(&stream); any->write(&stream);
@ -257,11 +257,11 @@ public:
/** /**
* read AMF0 instance from stream. * read AMF0 instance from stream.
*/ */
virtual int read(SrsStream* stream) = 0; virtual int read(SrsBuffer* stream) = 0;
/** /**
* write AMF0 instance to stream. * write AMF0 instance to stream.
*/ */
virtual int write(SrsStream* stream) = 0; virtual int write(SrsBuffer* stream) = 0;
/** /**
* copy current AMF0 instance. * copy current AMF0 instance.
*/ */
@ -328,7 +328,7 @@ public:
* @remark, instance is created without read from stream, user must * @remark, instance is created without read from stream, user must
* use (*ppvalue)->read(stream) to get the instance. * use (*ppvalue)->read(stream) to get the instance.
*/ */
static int discovery(SrsStream* stream, SrsAmf0Any** ppvalue); static int discovery(SrsBuffer* stream, SrsAmf0Any** ppvalue);
}; };
/** /**
@ -353,8 +353,8 @@ public:
// serialize/deserialize to/from stream. // serialize/deserialize to/from stream.
public: public:
virtual int total_size(); virtual int total_size();
virtual int read(SrsStream* stream); virtual int read(SrsBuffer* stream);
virtual int write(SrsStream* stream); virtual int write(SrsBuffer* stream);
virtual SrsAmf0Any* copy(); virtual SrsAmf0Any* copy();
/** /**
* convert amf0 to json. * convert amf0 to json.
@ -440,8 +440,8 @@ public:
// serialize/deserialize to/from stream. // serialize/deserialize to/from stream.
public: public:
virtual int total_size(); virtual int total_size();
virtual int read(SrsStream* stream); virtual int read(SrsBuffer* stream);
virtual int write(SrsStream* stream); virtual int write(SrsBuffer* stream);
virtual SrsAmf0Any* copy(); virtual SrsAmf0Any* copy();
/** /**
* convert amf0 to json. * convert amf0 to json.
@ -525,8 +525,8 @@ public:
// serialize/deserialize to/from stream. // serialize/deserialize to/from stream.
public: public:
virtual int total_size(); virtual int total_size();
virtual int read(SrsStream* stream); virtual int read(SrsBuffer* stream);
virtual int write(SrsStream* stream); virtual int write(SrsBuffer* stream);
virtual SrsAmf0Any* copy(); virtual SrsAmf0Any* copy();
/** /**
* convert amf0 to json. * convert amf0 to json.
@ -582,15 +582,15 @@ public:
* @param ppvalue, the output amf0 any elem. * @param ppvalue, the output amf0 any elem.
* NULL if error; otherwise, never NULL and user must free it. * NULL if error; otherwise, never NULL and user must free it.
*/ */
extern int srs_amf0_read_any(SrsStream* stream, SrsAmf0Any** ppvalue); extern int srs_amf0_read_any(SrsBuffer* stream, SrsAmf0Any** ppvalue);
/** /**
* read amf0 string from stream. * read amf0 string from stream.
* 2.4 String Type * 2.4 String Type
* string-type = string-marker UTF-8 * string-type = string-marker UTF-8
*/ */
extern int srs_amf0_read_string(SrsStream* stream, std::string& value); extern int srs_amf0_read_string(SrsBuffer* stream, std::string& value);
extern int srs_amf0_write_string(SrsStream* stream, std::string value); extern int srs_amf0_write_string(SrsBuffer* stream, std::string value);
/** /**
* read amf0 boolean from stream. * read amf0 boolean from stream.
@ -598,32 +598,32 @@ extern int srs_amf0_write_string(SrsStream* stream, std::string value);
* boolean-type = boolean-marker U8 * boolean-type = boolean-marker U8
* 0 is false, <> 0 is true * 0 is false, <> 0 is true
*/ */
extern int srs_amf0_read_boolean(SrsStream* stream, bool& value); extern int srs_amf0_read_boolean(SrsBuffer* stream, bool& value);
extern int srs_amf0_write_boolean(SrsStream* stream, bool value); extern int srs_amf0_write_boolean(SrsBuffer* stream, bool value);
/** /**
* read amf0 number from stream. * read amf0 number from stream.
* 2.2 Number Type * 2.2 Number Type
* number-type = number-marker DOUBLE * number-type = number-marker DOUBLE
*/ */
extern int srs_amf0_read_number(SrsStream* stream, double& value); extern int srs_amf0_read_number(SrsBuffer* stream, double& value);
extern int srs_amf0_write_number(SrsStream* stream, double value); extern int srs_amf0_write_number(SrsBuffer* stream, double value);
/** /**
* read amf0 null from stream. * read amf0 null from stream.
* 2.7 null Type * 2.7 null Type
* null-type = null-marker * null-type = null-marker
*/ */
extern int srs_amf0_read_null(SrsStream* stream); extern int srs_amf0_read_null(SrsBuffer* stream);
extern int srs_amf0_write_null(SrsStream* stream); extern int srs_amf0_write_null(SrsBuffer* stream);
/** /**
* read amf0 undefined from stream. * read amf0 undefined from stream.
* 2.8 undefined Type * 2.8 undefined Type
* undefined-type = undefined-marker * undefined-type = undefined-marker
*/ */
extern int srs_amf0_read_undefined(SrsStream* stream); extern int srs_amf0_read_undefined(SrsBuffer* stream);
extern int srs_amf0_write_undefined(SrsStream* stream); extern int srs_amf0_write_undefined(SrsBuffer* stream);
// internal objects, user should never use it. // internal objects, user should never use it.
namespace _srs_internal namespace _srs_internal
@ -650,8 +650,8 @@ namespace _srs_internal
virtual ~SrsAmf0String(); virtual ~SrsAmf0String();
public: public:
virtual int total_size(); virtual int total_size();
virtual int read(SrsStream* stream); virtual int read(SrsBuffer* stream);
virtual int write(SrsStream* stream); virtual int write(SrsBuffer* stream);
virtual SrsAmf0Any* copy(); virtual SrsAmf0Any* copy();
}; };
@ -677,8 +677,8 @@ namespace _srs_internal
virtual ~SrsAmf0Boolean(); virtual ~SrsAmf0Boolean();
public: public:
virtual int total_size(); virtual int total_size();
virtual int read(SrsStream* stream); virtual int read(SrsBuffer* stream);
virtual int write(SrsStream* stream); virtual int write(SrsBuffer* stream);
virtual SrsAmf0Any* copy(); virtual SrsAmf0Any* copy();
}; };
@ -703,8 +703,8 @@ namespace _srs_internal
virtual ~SrsAmf0Number(); virtual ~SrsAmf0Number();
public: public:
virtual int total_size(); virtual int total_size();
virtual int read(SrsStream* stream); virtual int read(SrsBuffer* stream);
virtual int write(SrsStream* stream); virtual int write(SrsBuffer* stream);
virtual SrsAmf0Any* copy(); virtual SrsAmf0Any* copy();
}; };
@ -731,8 +731,8 @@ namespace _srs_internal
// serialize/deserialize to/from stream. // serialize/deserialize to/from stream.
public: public:
virtual int total_size(); virtual int total_size();
virtual int read(SrsStream* stream); virtual int read(SrsBuffer* stream);
virtual int write(SrsStream* stream); virtual int write(SrsBuffer* stream);
virtual SrsAmf0Any* copy(); virtual SrsAmf0Any* copy();
public: public:
/** /**
@ -763,8 +763,8 @@ namespace _srs_internal
virtual ~SrsAmf0Null(); virtual ~SrsAmf0Null();
public: public:
virtual int total_size(); virtual int total_size();
virtual int read(SrsStream* stream); virtual int read(SrsBuffer* stream);
virtual int write(SrsStream* stream); virtual int write(SrsBuffer* stream);
virtual SrsAmf0Any* copy(); virtual SrsAmf0Any* copy();
}; };
@ -786,8 +786,8 @@ namespace _srs_internal
virtual ~SrsAmf0Undefined(); virtual ~SrsAmf0Undefined();
public: public:
virtual int total_size(); virtual int total_size();
virtual int read(SrsStream* stream); virtual int read(SrsBuffer* stream);
virtual int write(SrsStream* stream); virtual int write(SrsBuffer* stream);
virtual SrsAmf0Any* copy(); virtual SrsAmf0Any* copy();
}; };
@ -836,8 +836,8 @@ namespace _srs_internal
virtual ~SrsAmf0ObjectEOF(); virtual ~SrsAmf0ObjectEOF();
public: public:
virtual int total_size(); virtual int total_size();
virtual int read(SrsStream* stream); virtual int read(SrsBuffer* stream);
virtual int write(SrsStream* stream); virtual int write(SrsBuffer* stream);
virtual SrsAmf0Any* copy(); virtual SrsAmf0Any* copy();
}; };
@ -849,13 +849,13 @@ namespace _srs_internal
* UTF8-1 = %x00-7F * UTF8-1 = %x00-7F
* @remark only support UTF8-1 char. * @remark only support UTF8-1 char.
*/ */
extern int srs_amf0_read_utf8(SrsStream* stream, std::string& value); extern int srs_amf0_read_utf8(SrsBuffer* stream, std::string& value);
extern int srs_amf0_write_utf8(SrsStream* stream, std::string value); extern int srs_amf0_write_utf8(SrsBuffer* stream, std::string value);
extern bool srs_amf0_is_object_eof(SrsStream* stream); extern bool srs_amf0_is_object_eof(SrsBuffer* stream);
extern int srs_amf0_write_object_eof(SrsStream* stream, SrsAmf0ObjectEOF* value); extern int srs_amf0_write_object_eof(SrsBuffer* stream, SrsAmf0ObjectEOF* value);
extern int srs_amf0_write_any(SrsStream* stream, SrsAmf0Any* value); extern int srs_amf0_write_any(SrsBuffer* stream, SrsAmf0Any* value);
}; };
#endif #endif

View file

@ -323,7 +323,7 @@ namespace _srs_internal
srs_freep(random1); srs_freep(random1);
} }
int key_block::parse(SrsStream* stream) int key_block::parse(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -405,7 +405,7 @@ namespace _srs_internal
srs_freep(random1); srs_freep(random1);
} }
int digest_block::parse(SrsStream* stream) int digest_block::parse(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -629,7 +629,7 @@ namespace _srs_internal
return ret; return ret;
} }
void c1s1_strategy::copy_time_version(SrsStream* stream, c1s1* owner) void c1s1_strategy::copy_time_version(SrsBuffer* stream, c1s1* owner)
{ {
srs_assert(stream->require(8)); srs_assert(stream->require(8));
@ -639,7 +639,7 @@ namespace _srs_internal
// 4bytes version // 4bytes version
stream->write_4bytes(owner->version); stream->write_4bytes(owner->version);
} }
void c1s1_strategy::copy_key(SrsStream* stream) void c1s1_strategy::copy_key(SrsBuffer* stream)
{ {
srs_assert(key.random0_size >= 0); srs_assert(key.random0_size >= 0);
srs_assert(key.random1_size >= 0); srs_assert(key.random1_size >= 0);
@ -660,7 +660,7 @@ namespace _srs_internal
stream->write_4bytes(key.offset); stream->write_4bytes(key.offset);
} }
void c1s1_strategy::copy_digest(SrsStream* stream, bool with_digest) void c1s1_strategy::copy_digest(SrsBuffer* stream, bool with_digest)
{ {
srs_assert(key.random0_size >= 0); srs_assert(key.random0_size >= 0);
srs_assert(key.random1_size >= 0); srs_assert(key.random1_size >= 0);
@ -710,7 +710,7 @@ namespace _srs_internal
srs_assert(size == 1536); srs_assert(size == 1536);
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(_c1s1 + 8, 764)) != ERROR_SUCCESS) { if ((ret = stream.initialize(_c1s1 + 8, 764)) != ERROR_SUCCESS) {
return ret; return ret;
@ -745,7 +745,7 @@ namespace _srs_internal
srs_assert(size == 1504); srs_assert(size == 1504);
} }
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(bytes, size)) != ERROR_SUCCESS) { if ((ret = stream.initialize(bytes, size)) != ERROR_SUCCESS) {
return ret; return ret;
@ -779,7 +779,7 @@ namespace _srs_internal
srs_assert(size == 1536); srs_assert(size == 1536);
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(_c1s1 + 8, 764)) != ERROR_SUCCESS) { if ((ret = stream.initialize(_c1s1 + 8, 764)) != ERROR_SUCCESS) {
return ret; return ret;
@ -814,7 +814,7 @@ namespace _srs_internal
srs_assert(size == 1504); srs_assert(size == 1504);
} }
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(bytes, size)) != ERROR_SUCCESS) { if ((ret = stream.initialize(bytes, size)) != ERROR_SUCCESS) {
return ret; return ret;
@ -875,7 +875,7 @@ namespace _srs_internal
return ret; return ret;
} }
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(_c1s1, size)) != ERROR_SUCCESS) { if ((ret = stream.initialize(_c1s1, size)) != ERROR_SUCCESS) {
return ret; return ret;

View file

@ -33,7 +33,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
class ISrsProtocolReaderWriter; class ISrsProtocolReaderWriter;
class SrsComplexHandshake; class SrsComplexHandshake;
class SrsHandshakeBytes; class SrsHandshakeBytes;
class SrsStream; class SrsBuffer;
#ifdef SRS_AUTO_SSL #ifdef SRS_AUTO_SSL
@ -139,7 +139,7 @@ namespace _srs_internal
// parse key block from c1s1. // parse key block from c1s1.
// if created, user must free it by srs_key_block_free // if created, user must free it by srs_key_block_free
// @stream contains c1s1_key_bytes the key start bytes // @stream contains c1s1_key_bytes the key start bytes
int parse(SrsStream* stream); int parse(SrsBuffer* stream);
private: private:
// calc the offset of key, // calc the offset of key,
// the key->offset cannot be used as the offset of key. // the key->offset cannot be used as the offset of key.
@ -177,7 +177,7 @@ namespace _srs_internal
// parse digest block from c1s1. // parse digest block from c1s1.
// if created, user must free it by srs_digest_block_free // if created, user must free it by srs_digest_block_free
// @stream contains c1s1_digest_bytes the digest start bytes // @stream contains c1s1_digest_bytes the digest start bytes
int parse(SrsStream* stream); int parse(SrsBuffer* stream);
private: private:
// calc the offset of digest, // calc the offset of digest,
// the key->offset cannot be used as the offset of digest. // the key->offset cannot be used as the offset of digest.
@ -292,15 +292,15 @@ namespace _srs_internal
/** /**
* copy time and version to stream. * copy time and version to stream.
*/ */
virtual void copy_time_version(SrsStream* stream, c1s1* owner); virtual void copy_time_version(SrsBuffer* stream, c1s1* owner);
/** /**
* copy key to stream. * copy key to stream.
*/ */
virtual void copy_key(SrsStream* stream); virtual void copy_key(SrsBuffer* stream);
/** /**
* copy digest to stream. * copy digest to stream.
*/ */
virtual void copy_digest(SrsStream* stream, bool with_digest); virtual void copy_digest(SrsBuffer* stream, bool with_digest);
}; };
/** /**

View file

@ -144,7 +144,7 @@ int SrsPacket::encode(int& psize, char*& ppayload)
int size = get_size(); int size = get_size();
char* payload = NULL; char* payload = NULL;
SrsStream stream; SrsBuffer stream;
if (size > 0) { if (size > 0) {
payload = new char[size]; payload = new char[size];
@ -169,7 +169,7 @@ int SrsPacket::encode(int& psize, char*& ppayload)
return ret; return ret;
} }
int SrsPacket::decode(SrsStream* stream) int SrsPacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -196,7 +196,7 @@ int SrsPacket::get_size()
return 0; return 0;
} }
int SrsPacket::encode_packet(SrsStream* stream) int SrsPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -410,7 +410,7 @@ int SrsProtocol::decode_message(SrsCommonMessage* msg, SrsPacket** ppacket)
srs_assert(msg->payload != NULL); srs_assert(msg->payload != NULL);
srs_assert(msg->size > 0); srs_assert(msg->size > 0);
SrsStream stream; SrsBuffer stream;
// initialize the decode stream for all message, // initialize the decode stream for all message,
// it's ok for the initialize if fast and without memory copy. // it's ok for the initialize if fast and without memory copy.
@ -684,7 +684,7 @@ int SrsProtocol::do_simple_send(SrsMessageHeader* mh, char* payload, int size)
return ret; return ret;
} }
int SrsProtocol::do_decode_message(SrsMessageHeader& header, SrsStream* stream, SrsPacket** ppacket) int SrsProtocol::do_decode_message(SrsMessageHeader& header, SrsBuffer* stream, SrsPacket** ppacket)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -1852,7 +1852,7 @@ int SrsHandshakeBytes::create_c0c1()
srs_random_generate(c0c1, 1537); srs_random_generate(c0c1, 1537);
// plain text required. // plain text required.
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(c0c1, 9)) != ERROR_SUCCESS) { if ((ret = stream.initialize(c0c1, 9)) != ERROR_SUCCESS) {
return ret; return ret;
} }
@ -1875,7 +1875,7 @@ int SrsHandshakeBytes::create_s0s1s2(const char* c1)
srs_random_generate(s0s1s2, 3073); srs_random_generate(s0s1s2, 3073);
// plain text required. // plain text required.
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(s0s1s2, 9)) != ERROR_SUCCESS) { if ((ret = stream.initialize(s0s1s2, 9)) != ERROR_SUCCESS) {
return ret; return ret;
} }
@ -1907,7 +1907,7 @@ int SrsHandshakeBytes::create_c2()
srs_random_generate(c2, 1536); srs_random_generate(c2, 1536);
// time // time
SrsStream stream; SrsBuffer stream;
if ((ret = stream.initialize(c2, 8)) != ERROR_SUCCESS) { if ((ret = stream.initialize(c2, 8)) != ERROR_SUCCESS) {
return ret; return ret;
} }
@ -3127,7 +3127,7 @@ SrsConnectAppPacket::~SrsConnectAppPacket()
srs_freep(args); srs_freep(args);
} }
int SrsConnectAppPacket::decode(SrsStream* stream) int SrsConnectAppPacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3217,7 +3217,7 @@ int SrsConnectAppPacket::get_size()
return size; return size;
} }
int SrsConnectAppPacket::encode_packet(SrsStream* stream) int SrsConnectAppPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3264,7 +3264,7 @@ SrsConnectAppResPacket::~SrsConnectAppResPacket()
srs_freep(info); srs_freep(info);
} }
int SrsConnectAppResPacket::decode(SrsStream* stream) int SrsConnectAppResPacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3323,7 +3323,7 @@ int SrsConnectAppResPacket::get_size()
+ SrsAmf0Size::object(props) + SrsAmf0Size::object(info); + SrsAmf0Size::object(props) + SrsAmf0Size::object(info);
} }
int SrsConnectAppResPacket::encode_packet(SrsStream* stream) int SrsConnectAppResPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3372,7 +3372,7 @@ SrsCallPacket::~SrsCallPacket()
srs_freep(arguments); srs_freep(arguments);
} }
int SrsCallPacket::decode(SrsStream* stream) int SrsCallPacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3446,7 +3446,7 @@ int SrsCallPacket::get_size()
return size; return size;
} }
int SrsCallPacket::encode_packet(SrsStream* stream) int SrsCallPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3520,7 +3520,7 @@ int SrsCallResPacket::get_size()
return size; return size;
} }
int SrsCallResPacket::encode_packet(SrsStream* stream) int SrsCallResPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3566,7 +3566,7 @@ SrsCreateStreamPacket::~SrsCreateStreamPacket()
srs_freep(command_object); srs_freep(command_object);
} }
int SrsCreateStreamPacket::decode(SrsStream* stream) int SrsCreateStreamPacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3612,7 +3612,7 @@ int SrsCreateStreamPacket::get_size()
+ SrsAmf0Size::null(); + SrsAmf0Size::null();
} }
int SrsCreateStreamPacket::encode_packet(SrsStream* stream) int SrsCreateStreamPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3652,7 +3652,7 @@ SrsCreateStreamResPacket::~SrsCreateStreamResPacket()
srs_freep(command_object); srs_freep(command_object);
} }
int SrsCreateStreamResPacket::decode(SrsStream* stream) int SrsCreateStreamResPacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3703,7 +3703,7 @@ int SrsCreateStreamResPacket::get_size()
+ SrsAmf0Size::null() + SrsAmf0Size::number(); + SrsAmf0Size::null() + SrsAmf0Size::number();
} }
int SrsCreateStreamResPacket::encode_packet(SrsStream* stream) int SrsCreateStreamResPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3749,7 +3749,7 @@ SrsCloseStreamPacket::~SrsCloseStreamPacket()
srs_freep(command_object); srs_freep(command_object);
} }
int SrsCloseStreamPacket::decode(SrsStream* stream) int SrsCloseStreamPacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3784,7 +3784,7 @@ SrsFMLEStartPacket::~SrsFMLEStartPacket()
srs_freep(command_object); srs_freep(command_object);
} }
int SrsFMLEStartPacket::decode(SrsStream* stream) int SrsFMLEStartPacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3839,7 +3839,7 @@ int SrsFMLEStartPacket::get_size()
+ SrsAmf0Size::null() + SrsAmf0Size::str(stream_name); + SrsAmf0Size::null() + SrsAmf0Size::str(stream_name);
} }
int SrsFMLEStartPacket::encode_packet(SrsStream* stream) int SrsFMLEStartPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3909,7 +3909,7 @@ SrsFMLEStartResPacket::~SrsFMLEStartResPacket()
srs_freep(args); srs_freep(args);
} }
int SrsFMLEStartResPacket::decode(SrsStream* stream) int SrsFMLEStartResPacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -3960,7 +3960,7 @@ int SrsFMLEStartResPacket::get_size()
+ SrsAmf0Size::null() + SrsAmf0Size::undefined(); + SrsAmf0Size::null() + SrsAmf0Size::undefined();
} }
int SrsFMLEStartResPacket::encode_packet(SrsStream* stream) int SrsFMLEStartResPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4007,7 +4007,7 @@ SrsPublishPacket::~SrsPublishPacket()
srs_freep(command_object); srs_freep(command_object);
} }
int SrsPublishPacket::decode(SrsStream* stream) int SrsPublishPacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4064,7 +4064,7 @@ int SrsPublishPacket::get_size()
+ SrsAmf0Size::str(type); + SrsAmf0Size::str(type);
} }
int SrsPublishPacket::encode_packet(SrsStream* stream) int SrsPublishPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4118,7 +4118,7 @@ SrsPausePacket::~SrsPausePacket()
srs_freep(command_object); srs_freep(command_object);
} }
int SrsPausePacket::decode(SrsStream* stream) int SrsPausePacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4174,7 +4174,7 @@ SrsPlayPacket::~SrsPlayPacket()
srs_freep(command_object); srs_freep(command_object);
} }
int SrsPlayPacket::decode(SrsStream* stream) int SrsPlayPacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4275,7 +4275,7 @@ int SrsPlayPacket::get_size()
return size; return size;
} }
int SrsPlayPacket::encode_packet(SrsStream* stream) int SrsPlayPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4356,7 +4356,7 @@ int SrsPlayResPacket::get_size()
+ SrsAmf0Size::null() + SrsAmf0Size::object(desc); + SrsAmf0Size::null() + SrsAmf0Size::object(desc);
} }
int SrsPlayResPacket::encode_packet(SrsStream* stream) int SrsPlayResPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4418,7 +4418,7 @@ int SrsOnBWDonePacket::get_size()
+ SrsAmf0Size::null(); + SrsAmf0Size::null();
} }
int SrsOnBWDonePacket::encode_packet(SrsStream* stream) int SrsOnBWDonePacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4475,7 +4475,7 @@ int SrsOnStatusCallPacket::get_size()
+ SrsAmf0Size::null() + SrsAmf0Size::object(data); + SrsAmf0Size::null() + SrsAmf0Size::object(data);
} }
int SrsOnStatusCallPacket::encode_packet(SrsStream* stream) int SrsOnStatusCallPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4522,7 +4522,7 @@ SrsBandwidthPacket::~SrsBandwidthPacket()
srs_freep(data); srs_freep(data);
} }
int SrsBandwidthPacket::decode(SrsStream *stream) int SrsBandwidthPacket::decode(SrsBuffer *stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4571,7 +4571,7 @@ int SrsBandwidthPacket::get_size()
+ SrsAmf0Size::null() + SrsAmf0Size::object(data); + SrsAmf0Size::null() + SrsAmf0Size::object(data);
} }
int SrsBandwidthPacket::encode_packet(SrsStream* stream) int SrsBandwidthPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4759,7 +4759,7 @@ int SrsOnStatusDataPacket::get_size()
return SrsAmf0Size::str(command_name) + SrsAmf0Size::object(data); return SrsAmf0Size::str(command_name) + SrsAmf0Size::object(data);
} }
int SrsOnStatusDataPacket::encode_packet(SrsStream* stream) int SrsOnStatusDataPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4807,7 +4807,7 @@ int SrsSampleAccessPacket::get_size()
+ SrsAmf0Size::boolean() + SrsAmf0Size::boolean(); + SrsAmf0Size::boolean() + SrsAmf0Size::boolean();
} }
int SrsSampleAccessPacket::encode_packet(SrsStream* stream) int SrsSampleAccessPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4845,7 +4845,7 @@ SrsOnMetaDataPacket::~SrsOnMetaDataPacket()
srs_freep(metadata); srs_freep(metadata);
} }
int SrsOnMetaDataPacket::decode(SrsStream* stream) int SrsOnMetaDataPacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4910,7 +4910,7 @@ int SrsOnMetaDataPacket::get_size()
return SrsAmf0Size::str(name) + SrsAmf0Size::object(metadata); return SrsAmf0Size::str(name) + SrsAmf0Size::object(metadata);
} }
int SrsOnMetaDataPacket::encode_packet(SrsStream* stream) int SrsOnMetaDataPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4939,7 +4939,7 @@ SrsSetWindowAckSizePacket::~SrsSetWindowAckSizePacket()
{ {
} }
int SrsSetWindowAckSizePacket::decode(SrsStream* stream) int SrsSetWindowAckSizePacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -4970,7 +4970,7 @@ int SrsSetWindowAckSizePacket::get_size()
return 4; return 4;
} }
int SrsSetWindowAckSizePacket::encode_packet(SrsStream* stream) int SrsSetWindowAckSizePacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -5012,7 +5012,7 @@ int SrsAcknowledgementPacket::get_size()
return 4; return 4;
} }
int SrsAcknowledgementPacket::encode_packet(SrsStream* stream) int SrsAcknowledgementPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -5039,7 +5039,7 @@ SrsSetChunkSizePacket::~SrsSetChunkSizePacket()
{ {
} }
int SrsSetChunkSizePacket::decode(SrsStream* stream) int SrsSetChunkSizePacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -5070,7 +5070,7 @@ int SrsSetChunkSizePacket::get_size()
return 4; return 4;
} }
int SrsSetChunkSizePacket::encode_packet(SrsStream* stream) int SrsSetChunkSizePacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -5112,7 +5112,7 @@ int SrsSetPeerBandwidthPacket::get_size()
return 5; return 5;
} }
int SrsSetPeerBandwidthPacket::encode_packet(SrsStream* stream) int SrsSetPeerBandwidthPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -5142,7 +5142,7 @@ SrsUserControlPacket::~SrsUserControlPacket()
{ {
} }
int SrsUserControlPacket::decode(SrsStream* stream) int SrsUserControlPacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -5213,7 +5213,7 @@ int SrsUserControlPacket::get_size()
return size; return size;
} }
int SrsUserControlPacket::encode_packet(SrsStream* stream) int SrsUserControlPacket::encode_packet(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;

View file

@ -48,7 +48,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
class ISrsProtocolReaderWriter; class ISrsProtocolReaderWriter;
class SrsFastBuffer; class SrsFastBuffer;
class SrsPacket; class SrsPacket;
class SrsStream; class SrsBuffer;
class SrsAmf0Object; class SrsAmf0Object;
class SrsAmf0Any; class SrsAmf0Any;
class SrsMessageHeader; class SrsMessageHeader;
@ -152,7 +152,7 @@ public:
* subpacket must override to decode packet from stream. * subpacket must override to decode packet from stream.
* @remark never invoke the super.decode, it always failed. * @remark never invoke the super.decode, it always failed.
*/ */
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
/** /**
@ -176,7 +176,7 @@ protected:
* subpacket can override to encode the payload to stream. * subpacket can override to encode the payload to stream.
* @remark never invoke the super.encode_packet, it always failed. * @remark never invoke the super.encode_packet, it always failed.
*/ */
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -446,7 +446,7 @@ private:
/** /**
* imp for decode_message * imp for decode_message
*/ */
virtual int do_decode_message(SrsMessageHeader& header, SrsStream* stream, SrsPacket** ppacket); virtual int do_decode_message(SrsMessageHeader& header, SrsBuffer* stream, SrsPacket** ppacket);
/** /**
* recv bytes oriented RTMP message from protocol stack. * recv bytes oriented RTMP message from protocol stack.
* return error if error occur and nerver set the pmsg, * return error if error occur and nerver set the pmsg,
@ -1052,14 +1052,14 @@ public:
virtual ~SrsConnectAppPacket(); virtual ~SrsConnectAppPacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
virtual int get_prefer_cid(); virtual int get_prefer_cid();
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
* response for SrsConnectAppPacket. * response for SrsConnectAppPacket.
@ -1091,14 +1091,14 @@ public:
virtual ~SrsConnectAppResPacket(); virtual ~SrsConnectAppResPacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
virtual int get_prefer_cid(); virtual int get_prefer_cid();
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -1134,14 +1134,14 @@ public:
virtual ~SrsCallPacket(); virtual ~SrsCallPacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
virtual int get_prefer_cid(); virtual int get_prefer_cid();
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
* response for SrsCallPacket. * response for SrsCallPacket.
@ -1176,7 +1176,7 @@ public:
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -1207,14 +1207,14 @@ public:
virtual ~SrsCreateStreamPacket(); virtual ~SrsCreateStreamPacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
virtual int get_prefer_cid(); virtual int get_prefer_cid();
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
* response for SrsCreateStreamPacket. * response for SrsCreateStreamPacket.
@ -1244,14 +1244,14 @@ public:
virtual ~SrsCreateStreamResPacket(); virtual ~SrsCreateStreamResPacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
virtual int get_prefer_cid(); virtual int get_prefer_cid();
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -1278,7 +1278,7 @@ public:
virtual ~SrsCloseStreamPacket(); virtual ~SrsCloseStreamPacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
}; };
/** /**
@ -1309,14 +1309,14 @@ public:
virtual ~SrsFMLEStartPacket(); virtual ~SrsFMLEStartPacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
virtual int get_prefer_cid(); virtual int get_prefer_cid();
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
// factory method to create specified FMLE packet. // factory method to create specified FMLE packet.
public: public:
static SrsFMLEStartPacket* create_release_stream(std::string stream); static SrsFMLEStartPacket* create_release_stream(std::string stream);
@ -1351,14 +1351,14 @@ public:
virtual ~SrsFMLEStartResPacket(); virtual ~SrsFMLEStartResPacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
virtual int get_prefer_cid(); virtual int get_prefer_cid();
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -1406,14 +1406,14 @@ public:
virtual ~SrsPublishPacket(); virtual ~SrsPublishPacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
virtual int get_prefer_cid(); virtual int get_prefer_cid();
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -1453,7 +1453,7 @@ public:
virtual ~SrsPausePacket(); virtual ~SrsPausePacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
}; };
/** /**
@ -1525,14 +1525,14 @@ public:
virtual ~SrsPlayPacket(); virtual ~SrsPlayPacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
virtual int get_prefer_cid(); virtual int get_prefer_cid();
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -1572,7 +1572,7 @@ public:
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -1603,7 +1603,7 @@ public:
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -1641,7 +1641,7 @@ public:
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -1679,14 +1679,14 @@ public:
virtual ~SrsBandwidthPacket(); virtual ~SrsBandwidthPacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
virtual int get_prefer_cid(); virtual int get_prefer_cid();
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
// help function for bandwidth packet. // help function for bandwidth packet.
public: public:
virtual bool is_start_play(); virtual bool is_start_play();
@ -1741,7 +1741,7 @@ public:
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -1776,7 +1776,7 @@ public:
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -1801,14 +1801,14 @@ public:
virtual ~SrsOnMetaDataPacket(); virtual ~SrsOnMetaDataPacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
virtual int get_prefer_cid(); virtual int get_prefer_cid();
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -1825,14 +1825,14 @@ public:
virtual ~SrsSetWindowAckSizePacket(); virtual ~SrsSetWindowAckSizePacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
virtual int get_prefer_cid(); virtual int get_prefer_cid();
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -1853,7 +1853,7 @@ public:
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
/** /**
@ -1874,14 +1874,14 @@ public:
virtual ~SrsSetChunkSizePacket(); virtual ~SrsSetChunkSizePacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
virtual int get_prefer_cid(); virtual int get_prefer_cid();
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
// 5.6. Set Peer Bandwidth (6) // 5.6. Set Peer Bandwidth (6)
@ -1914,7 +1914,7 @@ public:
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
// 3.7. User Control message // 3.7. User Control message
@ -2042,14 +2042,14 @@ public:
virtual ~SrsUserControlPacket(); virtual ~SrsUserControlPacket();
// decode functions for concrete packet to override. // decode functions for concrete packet to override.
public: public:
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
// encode functions for concrete packet to override. // encode functions for concrete packet to override.
public: public:
virtual int get_prefer_cid(); virtual int get_prefer_cid();
virtual int get_message_type(); virtual int get_message_type();
protected: protected:
virtual int get_size(); virtual int get_size();
virtual int encode_packet(SrsStream* stream); virtual int encode_packet(SrsBuffer* stream);
}; };
#endif #endif

View file

@ -175,7 +175,7 @@ void SrsRtpPacket::reap(SrsRtpPacket* src)
src->audio_samples = NULL; src->audio_samples = NULL;
} }
int SrsRtpPacket::decode(SrsStream* stream) int SrsRtpPacket::decode(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -212,7 +212,7 @@ int SrsRtpPacket::decode(SrsStream* stream)
return ret; return ret;
} }
int SrsRtpPacket::decode_97(SrsStream* stream) int SrsRtpPacket::decode_97(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;
@ -273,7 +273,7 @@ int SrsRtpPacket::decode_97(SrsStream* stream)
return ret; return ret;
} }
int SrsRtpPacket::decode_96(SrsStream* stream) int SrsRtpPacket::decode_96(SrsBuffer* stream)
{ {
int ret = ERROR_SUCCESS; int ret = ERROR_SUCCESS;

View file

@ -37,7 +37,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#ifdef SRS_AUTO_STREAM_CASTER #ifdef SRS_AUTO_STREAM_CASTER
class SrsStream; class SrsBuffer;
class SrsSimpleBuffer; class SrsSimpleBuffer;
class SrsCodecSample; class SrsCodecSample;
class ISrsProtocolReaderWriter; class ISrsProtocolReaderWriter;
@ -313,10 +313,10 @@ public:
/** /**
* decode rtp packet from stream. * decode rtp packet from stream.
*/ */
virtual int decode(SrsStream* stream); virtual int decode(SrsBuffer* stream);
private: private:
virtual int decode_97(SrsStream* stream); virtual int decode_97(SrsBuffer* stream);
virtual int decode_96(SrsStream* stream); virtual int decode_96(SrsBuffer* stream);
}; };
/** /**

View file

@ -79,8 +79,8 @@ VOID TEST(ProtocolAMF0Test, ScenarioMain)
ASSERT_GT(nb_bytes, 0); ASSERT_GT(nb_bytes, 0);
bytes = new char[nb_bytes]; bytes = new char[nb_bytes];
// use SrsStream to write props/info to binary buf. // use SrsBuffer to write props/info to binary buf.
SrsStream s; SrsBuffer s;
EXPECT_EQ(ERROR_SUCCESS, s.initialize(bytes, nb_bytes)); EXPECT_EQ(ERROR_SUCCESS, s.initialize(bytes, nb_bytes));
EXPECT_EQ(ERROR_SUCCESS, props->write(&s)); EXPECT_EQ(ERROR_SUCCESS, props->write(&s));
EXPECT_EQ(ERROR_SUCCESS, info->write(&s)); EXPECT_EQ(ERROR_SUCCESS, info->write(&s));
@ -97,8 +97,8 @@ VOID TEST(ProtocolAMF0Test, ScenarioMain)
if (true) { if (true) {
ASSERT_TRUE(NULL != bytes); ASSERT_TRUE(NULL != bytes);
// use SrsStream to assist amf0 object to read from bytes. // use SrsBuffer to assist amf0 object to read from bytes.
SrsStream s; SrsBuffer s;
EXPECT_EQ(ERROR_SUCCESS, s.initialize(bytes, nb_bytes)); EXPECT_EQ(ERROR_SUCCESS, s.initialize(bytes, nb_bytes));
// decoding // decoding
@ -148,8 +148,8 @@ VOID TEST(ProtocolAMF0Test, ScenarioMain)
if (true) { if (true) {
ASSERT_TRUE(NULL != bytes); ASSERT_TRUE(NULL != bytes);
// use SrsStream to assist amf0 object to read from bytes. // use SrsBuffer to assist amf0 object to read from bytes.
SrsStream s; SrsBuffer s;
EXPECT_EQ(ERROR_SUCCESS, s.initialize(bytes, nb_bytes)); EXPECT_EQ(ERROR_SUCCESS, s.initialize(bytes, nb_bytes));
// decoding a amf0 any, for user donot know // decoding a amf0 any, for user donot know
@ -526,7 +526,7 @@ VOID TEST(ProtocolAMF0Test, ApiAnyElem)
*/ */
VOID TEST(ProtocolAMF0Test, ApiAnyIO) VOID TEST(ProtocolAMF0Test, ApiAnyIO)
{ {
SrsStream s; SrsBuffer s;
SrsAmf0Any* o = NULL; SrsAmf0Any* o = NULL;
char buf[1024]; char buf[1024];
@ -839,7 +839,7 @@ VOID TEST(ProtocolAMF0Test, ApiAnyIO)
*/ */
VOID TEST(ProtocolAMF0Test, ApiAnyTypeAssert) VOID TEST(ProtocolAMF0Test, ApiAnyTypeAssert)
{ {
SrsStream s; SrsBuffer s;
SrsAmf0Any* o = NULL; SrsAmf0Any* o = NULL;
char buf[1024]; char buf[1024];
@ -1092,7 +1092,7 @@ VOID TEST(ProtocolAMF0Test, ApiEcmaArrayProps)
*/ */
VOID TEST(ProtocolAMF0Test, ApiStrictArray) VOID TEST(ProtocolAMF0Test, ApiStrictArray)
{ {
SrsStream s; SrsBuffer s;
char buf[1024]; char buf[1024];
memset(buf, 0, sizeof(buf)); memset(buf, 0, sizeof(buf));

View file

@ -962,7 +962,7 @@ VOID TEST(KernelFlvTest, FlvVSDecoderSeek)
*/ */
VOID TEST(KernelStreamTest, StreamInitialize) VOID TEST(KernelStreamTest, StreamInitialize)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024));
@ -976,7 +976,7 @@ VOID TEST(KernelStreamTest, StreamInitialize)
*/ */
VOID TEST(KernelStreamTest, StreamData) VOID TEST(KernelStreamTest, StreamData)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(s.data() == NULL); EXPECT_TRUE(s.data() == NULL);
@ -989,7 +989,7 @@ VOID TEST(KernelStreamTest, StreamData)
*/ */
VOID TEST(KernelStreamTest, StreamSize) VOID TEST(KernelStreamTest, StreamSize)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(s.size() == 0); EXPECT_TRUE(s.size() == 0);
@ -1002,7 +1002,7 @@ VOID TEST(KernelStreamTest, StreamSize)
*/ */
VOID TEST(KernelStreamTest, StreamPos) VOID TEST(KernelStreamTest, StreamPos)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(s.pos() == 0); EXPECT_TRUE(s.pos() == 0);
@ -1018,7 +1018,7 @@ VOID TEST(KernelStreamTest, StreamPos)
*/ */
VOID TEST(KernelStreamTest, StreamEmpty) VOID TEST(KernelStreamTest, StreamEmpty)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(s.empty()); EXPECT_TRUE(s.empty());
@ -1034,7 +1034,7 @@ VOID TEST(KernelStreamTest, StreamEmpty)
*/ */
VOID TEST(KernelStreamTest, StreamRequire) VOID TEST(KernelStreamTest, StreamRequire)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_FALSE(s.require(1)); EXPECT_FALSE(s.require(1));
@ -1054,7 +1054,7 @@ VOID TEST(KernelStreamTest, StreamRequire)
*/ */
VOID TEST(KernelStreamTest, StreamSkip) VOID TEST(KernelStreamTest, StreamSkip)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024));
@ -1072,7 +1072,7 @@ VOID TEST(KernelStreamTest, StreamSkip)
*/ */
VOID TEST(KernelStreamTest, StreamRead1Bytes) VOID TEST(KernelStreamTest, StreamRead1Bytes)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024));
@ -1093,7 +1093,7 @@ VOID TEST(KernelStreamTest, StreamRead1Bytes)
*/ */
VOID TEST(KernelStreamTest, StreamRead2Bytes) VOID TEST(KernelStreamTest, StreamRead2Bytes)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024));
@ -1122,7 +1122,7 @@ VOID TEST(KernelStreamTest, StreamRead2Bytes)
*/ */
VOID TEST(KernelStreamTest, StreamRead3Bytes) VOID TEST(KernelStreamTest, StreamRead3Bytes)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024));
@ -1151,7 +1151,7 @@ VOID TEST(KernelStreamTest, StreamRead3Bytes)
*/ */
VOID TEST(KernelStreamTest, StreamRead4Bytes) VOID TEST(KernelStreamTest, StreamRead4Bytes)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024));
@ -1180,7 +1180,7 @@ VOID TEST(KernelStreamTest, StreamRead4Bytes)
*/ */
VOID TEST(KernelStreamTest, StreamRead8Bytes) VOID TEST(KernelStreamTest, StreamRead8Bytes)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024));
@ -1219,7 +1219,7 @@ VOID TEST(KernelStreamTest, StreamRead8Bytes)
*/ */
VOID TEST(KernelStreamTest, StreamReadString) VOID TEST(KernelStreamTest, StreamReadString)
{ {
SrsStream s; SrsBuffer s;
char data[] = "Hello, world!"; char data[] = "Hello, world!";
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, sizeof(data) - 1)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, sizeof(data) - 1));
@ -1242,7 +1242,7 @@ VOID TEST(KernelStreamTest, StreamReadString)
*/ */
VOID TEST(KernelStreamTest, StreamReadBytes) VOID TEST(KernelStreamTest, StreamReadBytes)
{ {
SrsStream s; SrsBuffer s;
char data[] = "Hello, world!"; char data[] = "Hello, world!";
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, sizeof(data) - 1)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, sizeof(data) - 1));
@ -1269,7 +1269,7 @@ VOID TEST(KernelStreamTest, StreamReadBytes)
*/ */
VOID TEST(KernelStreamTest, StreamWrite1Bytes) VOID TEST(KernelStreamTest, StreamWrite1Bytes)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024));
@ -1290,7 +1290,7 @@ VOID TEST(KernelStreamTest, StreamWrite1Bytes)
*/ */
VOID TEST(KernelStreamTest, StreamWrite2Bytes) VOID TEST(KernelStreamTest, StreamWrite2Bytes)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024));
@ -1314,7 +1314,7 @@ VOID TEST(KernelStreamTest, StreamWrite2Bytes)
*/ */
VOID TEST(KernelStreamTest, StreamWrite3Bytes) VOID TEST(KernelStreamTest, StreamWrite3Bytes)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024));
@ -1337,7 +1337,7 @@ VOID TEST(KernelStreamTest, StreamWrite3Bytes)
*/ */
VOID TEST(KernelStreamTest, StreamWrite4Bytes) VOID TEST(KernelStreamTest, StreamWrite4Bytes)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024));
@ -1359,7 +1359,7 @@ VOID TEST(KernelStreamTest, StreamWrite4Bytes)
*/ */
VOID TEST(KernelStreamTest, StreamWrite8Bytes) VOID TEST(KernelStreamTest, StreamWrite8Bytes)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024));
@ -1380,7 +1380,7 @@ VOID TEST(KernelStreamTest, StreamWrite8Bytes)
*/ */
VOID TEST(KernelStreamTest, StreamWriteString) VOID TEST(KernelStreamTest, StreamWriteString)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024));
@ -1408,7 +1408,7 @@ VOID TEST(KernelStreamTest, StreamWriteString)
*/ */
VOID TEST(KernelStreamTest, StreamWriteBytes) VOID TEST(KernelStreamTest, StreamWriteBytes)
{ {
SrsStream s; SrsBuffer s;
char data[1024]; char data[1024];
EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024)); EXPECT_TRUE(ERROR_SUCCESS == s.initialize(data, 1024));