Initial commit: TXW82x FPV v2.7.0.7-42229 SDK + project sources
This commit is contained in:
66
sdk/app/spook/rtsp_common.h
Normal file
66
sdk/app/spook/rtsp_common.h
Normal file
@@ -0,0 +1,66 @@
|
||||
#ifndef __RTSP_COMMON_H
|
||||
#define __RTSP_COMMON_H
|
||||
#include "spook_config.h"
|
||||
#include "frame.h"
|
||||
#include "encoder-audio.h"
|
||||
#include "encoder-jpeg.h"
|
||||
#include "rtp-audio.h"
|
||||
#include "rtp.h"
|
||||
#include "stream.h"
|
||||
#include "rtp_media.h"
|
||||
struct rtsp_session;
|
||||
struct rtsp_track;
|
||||
struct rtsp_source;
|
||||
|
||||
|
||||
typedef void (*rtsp_creat)(struct rtsp_source *source,void *priv );
|
||||
typedef void (*rtsp_release)(struct rtsp_source *source );
|
||||
typedef void (*rtsp_play_fn)(struct rtsp_source *source );
|
||||
typedef struct session *(*rtsp_path_register)( char *path, void *d );
|
||||
|
||||
|
||||
struct rtsp_session {
|
||||
struct rtsp_session *next;
|
||||
struct rtsp_session *prev;
|
||||
struct session *sess;
|
||||
struct rtsp_source *source;
|
||||
char path[64];
|
||||
int playing;
|
||||
int closed;
|
||||
};
|
||||
|
||||
struct rtsp_track {
|
||||
int index;
|
||||
struct rtsp_source *source;
|
||||
struct stream_destination *stream;
|
||||
int ready;
|
||||
struct rtp_media *rtp;
|
||||
};
|
||||
|
||||
|
||||
struct rtsp_source {
|
||||
struct rtsp_session *sess_list;
|
||||
struct rtsp_track track[MAX_TRACKS];
|
||||
struct os_task handle;
|
||||
void *signal;
|
||||
struct rtp_node live_node;
|
||||
int head_len; //保留头部的长度
|
||||
//创建线程以及资源的回调函数,参数就是source
|
||||
rtsp_creat creat;
|
||||
//释放线程以及资源的回调函数,参数就是source
|
||||
rtsp_release release;
|
||||
rtsp_play_fn play;
|
||||
void *priv;
|
||||
};
|
||||
|
||||
|
||||
void *rtsp_start_block(void);
|
||||
int rtsp_end_block( void *d );
|
||||
int set_video_track( const char *name, void *d );
|
||||
int set_video_h264_track( const char *name, void *d );
|
||||
int set_audio_track( char *name, void *d );
|
||||
struct session *rtsp_open( char *path, void *d );
|
||||
void register_live_fn(struct rtsp_source *source,rtsp_creat creat,rtsp_release release,rtsp_play_fn play);
|
||||
int rtsp_set_path( const char *path, void *d,rtsp_path_register register_fn );
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user