sdp: Add a framesize attribute to H.263 SDP descriptions

While not mentioned in RFC 4629, this is required for H.263 in
3GPP TS 26.234. It is in practice required for playback with
Android stagefright and on Samsung bada phones.

Originally committed as revision 26062 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Martin Storsjö 2010-12-20 20:46:40 +00:00
parent 9100d4d632
commit 9b14ec5fae
1 changed files with 8 additions and 1 deletions

View File

@ -314,7 +314,14 @@ static char *sdp_write_media_attributes(char *buff, int size, AVCodecContext *c,
break;
case CODEC_ID_H263:
case CODEC_ID_H263P:
av_strlcatf(buff, size, "a=rtpmap:%d H263-2000/90000\r\n", payload_type);
/* a=framesize is required by 3GPP TS 26.234 (PSS). It
* actually specifies the maximum video size, but we only know
* the current size. This is required for playback on Android
* stagefright and on Samsung bada. */
av_strlcatf(buff, size, "a=rtpmap:%d H263-2000/90000\r\n"
"a=framesize:%d %d-%d\r\n",
payload_type,
payload_type, c->width, c->height);
break;
case CODEC_ID_MPEG4:
if (c->extradata_size) {