Browse Source

Properly pad H.264 extradata when taken from fmtp SDP attributes

This fixes some valgrind warnings.

Originally committed as revision 22182 to svn://svn.ffmpeg.org/ffmpeg/trunk
tags/v0.6
Martin Storsjö 15 years ago
parent
commit
b9b8ed2a02
1 changed files with 5 additions and 1 deletions
  1. +5
    -1
      libavformat/rtpdec_h264.c

+ 5
- 1
libavformat/rtpdec_h264.c View File

@@ -134,7 +134,9 @@ static void sdp_parse_fmtp_config_h264(AVStream * stream,

packet_size= av_base64_decode(decoded_packet, base64packet, sizeof(decoded_packet));
if (packet_size) {
uint8_t *dest= av_malloc(packet_size+sizeof(start_sequence)+codec->extradata_size);
uint8_t *dest = av_malloc(packet_size + sizeof(start_sequence) +
codec->extradata_size +
FF_INPUT_BUFFER_PADDING_SIZE);
if(dest)
{
if(codec->extradata_size)
@@ -146,6 +148,8 @@ static void sdp_parse_fmtp_config_h264(AVStream * stream,

memcpy(dest+codec->extradata_size, start_sequence, sizeof(start_sequence));
memcpy(dest+codec->extradata_size+sizeof(start_sequence), decoded_packet, packet_size);
memset(dest+codec->extradata_size+sizeof(start_sequence)+
packet_size, 0, FF_INPUT_BUFFER_PADDING_SIZE);

codec->extradata= dest;
codec->extradata_size+= sizeof(start_sequence)+packet_size;


Loading…
Cancel
Save