Mercurial > libavformat.hg
changeset 1374:75e006876c55 libavformat
simplify by not writing unneeded codec name to fix segfault when stream copy
author | bcoudurier |
---|---|
date | Wed, 11 Oct 2006 10:09:45 +0000 |
parents | 586f4d032b3c |
children | c42cb95fa0d4 |
files | aiff.c |
diffstat | 1 files changed, 2 insertions(+), 15 deletions(-) [+] |
line wrap: on
line diff
--- a/aiff.c Wed Oct 11 08:30:13 2006 +0000 +++ b/aiff.c Wed Oct 11 10:09:45 2006 +0000 @@ -180,7 +180,6 @@ ByteIOContext *pb = &s->pb; AVCodecContext *enc = s->streams[0]->codec; AVExtFloat sample_rate; - int coder_len; /* First verify if format is ok */ enc->codec_tag = codec_get_tag(codec_aiff_tags, enc->codec_id); @@ -189,8 +188,6 @@ return -1; } - coder_len = strlen(enc->codec->name); - /* FORM AIFF header */ put_tag(pb, "FORM"); aiff->form = url_ftell(pb); @@ -204,10 +201,7 @@ /* Common chunk */ put_tag(pb, "COMM"); - if (coder_len & 1) /* Common chunk is of var size */ - put_be32(pb, 23+coder_len); - else - put_be32(pb, 24+coder_len); + put_be32(pb, 24); /* size */ put_be16(pb, enc->channels); /* Number of channels */ aiff->frames = url_ftell(pb); @@ -221,14 +215,7 @@ put_buffer(pb, (uint8_t*)&sample_rate, sizeof(sample_rate)); put_le32(pb, enc->codec_tag); - if (coder_len & 1) { - put_byte(pb, coder_len); - put_buffer(pb, (const uint8_t*)enc->codec->name, coder_len); - } else { - put_byte(pb, coder_len+1); - put_buffer(pb, (const uint8_t*)enc->codec->name, coder_len); - put_byte(pb, 0); - } + put_be16(pb, 0); /* Sound data chunk */ put_tag(pb, "SSND");