Changeset bc650c59ca6d2edbf555dc0cec11091f274b42f5
- Timestamp:
- 15/09/07 21:14:11 (1 year ago)
- git-parent:
- Files:
-
- include/vlc_sout.h (modified) (1 diff)
- modules/stream_out/rtp.c (modified) (5 diffs)
- src/libvlc.sym (modified) (1 diff)
- src/stream_output/sdp.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
include/vlc_sout.h
r8287b68 rbc650c5 223 223 /** SDP */ 224 224 225 VLC_EXPORT( char *, vlc_sdp_Start, ( vlc_object_t *obj, const char *cfgpref, const struct sockaddr *src, size_t srclen, const struct sockaddr *addr, size_t addrlen ) ); 225 226 VLC_EXPORT( char *, sdp_Start, (const char *name, const char *description, const char *url, const char *email, const char *phone, const struct sockaddr *orig, size_t origlen, const struct sockaddr *addr, size_t addrlen) ); 226 227 VLC_EXPORT( char *, sdp_AddMedia, (char **sdp, const char *type, const char *protocol, int dport, unsigned pt, vlc_bool_t bw_indep, unsigned bw, const char *rtpmap, const char *fmtp) ); modules/stream_out/rtp.c
rfb2512e rbc650c5 70 70 "This is the name of the session that will be announced in the SDP " \ 71 71 "(Session Descriptor)." ) 72 #define DESC_TEXT N_("Session descripti on")72 #define DESC_TEXT N_("Session descriptipn") 73 73 #define DESC_LONGTEXT N_( \ 74 "This allows you to give a broader description of the stream, that will" \75 " be announced in the SDP (Session Descriptor)." )74 "This allows you to give a short description with details about the stream, " \ 75 "that will be announced in the SDP (Session Descriptor)." ) 76 76 #define URL_TEXT N_("Session URL") 77 77 #define URL_LONGTEXT N_( \ … … 81 81 #define EMAIL_TEXT N_("Session email") 82 82 #define EMAIL_LONGTEXT N_( \ 83 "This allows you to give a contact mail address for the stream, that will " \ 84 "be announced in the SDP (Session Descriptor)." ) 83 "This allows you to give a contact mail address for the stream, that will " \ 84 "be announced in the SDP (Session Descriptor)." ) 85 #define PHONE_TEXT N_("Session phone number") 86 #define PHONE_LONGTEXT N_( \ 87 "This allows you to give a contact telephone number for the stream, that will " \ 88 "be announced in the SDP (Session Descriptor)." ) 89 85 90 #define PORT_TEXT N_("Port") 86 91 #define PORT_LONGTEXT N_( \ … … 142 147 add_string( SOUT_CFG_PREFIX "email", "", NULL, EMAIL_TEXT, 143 148 EMAIL_LONGTEXT, VLC_TRUE ); 149 add_string( SOUT_CFG_PREFIX "phone", "", NULL, PHONE_TEXT, 150 PHONE_LONGTEXT, VLC_TRUE ); 144 151 145 152 add_integer( SOUT_CFG_PREFIX "port", 1234, NULL, PORT_TEXT, … … 171 178 static const char *ppsz_sout_options[] = { 172 179 "dst", "name", "port", "port-audio", "port-video", "*sdp", "ttl", "mux", 173 "description", "url", "email", 180 "description", "url", "email", "phone", 174 181 "dccp", "tcp", "udplite", 175 182 "mp4a-latm", NULL … … 687 694 } 688 695 689 psz_sdp = sdp_Start( p_sys->psz_session_name, 690 p_sys->psz_session_description, 691 p_sys->psz_session_url, p_sys->psz_session_email, 692 NULL, NULL, 0, (struct sockaddr *)&dst, dstlen ); 696 psz_sdp = vlc_sdp_Start( VLC_OBJECT( p_stream ), SOUT_CFG_PREFIX, 697 NULL, 0, (struct sockaddr *)&dst, dstlen ); 693 698 if( psz_sdp == NULL ) 694 699 return NULL; 695 696 700 697 701 /* TODO: a=source-filter */ src/libvlc.sym
r0500053 rbc650c5 258 258 resolve_xml_special_chars 259 259 secstotimestr 260 sdp_Start260 vlc_sdp_Start 261 261 sdp_AddAttribute 262 262 sdp_AddMedia src/stream_output/sdp.c
r8287b68 rbc650c5 88 88 89 89 char *sdp_Start (const char *name, const char *description, const char *url, 90 const char *email, const char *phone,91 const struct sockaddr *src, size_t srclen,92 const struct sockaddr *addr, size_t addrlen)90 const char *email, const char *phone, 91 const struct sockaddr *src, size_t srclen, 92 const struct sockaddr *addr, size_t addrlen) 93 93 { 94 94 uint64_t now = NTPtime64 (); … … 245 245 return newsdp; 246 246 } 247 248 249 char *vlc_sdp_Start (vlc_object_t *obj, const char *cfgpref, 250 const struct sockaddr *src, size_t srclen, 251 const struct sockaddr *addr, size_t addrlen) 252 { 253 size_t cfglen = strlen (cfgpref); 254 if (cfglen > 100) 255 return NULL; 256 257 char varname[cfglen + sizeof ("description")], *subvar = varname + cfglen; 258 strcpy (varname, cfgpref); 259 260 session_descriptor_t *p_session = calloc (1, sizeof (*p_session)); 261 if (p_session == NULL) 262 return NULL; 263 264 strcpy (subvar, "name"); 265 char *name = var_GetNonEmptyString (obj, varname); 266 strcpy (subvar, "description"); 267 char *description = var_GetNonEmptyString (obj, varname); 268 strcpy (subvar, "url"); 269 char *url = var_GetNonEmptyString (obj, varname); 270 strcpy (subvar, "email"); 271 char *email = var_GetNonEmptyString (obj, varname); 272 strcpy (subvar, "phone"); 273 char *phone = var_GetNonEmptyString (obj, varname); 274 #if 0 275 strcpy (subvar, "group"); 276 char *group = var_GetNonEmptyString (obj, varname); 277 #endif 278 279 char *sdp = sdp_Start (name, description, url, email, phone, 280 src, srclen, addr, addrlen); 281 free (name); 282 free (description); 283 free (url); 284 free (email); 285 free (phone); 286 287 return sdp; 288 }
