正在显示
2 个修改的文件
包含
26 行增加
和
0 行删除
trunk/src/app/srs_app_http_stream.cpp
100644 → 100755
| @@ -79,6 +79,17 @@ SrsBufferCache::~SrsBufferCache() | @@ -79,6 +79,17 @@ SrsBufferCache::~SrsBufferCache() | ||
| 79 | srs_freep(req); | 79 | srs_freep(req); |
| 80 | } | 80 | } |
| 81 | 81 | ||
| 82 | +int SrsBufferCache::update(SrsSource* s, SrsRequest* r) | ||
| 83 | +{ | ||
| 84 | + int ret = ERROR_SUCCESS; | ||
| 85 | + | ||
| 86 | + srs_freep(req); | ||
| 87 | + req = r->copy(); | ||
| 88 | + source = s; | ||
| 89 | + | ||
| 90 | + return ret; | ||
| 91 | +} | ||
| 92 | + | ||
| 82 | int SrsBufferCache::start() | 93 | int SrsBufferCache::start() |
| 83 | { | 94 | { |
| 84 | return pthread->start(); | 95 | return pthread->start(); |
| @@ -452,6 +463,17 @@ SrsLiveStream::~SrsLiveStream() | @@ -452,6 +463,17 @@ SrsLiveStream::~SrsLiveStream() | ||
| 452 | srs_freep(req); | 463 | srs_freep(req); |
| 453 | } | 464 | } |
| 454 | 465 | ||
| 466 | +int SrsLiveStream::update(SrsSource* s, SrsRequest* r) | ||
| 467 | +{ | ||
| 468 | + int ret = ERROR_SUCCESS; | ||
| 469 | + | ||
| 470 | + srs_freep(req); | ||
| 471 | + source = s; | ||
| 472 | + req = r->copy(); | ||
| 473 | + | ||
| 474 | + return ret; | ||
| 475 | +} | ||
| 476 | + | ||
| 455 | int SrsLiveStream::serve_http(ISrsHttpResponseWriter* w, ISrsHttpMessage* r) | 477 | int SrsLiveStream::serve_http(ISrsHttpResponseWriter* w, ISrsHttpMessage* r) |
| 456 | { | 478 | { |
| 457 | int ret = ERROR_SUCCESS; | 479 | int ret = ERROR_SUCCESS; |
| @@ -840,6 +862,8 @@ int SrsHttpStreamServer::http_mount(SrsSource* s, SrsRequest* r) | @@ -840,6 +862,8 @@ int SrsHttpStreamServer::http_mount(SrsSource* s, SrsRequest* r) | ||
| 840 | srs_trace("http: mount flv stream for vhost=%s, mount=%s", sid.c_str(), mount.c_str()); | 862 | srs_trace("http: mount flv stream for vhost=%s, mount=%s", sid.c_str(), mount.c_str()); |
| 841 | } else { | 863 | } else { |
| 842 | entry = sflvs[sid]; | 864 | entry = sflvs[sid]; |
| 865 | + entry->stream->update(s, r); | ||
| 866 | + entry->cache->update(s, r); | ||
| 843 | } | 867 | } |
| 844 | 868 | ||
| 845 | if (entry->stream) { | 869 | if (entry->stream) { |
trunk/src/app/srs_app_http_stream.hpp
100644 → 100755
| @@ -51,6 +51,7 @@ private: | @@ -51,6 +51,7 @@ private: | ||
| 51 | public: | 51 | public: |
| 52 | SrsBufferCache(SrsSource* s, SrsRequest* r); | 52 | SrsBufferCache(SrsSource* s, SrsRequest* r); |
| 53 | virtual ~SrsBufferCache(); | 53 | virtual ~SrsBufferCache(); |
| 54 | + virtual int update(SrsSource* s, SrsRequest* r); | ||
| 54 | public: | 55 | public: |
| 55 | virtual int start(); | 56 | virtual int start(); |
| 56 | virtual int dump_cache(SrsConsumer* consumer, SrsRtmpJitterAlgorithm jitter); | 57 | virtual int dump_cache(SrsConsumer* consumer, SrsRtmpJitterAlgorithm jitter); |
| @@ -227,6 +228,7 @@ private: | @@ -227,6 +228,7 @@ private: | ||
| 227 | public: | 228 | public: |
| 228 | SrsLiveStream(SrsSource* s, SrsRequest* r, SrsBufferCache* c); | 229 | SrsLiveStream(SrsSource* s, SrsRequest* r, SrsBufferCache* c); |
| 229 | virtual ~SrsLiveStream(); | 230 | virtual ~SrsLiveStream(); |
| 231 | + virtual int update(SrsSource* s, SrsRequest* r); | ||
| 230 | public: | 232 | public: |
| 231 | virtual int serve_http(ISrsHttpResponseWriter* w, ISrsHttpMessage* r); | 233 | virtual int serve_http(ISrsHttpResponseWriter* w, ISrsHttpMessage* r); |
| 232 | private: | 234 | private: |
-
请 注册 或 登录 后发表评论