00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 #ifndef AVFORMAT_RDT_H
00023 #define AVFORMAT_RDT_H
00024 
00025 #include <stdint.h>
00026 #include "avformat.h"
00027 #include "rtpdec.h"
00028 
00029 typedef struct RDTDemuxContext RDTDemuxContext;
00030 
00041 RDTDemuxContext *ff_rdt_parse_open(AVFormatContext *ic,
00042                                    int first_stream_of_set_idx,
00043                                    void *priv_data,
00044                                    RTPDynamicProtocolHandler *handler);
00045 void ff_rdt_parse_close(RDTDemuxContext *s);
00046 
00059 void ff_rdt_calc_response_and_checksum(char response[41], char chksum[9],
00060                                        const char *challenge);
00061 
00065 void av_register_rdt_dynamic_payload_handlers(void);
00066 
00075 void ff_rdt_subscribe_rule(char *cmd, int size,
00076                            int stream_nr, int rule_nr);
00077 
00090 int ff_rdt_parse_header(const uint8_t *buf, int len,
00091                         int *pset_id, int *pseq_no, int *pstream_id,
00092                         int *pis_keyframe, uint32_t *ptimestamp);
00093 
00098 int ff_rdt_parse_packet(RDTDemuxContext *s, AVPacket *pkt,
00099                         uint8_t **buf, int len);
00100 
00109 void ff_real_parse_sdp_a_line(AVFormatContext *s, int stream_index,
00110                               const char *buf);
00111 
00112 #endif