#include #include #include #include "librtsp.h" void StreamCallBack(int datatype, int frametype, unsigned char *data, unsigned int datalen, long userdata) { printf("userdata:%ld,datatype:%d, frametype:%d, datalen:%d\n", userdata, datatype, frametype, datalen); static FILE* fp_write = NULL; if (!fp_write) { fp_write = fopen("stream_callback.mp4", "wb+"); } fwrite(data, sizeof(char), datalen, fp_write); } int main(int argc, char *argv[]) { if (argc < 2) { printf("please write rtsp url!!!!!!!!\n"); return -1; } long userdata = 1001; long handle = RTSPSTREAM_Open(argv[1], StreamCallBack, userdata); //µã²¥¿ØÖÆ if (argc >= 3) { sleep(5); //µã²¥²¥·Å¿ØÖÆ RTSPSTREAM_Contrl(handle, HIS_VIDEO_CTRL_PAUSE, 0); sleep(5); //µã²¥²¥·Å¿ØÖÆ RTSPSTREAM_Contrl(handle, HIS_VIDEO_CTRL_PLAY, 0); sleep(5); //µã²¥Âý·Å¿ØÖÆ RTSPSTREAM_Contrl(handle, HIS_VIDEO_CTRL_SLOW, 4); sleep(5); //µã²¥¿ì·Å¿ØÖÆ RTSPSTREAM_Contrl(handle, HIS_VIDEO_CTRL_FAST, 4); sleep(5); //µã²¥Ìø×ª¿ØÖÆ RTSPSTREAM_Contrl(handle, HIS_VIDEO_CTRL_JUMP, 600); } sleep(20); RTSPSTREAM_Close(handle); return 0; }