00001 /* 00002 * Copyright (C) 2002-2003 the xine project 00003 * 00004 * This file is part of xine, a free video player. 00005 * 00006 * xine is free software; you can redistribute it and/or modify 00007 * it under the terms of the GNU General Public License as published by 00008 * the Free Software Foundation; either version 2 of the License, or 00009 * (at your option) any later version. 00010 * 00011 * xine is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 * GNU General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU General Public License 00017 * along with this program; if not, write to the Free Software 00018 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA 00019 * 00020 * $Id$ 00021 * 00022 * sdp/sdpplin parser. 00023 * 00024 */ 00025 00026 #ifndef HAVE_SDPPLIN_H 00027 #define HAVE_SDPPLIN_H 00028 00029 typedef struct { 00030 00031 char *id; 00032 char *bandwidth; 00033 00034 uint16_t stream_id; 00035 char *range; 00036 char *length; 00037 char *rtpmap; 00038 char *mimetype; 00039 int min_switch_overlap; 00040 int start_time; 00041 int end_one_rule_end_all; 00042 int avg_bit_rate; 00043 int max_bit_rate; 00044 int avg_packet_size; 00045 int max_packet_size; 00046 int end_time; 00047 int seek_greater_on_switch; 00048 int preroll; 00049 00050 int duration; 00051 char *stream_name; 00052 int stream_name_size; 00053 char *mime_type; 00054 int mime_type_size; 00055 char *mlti_data; 00056 int mlti_data_size; 00057 int rmff_flags_length; 00058 char *rmff_flags; 00059 int asm_rule_book_length; 00060 char *asm_rule_book; 00061 00062 } sdpplin_stream_t; 00063 00064 typedef struct { 00065 00066 int sdp_version, sdpplin_version; 00067 char *owner; 00068 char *session_name; 00069 char *session_info; 00070 char *uri; 00071 char *email; 00072 char *phone; 00073 char *connection; 00074 char *bandwidth; 00075 00076 int flags; 00077 int is_real_data_type; 00078 uint16_t stream_count; 00079 char *title; 00080 char *author; 00081 char *copyright; 00082 char *keywords; 00083 int asm_rule_book_length; 00084 char *asm_rule_book; 00085 char *abstract; 00086 char *range; 00087 int avg_bit_rate; 00088 int max_bit_rate; 00089 int avg_packet_size; 00090 int max_packet_size; 00091 int preroll; 00092 int duration; 00093 00094 sdpplin_stream_t **stream; 00095 00096 } sdpplin_t; 00097 00098 sdpplin_t *sdpplin_parse(char *data); 00099 00100 void sdpplin_free(sdpplin_t *description); 00101 00102 #endif
1.5.6