Mercurial > libavcodec.hg
changeset 685:44a1dab0205c libavcodec
fixing apiexample
author | michaelni |
---|---|
date | Thu, 19 Sep 2002 18:24:52 +0000 |
parents | 581678112a5d |
children | 83d2c9d50d7d |
files | apiexample.c utils.c |
diffstat | 2 files changed, 22 insertions(+), 15 deletions(-) [+] |
line wrap: on
line diff
--- a/apiexample.c Thu Sep 19 17:44:54 2002 +0000 +++ b/apiexample.c Thu Sep 19 18:24:52 2002 +0000 @@ -19,7 +19,7 @@ void audio_encode_example(const char *filename) { AVCodec *codec; - AVCodecContext codec_context, *c = &codec_context; + AVCodecContext *c= NULL; int frame_size, i, j, out_size, outbuf_size; FILE *f; short *samples; @@ -35,9 +35,8 @@ exit(1); } - /* put default values */ - memset(c, 0, sizeof(*c)); - + c= avcodec_alloc_context(); + /* put sample parameters */ c->bit_rate = 64000; c->sample_rate = 44100; @@ -79,6 +78,7 @@ free(samples); avcodec_close(c); + free(c); } /* @@ -87,7 +87,7 @@ void audio_decode_example(const char *outfilename, const char *filename) { AVCodec *codec; - AVCodecContext codec_context, *c = &codec_context; + AVCodecContext *c= NULL; int out_size, size, len; FILE *f, *outfile; UINT8 *outbuf; @@ -102,8 +102,7 @@ exit(1); } - /* put default values */ - memset(c, 0, sizeof(*c)); + c= avcodec_alloc_context(); /* open it */ if (avcodec_open(c, codec) < 0) { @@ -120,7 +119,7 @@ } outfile = fopen(outfilename, "w"); if (!outfile) { - fprintf(stderr, "could not open %s\n", outfilename); + free(c); exit(1); } @@ -153,6 +152,7 @@ free(outbuf); avcodec_close(c); + free(c); } /* @@ -161,7 +161,7 @@ void video_encode_example(const char *filename) { AVCodec *codec; - AVCodecContext codec_context, *c = &codec_context; + AVCodecContext *c= NULL; int i, out_size, size, x, y, outbuf_size; FILE *f; AVPicture picture; @@ -176,9 +176,8 @@ exit(1); } - /* put default values */ - memset(c, 0, sizeof(*c)); - + c= avcodec_alloc_context(); + /* put sample parameters */ c->bit_rate = 400000; /* resolution must be a multiple of two */ @@ -251,6 +250,7 @@ free(outbuf); avcodec_close(c); + free(c); printf("\n"); } @@ -273,7 +273,7 @@ void video_decode_example(const char *outfilename, const char *filename) { AVCodec *codec; - AVCodecContext codec_context, *c = &codec_context; + AVCodecContext *c= NULL; int frame, size, got_picture, len; FILE *f; AVPicture picture; @@ -289,8 +289,7 @@ exit(1); } - /* put default values */ - memset(c, 0, sizeof(*c)); + c= avcodec_alloc_context(); /* for some codecs, such as msmpeg4 and mpeg4, width and height MUST be initialized there because these info are not available @@ -375,6 +374,7 @@ fclose(f); avcodec_close(c); + free(c); printf("\n"); }
--- a/utils.c Thu Sep 19 17:44:54 2002 +0000 +++ b/utils.c Thu Sep 19 18:24:52 2002 +0000 @@ -50,10 +50,17 @@ } void avcodec_get_context_defaults(AVCodecContext *s){ + s->bit_rate= 800*1000; + s->bit_rate_tolerance= s->bit_rate*10; s->qmin= 2; s->qmax= 31; s->rc_eq= "tex^qComp"; s->qcompress= 0.5; + s->max_qdiff= 3; + s->b_quant_factor=1.25; + s->b_quant_offset=1.25; + s->i_quant_factor=0.8; + s->i_quant_offset=0.0; } /**