mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
for #738, add mp4 demuxer to librtmp
This commit is contained in:
parent
3f3e98e9db
commit
011ac4f6a9
2 changed files with 36 additions and 0 deletions
|
@ -1545,6 +1545,31 @@ srs_bool srs_h264_startswith_annexb(char* h264_raw_data, int h264_raw_size, int*
|
||||||
return srs_avc_startswith_annexb(&stream, pnb_start_code);
|
return srs_avc_startswith_annexb(&stream, pnb_start_code);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
struct Mp4Context
|
||||||
|
{
|
||||||
|
SrsFileReader reader;
|
||||||
|
};
|
||||||
|
|
||||||
|
srs_mp4_t srs_mp4_open_read(const char* file)
|
||||||
|
{
|
||||||
|
int ret = ERROR_SUCCESS;
|
||||||
|
|
||||||
|
Mp4Context* mp4 = new Mp4Context();
|
||||||
|
|
||||||
|
if ((ret = mp4->reader.open(file)) != ERROR_SUCCESS) {
|
||||||
|
srs_freep(mp4);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
return mp4;
|
||||||
|
}
|
||||||
|
|
||||||
|
void srs_mp4_close(srs_mp4_t mp4)
|
||||||
|
{
|
||||||
|
Mp4Context* context = (Mp4Context*)mp4;
|
||||||
|
srs_freep(context);
|
||||||
|
}
|
||||||
|
|
||||||
struct FlvContext
|
struct FlvContext
|
||||||
{
|
{
|
||||||
SrsFileReader reader;
|
SrsFileReader reader;
|
||||||
|
|
|
@ -502,6 +502,17 @@ extern srs_bool srs_h264_startswith_annexb(
|
||||||
int* pnb_start_code
|
int* pnb_start_code
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/*************************************************************
|
||||||
|
*************************************************************
|
||||||
|
* MP4 muxer and demuxer.
|
||||||
|
* @example /trunk/research/librtmp/srs_ingest_mp4.c
|
||||||
|
*************************************************************
|
||||||
|
*************************************************************/
|
||||||
|
typedef void* srs_mp4_t;
|
||||||
|
/* Open mp4 file for muxer(write) or demuxer(read). */
|
||||||
|
extern srs_mp4_t srs_mp4_open_read(const char* file);
|
||||||
|
extern void srs_mp4_close(srs_mp4_t mp4);
|
||||||
|
|
||||||
/*************************************************************
|
/*************************************************************
|
||||||
**************************************************************
|
**************************************************************
|
||||||
* flv codec
|
* flv codec
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue