comparison rtpenc.c @ 6379:0bcd6a8bc5d5 libavformat

Add RTP packetization of VP8 Patch by Josh Allmann, joshua dot allmann at gmail
author mstorsjo
date Mon, 16 Aug 2010 14:21:17 +0000
parents 93c7a56fa912
children 37944ce385a0
comparison
equal deleted inserted replaced
6378:a5b3f5d68db6 6379:0bcd6a8bc5d5
53 case CODEC_ID_MPEG2TS: 53 case CODEC_ID_MPEG2TS:
54 case CODEC_ID_AMR_NB: 54 case CODEC_ID_AMR_NB:
55 case CODEC_ID_AMR_WB: 55 case CODEC_ID_AMR_WB:
56 case CODEC_ID_VORBIS: 56 case CODEC_ID_VORBIS:
57 case CODEC_ID_THEORA: 57 case CODEC_ID_THEORA:
58 case CODEC_ID_VP8:
58 return 1; 59 return 1;
59 default: 60 default:
60 return 0; 61 return 0;
61 } 62 }
62 } 63 }
142 if (!s->max_frames_per_packet) s->max_frames_per_packet = 15; 143 if (!s->max_frames_per_packet) s->max_frames_per_packet = 15;
143 s->max_frames_per_packet = av_clip(s->max_frames_per_packet, 1, 15); 144 s->max_frames_per_packet = av_clip(s->max_frames_per_packet, 1, 15);
144 s->max_payload_size -= 6; // ident+frag+tdt/vdt+pkt_num+pkt_length 145 s->max_payload_size -= 6; // ident+frag+tdt/vdt+pkt_num+pkt_length
145 s->num_frames = 0; 146 s->num_frames = 0;
146 goto defaultcase; 147 goto defaultcase;
148 case CODEC_ID_VP8:
149 av_log(s1, AV_LOG_WARNING, "RTP VP8 payload is still experimental\n");
150 break;
147 case CODEC_ID_AMR_NB: 151 case CODEC_ID_AMR_NB:
148 case CODEC_ID_AMR_WB: 152 case CODEC_ID_AMR_WB:
149 if (!s->max_frames_per_packet) 153 if (!s->max_frames_per_packet)
150 s->max_frames_per_packet = 12; 154 s->max_frames_per_packet = 12;
151 if (st->codec->codec_id == CODEC_ID_AMR_NB) 155 if (st->codec->codec_id == CODEC_ID_AMR_NB)
405 break; 409 break;
406 case CODEC_ID_VORBIS: 410 case CODEC_ID_VORBIS:
407 case CODEC_ID_THEORA: 411 case CODEC_ID_THEORA:
408 ff_rtp_send_xiph(s1, pkt->data, size); 412 ff_rtp_send_xiph(s1, pkt->data, size);
409 break; 413 break;
414 case CODEC_ID_VP8:
415 ff_rtp_send_vp8(s1, pkt->data, size);
416 break;
410 default: 417 default:
411 /* better than nothing : send the codec raw data */ 418 /* better than nothing : send the codec raw data */
412 rtp_send_raw(s1, pkt->data, size); 419 rtp_send_raw(s1, pkt->data, size);
413 break; 420 break;
414 } 421 }