1 /* 2 * This file was ported to MPlayer from xine CVS sdpplin.h,v 1.1 2002/12/24 01:30:22 3 */ 4 5 /* 6 * Copyright (C) 2002 the xine project 7 * 8 * This file is part of xine, a free video player. 9 * 10 * xine is free software; you can redistribute it and/or modify 11 * it under the terms of the GNU General Public License as published by 12 * the Free Software Foundation; either version 2 of the License, or 13 * (at your option) any later version. 14 * 15 * xine is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU General Public License for more details. 19 * 20 * You should have received a copy of the GNU General Public License 21 * along with this program; if not, write to the Free Software 22 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA 23 * 24 * 25 * sdp/sdpplin parser. 26 * 27 */ 28 29 #ifndef MPLAYER_SDPPLIN_H 30 #define MPLAYER_SDPPLIN_H 31 32 #include "rmff.h" 33 #include "stream/librtsp/rtsp.h" 34 35 typedef struct { 36 37 char *id; 38 char *bandwidth; 39 40 int stream_id; 41 char *range; 42 char *length; 43 char *rtpmap; 44 char *mimetype; 45 int min_switch_overlap; 46 int start_time; 47 int end_one_rule_end_all; 48 int avg_bit_rate; 49 int max_bit_rate; 50 int avg_packet_size; 51 int max_packet_size; 52 int end_time; 53 int seek_greater_on_switch; 54 int preroll; 55 56 int duration; 57 char *stream_name; 58 int stream_name_size; 59 char *mime_type; 60 int mime_type_size; 61 char *mlti_data; 62 int mlti_data_size; 63 int rmff_flags_length; 64 char *rmff_flags; 65 int asm_rule_book_length; 66 char *asm_rule_book; 67 68 } sdpplin_stream_t; 69 70 typedef struct { 71 72 int sdp_version, sdpplin_version; 73 char *owner; 74 char *session_name; 75 char *session_info; 76 char *uri; 77 char *email; 78 char *phone; 79 char *connection; 80 char *bandwidth; 81 82 int flags; 83 int is_real_data_type; 84 int stream_count; 85 char *title; 86 char *author; 87 char *copyright; 88 char *keywords; 89 int asm_rule_book_length; 90 char *asm_rule_book; 91 char *abstract; 92 char *range; 93 int avg_bit_rate; 94 int max_bit_rate; 95 int avg_packet_size; 96 int max_packet_size; 97 int preroll; 98 int duration; 99 100 sdpplin_stream_t **stream; 101 102 } sdpplin_t; 103 104 sdpplin_t *sdpplin_parse(char *data); 105 106 void sdpplin_free(sdpplin_t *description); 107 108 #endif /* MPLAYER_SDPPLIN_H */ 109