comparison stream/realrtsp/real.c @ 22242:4cabf7499fef

Add support for smil playlist served over realrtsp (audio and video playback only, not full smil support)
author rtogni
date Sun, 18 Feb 2007 15:57:50 +0000
parents 3fba002aa79a
children 6c1fe779b704
comparison
equal deleted inserted replaced
22241:be27c7642939 22242:4cabf7499fef
340 sdpplin_free(desc); 340 sdpplin_free(desc);
341 341
342 return header; 342 return header;
343 } 343 }
344 344
345 int real_get_rdt_chunk(rtsp_t *rtsp_session, char **buffer) { 345 int real_get_rdt_chunk(rtsp_t *rtsp_session, char **buffer, int rdt_rawdata) {
346 346
347 int n=1; 347 int n=1;
348 uint8_t header[8]; 348 uint8_t header[8];
349 rmff_pheader_t ph; 349 rmff_pheader_t ph;
350 int size; 350 int size;
412 ph.flags=2; 412 ph.flags=2;
413 } 413 }
414 else 414 else
415 ph.flags=0; 415 ph.flags=0;
416 *buffer = xbuffer_ensure_size(*buffer, 12+size); 416 *buffer = xbuffer_ensure_size(*buffer, 12+size);
417 if(rdt_rawdata) {
418 n=rtsp_read_data(rtsp_session, *buffer, size-12);
419 return (n <= 0) ? 0 : n;
420 }
417 rmff_dump_pheader(&ph, *buffer); 421 rmff_dump_pheader(&ph, *buffer);
418 size-=12; 422 size-=12;
419 n=rtsp_read_data(rtsp_session, (*buffer)+12, size); 423 n=rtsp_read_data(rtsp_session, (*buffer)+12, size);
420 424
421 return (n <= 0) ? 0 : n+12; 425 return (n <= 0) ? 0 : n+12;
648 struct real_rtsp_session_t *real_rtsp_session = NULL; 652 struct real_rtsp_session_t *real_rtsp_session = NULL;
649 653
650 real_rtsp_session = malloc (sizeof (struct real_rtsp_session_t)); 654 real_rtsp_session = malloc (sizeof (struct real_rtsp_session_t));
651 real_rtsp_session->recv = xbuffer_init (BUF_SIZE); 655 real_rtsp_session->recv = xbuffer_init (BUF_SIZE);
652 real_rtsp_session->rdteof = 0; 656 real_rtsp_session->rdteof = 0;
657 real_rtsp_session->rdt_rawdata = 0;
653 658
654 return real_rtsp_session; 659 return real_rtsp_session;
655 } 660 }
656 661
657 void 662 void