正在显示
3 个修改的文件
包含
56 行增加
和
2 行删除
| @@ -156,7 +156,7 @@ ModuleLibIncs=(${SRS_OBJS_DIR}) | @@ -156,7 +156,7 @@ ModuleLibIncs=(${SRS_OBJS_DIR}) | ||
| 156 | MODULE_FILES=("srs_kernel_error" "srs_kernel_log" "srs_kernel_buffer" | 156 | MODULE_FILES=("srs_kernel_error" "srs_kernel_log" "srs_kernel_buffer" |
| 157 | "srs_kernel_utility" "srs_kernel_flv" "srs_kernel_codec" "srs_kernel_file" | 157 | "srs_kernel_utility" "srs_kernel_flv" "srs_kernel_codec" "srs_kernel_file" |
| 158 | "srs_kernel_consts" "srs_kernel_aac" "srs_kernel_mp3" "srs_kernel_ts" | 158 | "srs_kernel_consts" "srs_kernel_aac" "srs_kernel_mp3" "srs_kernel_ts" |
| 159 | - "srs_kernel_stream" "srs_kernel_balance") | 159 | + "srs_kernel_stream" "srs_kernel_balance" "srs_kernel_mp4") |
| 160 | KERNEL_INCS="src/kernel"; MODULE_DIR=${KERNEL_INCS} . auto/modules.sh | 160 | KERNEL_INCS="src/kernel"; MODULE_DIR=${KERNEL_INCS} . auto/modules.sh |
| 161 | KERNEL_OBJS="${MODULE_OBJS[@]}" | 161 | KERNEL_OBJS="${MODULE_OBJS[@]}" |
| 162 | # | 162 | # |
| @@ -167,7 +167,7 @@ ModuleLibIncs=(${SRS_OBJS_DIR} ${LibSSLRoot}) | @@ -167,7 +167,7 @@ ModuleLibIncs=(${SRS_OBJS_DIR} ${LibSSLRoot}) | ||
| 167 | MODULE_FILES=("srs_protocol_amf0" "srs_protocol_io" "srs_rtmp_stack" | 167 | MODULE_FILES=("srs_protocol_amf0" "srs_protocol_io" "srs_rtmp_stack" |
| 168 | "srs_rtmp_handshake" "srs_protocol_utility" "srs_rtmp_msg_array" "srs_protocol_stream" | 168 | "srs_rtmp_handshake" "srs_protocol_utility" "srs_rtmp_msg_array" "srs_protocol_stream" |
| 169 | "srs_raw_avc" "srs_rtsp_stack" "srs_http_stack" "srs_protocol_kbps" "srs_protocol_json" | 169 | "srs_raw_avc" "srs_rtsp_stack" "srs_http_stack" "srs_protocol_kbps" "srs_protocol_json" |
| 170 | - "srs_kafka_stack" "srs_kernel_mp4") | 170 | + "srs_kafka_stack") |
| 171 | PROTOCOL_INCS="src/protocol"; MODULE_DIR=${PROTOCOL_INCS} . auto/modules.sh | 171 | PROTOCOL_INCS="src/protocol"; MODULE_DIR=${PROTOCOL_INCS} . auto/modules.sh |
| 172 | PROTOCOL_OBJS="${MODULE_OBJS[@]}" | 172 | PROTOCOL_OBJS="${MODULE_OBJS[@]}" |
| 173 | # | 173 | # |
| @@ -23,3 +23,23 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | @@ -23,3 +23,23 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
| 23 | 23 | ||
| 24 | #include <srs_kernel_mp4.hpp> | 24 | #include <srs_kernel_mp4.hpp> |
| 25 | 25 | ||
| 26 | +SrsMp4Box::SrsMp4Box(uint32_t bt) | ||
| 27 | +{ | ||
| 28 | + size = 0; | ||
| 29 | + type = bt; | ||
| 30 | +} | ||
| 31 | + | ||
| 32 | +SrsMp4Box::~SrsMp4Box() | ||
| 33 | +{ | ||
| 34 | +} | ||
| 35 | + | ||
| 36 | +SrsMp4FullBox::SrsMp4FullBox(uint32_t bt, uint8_t v, uint32_t f) : SrsMp4Box(bt) | ||
| 37 | +{ | ||
| 38 | + version = v; | ||
| 39 | + flags = f; | ||
| 40 | +} | ||
| 41 | + | ||
| 42 | +SrsMp4FullBox::~SrsMp4FullBox() | ||
| 43 | +{ | ||
| 44 | +} | ||
| 45 | + |
| @@ -29,5 +29,39 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | @@ -29,5 +29,39 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
| 29 | */ | 29 | */ |
| 30 | #include <srs_core.hpp> | 30 | #include <srs_core.hpp> |
| 31 | 31 | ||
| 32 | +/** | ||
| 33 | + * 4.2 Object Structure | ||
| 34 | + * ISO_IEC_14496-12-base-format-2012.pdf, page 16 | ||
| 35 | + */ | ||
| 36 | +class SrsMp4Box | ||
| 37 | +{ | ||
| 38 | +public: | ||
| 39 | + // if size is 1 then the actual size is in the field largesize; | ||
| 40 | + // if size is 0, then this box is the last one in the file, and its contents | ||
| 41 | + // extend to the end of the file (normally only used for a Media Data Box) | ||
| 42 | + uint32_t size; | ||
| 43 | + uint32_t type; | ||
| 44 | +public: | ||
| 45 | + SrsMp4Box(uint32_t bt); | ||
| 46 | + virtual ~SrsMp4Box(); | ||
| 47 | +}; | ||
| 48 | + | ||
| 49 | +/** | ||
| 50 | + * 4.2 Object Structure | ||
| 51 | + * ISO_IEC_14496-12-base-format-2012.pdf, page 16 | ||
| 52 | + */ | ||
| 53 | +class SrsMp4FullBox : public SrsMp4Box | ||
| 54 | +{ | ||
| 55 | +public: | ||
| 56 | + // an integer that specifies the version of this format of the box. | ||
| 57 | + uint8_t version; | ||
| 58 | + // a map of flags | ||
| 59 | + uint32_t flags; | ||
| 60 | +public: | ||
| 61 | + SrsMp4FullBox(uint32_t bt, uint8_t v, uint32_t f); | ||
| 62 | + virtual ~SrsMp4FullBox(); | ||
| 63 | +}; | ||
| 64 | + | ||
| 65 | + | ||
| 32 | #endif | 66 | #endif |
| 33 | 67 |
-
请 注册 或 登录 后发表评论