正在显示
6 个修改的文件
包含
29 行增加
和
14 行删除
| @@ -134,7 +134,7 @@ MODULE_ID="KERNEL" | @@ -134,7 +134,7 @@ MODULE_ID="KERNEL" | ||
| 134 | MODULE_DEPENDS=("CORE") | 134 | MODULE_DEPENDS=("CORE") |
| 135 | ModuleLibIncs=(${SRS_OBJS}) | 135 | ModuleLibIncs=(${SRS_OBJS}) |
| 136 | MODULE_FILES=("srs_kernel_error" "srs_kernel_log" "srs_kernel_reload" "srs_kernel_config" | 136 | MODULE_FILES=("srs_kernel_error" "srs_kernel_log" "srs_kernel_reload" "srs_kernel_config" |
| 137 | - "srs_kernel_stream") | 137 | + "srs_kernel_stream" "srs_kernel_buffer") |
| 138 | MODULE_DIR="src/kernel" . auto/modules.sh | 138 | MODULE_DIR="src/kernel" . auto/modules.sh |
| 139 | KERNEL_OBJS="${MODULE_OBJS[@]}" | 139 | KERNEL_OBJS="${MODULE_OBJS[@]}" |
| 140 | # | 140 | # |
| @@ -144,7 +144,7 @@ MODULE_DEPENDS=("CORE" "KERNEL") | @@ -144,7 +144,7 @@ MODULE_DEPENDS=("CORE" "KERNEL") | ||
| 144 | ModuleLibIncs=(${LibSTRoot} ${LibHttpParserRoot} ${LibSSLRoot} ${SRS_OBJS}) | 144 | ModuleLibIncs=(${LibSTRoot} ${LibHttpParserRoot} ${LibSSLRoot} ${SRS_OBJS}) |
| 145 | MODULE_FILES=("srs_core_server" | 145 | MODULE_FILES=("srs_core_server" |
| 146 | "srs_core_conn" "srs_core_client" | 146 | "srs_core_conn" "srs_core_client" |
| 147 | - "srs_core_rtmp" "srs_core_socket" "srs_core_buffer" | 147 | + "srs_core_rtmp" "srs_core_socket" |
| 148 | "srs_core_protocol" "srs_core_amf0" | 148 | "srs_core_protocol" "srs_core_amf0" |
| 149 | "srs_core_source" "srs_core_codec" | 149 | "srs_core_source" "srs_core_codec" |
| 150 | "srs_core_handshake" "srs_core_pithy_print" | 150 | "srs_core_handshake" "srs_core_pithy_print" |
| @@ -27,7 +27,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | @@ -27,7 +27,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
| 27 | #include <srs_core_amf0.hpp> | 27 | #include <srs_core_amf0.hpp> |
| 28 | #include <srs_kernel_error.hpp> | 28 | #include <srs_kernel_error.hpp> |
| 29 | #include <srs_core_socket.hpp> | 29 | #include <srs_core_socket.hpp> |
| 30 | -#include <srs_core_buffer.hpp> | 30 | +#include <srs_kernel_buffer.hpp> |
| 31 | #include <srs_kernel_stream.hpp> | 31 | #include <srs_kernel_stream.hpp> |
| 32 | #include <srs_core_autofree.hpp> | 32 | #include <srs_core_autofree.hpp> |
| 33 | 33 |
| @@ -31,12 +31,13 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | @@ -31,12 +31,13 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
| 31 | #include <srs_core.hpp> | 31 | #include <srs_core.hpp> |
| 32 | 32 | ||
| 33 | #include <srs_core_st.hpp> | 33 | #include <srs_core_st.hpp> |
| 34 | +#include <srs_kernel_buffer.hpp> | ||
| 34 | 35 | ||
| 35 | /** | 36 | /** |
| 36 | * the socket provides TCP socket over st, | 37 | * the socket provides TCP socket over st, |
| 37 | * that is, the sync socket mechanism. | 38 | * that is, the sync socket mechanism. |
| 38 | */ | 39 | */ |
| 39 | -class SrsSocket | 40 | +class SrsSocket : public ISrsReader |
| 40 | { | 41 | { |
| 41 | private: | 42 | private: |
| 42 | int64_t recv_timeout; | 43 | int64_t recv_timeout; |
| @@ -21,14 +21,21 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | @@ -21,14 +21,21 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | ||
| 21 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | 21 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
| 22 | */ | 22 | */ |
| 23 | 23 | ||
| 24 | -#include <srs_core_buffer.hpp> | 24 | +#include <srs_kernel_buffer.hpp> |
| 25 | 25 | ||
| 26 | #include <srs_kernel_error.hpp> | 26 | #include <srs_kernel_error.hpp> |
| 27 | -#include <srs_core_socket.hpp> | ||
| 28 | #include <srs_kernel_log.hpp> | 27 | #include <srs_kernel_log.hpp> |
| 29 | 28 | ||
| 30 | #define SOCKET_READ_SIZE 4096 | 29 | #define SOCKET_READ_SIZE 4096 |
| 31 | 30 | ||
| 31 | +ISrsReader::ISrsReader() | ||
| 32 | +{ | ||
| 33 | +} | ||
| 34 | + | ||
| 35 | +ISrsReader::~ISrsReader() | ||
| 36 | +{ | ||
| 37 | +} | ||
| 38 | + | ||
| 32 | SrsBuffer::SrsBuffer() | 39 | SrsBuffer::SrsBuffer() |
| 33 | { | 40 | { |
| 34 | } | 41 | } |
| @@ -57,7 +64,7 @@ void SrsBuffer::append(char* bytes, int size) | @@ -57,7 +64,7 @@ void SrsBuffer::append(char* bytes, int size) | ||
| 57 | data.insert(data.end(), bytes, bytes + size); | 64 | data.insert(data.end(), bytes, bytes + size); |
| 58 | } | 65 | } |
| 59 | 66 | ||
| 60 | -int SrsBuffer::ensure_buffer_bytes(SrsSocket* skt, int required_size) | 67 | +int SrsBuffer::ensure_buffer_bytes(ISrsReader* skt, int required_size) |
| 61 | { | 68 | { |
| 62 | int ret = ERROR_SUCCESS; | 69 | int ret = ERROR_SUCCESS; |
| 63 | 70 |
| @@ -21,18 +21,25 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | @@ -21,18 +21,25 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | ||
| 21 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | 21 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
| 22 | */ | 22 | */ |
| 23 | 23 | ||
| 24 | -#ifndef SRS_CORE_BUFFER_HPP | ||
| 25 | -#define SRS_CORE_BUFFER_HPP | 24 | +#ifndef SRS_KERNEL_BUFFER_HPP |
| 25 | +#define SRS_KERNEL_BUFFER_HPP | ||
| 26 | 26 | ||
| 27 | /* | 27 | /* |
| 28 | -#include <srs_core_buffer.hpp> | 28 | +#include <srs_kernel_buffer.hpp> |
| 29 | */ | 29 | */ |
| 30 | 30 | ||
| 31 | #include <srs_core.hpp> | 31 | #include <srs_core.hpp> |
| 32 | 32 | ||
| 33 | #include <vector> | 33 | #include <vector> |
| 34 | 34 | ||
| 35 | -class SrsSocket; | 35 | +class ISrsReader |
| 36 | +{ | ||
| 37 | +public: | ||
| 38 | + ISrsReader(); | ||
| 39 | + virtual ~ISrsReader(); | ||
| 40 | +public: | ||
| 41 | + virtual int read(const void* buf, size_t size, ssize_t* nread) = 0; | ||
| 42 | +}; | ||
| 36 | 43 | ||
| 37 | /** | 44 | /** |
| 38 | * the buffer provices bytes cache for protocol. generally, | 45 | * the buffer provices bytes cache for protocol. generally, |
| @@ -53,7 +60,7 @@ public: | @@ -53,7 +60,7 @@ public: | ||
| 53 | private: | 60 | private: |
| 54 | virtual void append(char* bytes, int size); | 61 | virtual void append(char* bytes, int size); |
| 55 | public: | 62 | public: |
| 56 | - virtual int ensure_buffer_bytes(SrsSocket* skt, int required_size); | 63 | + virtual int ensure_buffer_bytes(ISrsReader* skt, int required_size); |
| 57 | }; | 64 | }; |
| 58 | 65 | ||
| 59 | #endif | 66 | #endif |
| @@ -10,6 +10,8 @@ file | @@ -10,6 +10,8 @@ file | ||
| 10 | ..\core\srs_core_autofree.hpp, | 10 | ..\core\srs_core_autofree.hpp, |
| 11 | ..\core\srs_core_autofree.cpp, | 11 | ..\core\srs_core_autofree.cpp, |
| 12 | kernel readonly separator, | 12 | kernel readonly separator, |
| 13 | + ..\kernel\srs_kernel_buffer.hpp, | ||
| 14 | + ..\kernel\srs_kernel_buffer.cpp, | ||
| 13 | ..\kernel\srs_kernel_config.hpp, | 15 | ..\kernel\srs_kernel_config.hpp, |
| 14 | ..\kernel\srs_kernel_config.cpp, | 16 | ..\kernel\srs_kernel_config.cpp, |
| 15 | ..\kernel\srs_kernel_error.hpp, | 17 | ..\kernel\srs_kernel_error.hpp, |
| @@ -25,8 +27,6 @@ file | @@ -25,8 +27,6 @@ file | ||
| 25 | ..\app\srs_core_amf0.cpp, | 27 | ..\app\srs_core_amf0.cpp, |
| 26 | ..\app\srs_core_bandwidth.hpp, | 28 | ..\app\srs_core_bandwidth.hpp, |
| 27 | ..\app\srs_core_bandwidth.cpp, | 29 | ..\app\srs_core_bandwidth.cpp, |
| 28 | - ..\app\srs_core_buffer.hpp, | ||
| 29 | - ..\app\srs_core_buffer.cpp, | ||
| 30 | ..\app\srs_core_client.hpp, | 30 | ..\app\srs_core_client.hpp, |
| 31 | ..\app\srs_core_client.cpp, | 31 | ..\app\srs_core_client.cpp, |
| 32 | ..\app\srs_core_codec.hpp, | 32 | ..\app\srs_core_codec.hpp, |
-
请 注册 或 登录 后发表评论