annotate lclenc.c @ 12530:63edd10ad4bc libavcodec tip

Try to fix crashes introduced by r25218 r25218 made assumptions about the existence of past reference frames that weren't necessarily true.
author darkshikari
date Tue, 28 Sep 2010 09:06:22 +0000
parents 7dd2a45249a9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
1 /*
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
2 * LCL (LossLess Codec Library) Codec
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
3 * Copyright (c) 2002-2004 Roberto Togni
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
4 *
3947
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3777
diff changeset
5 * This file is part of FFmpeg.
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3777
diff changeset
6 *
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3777
diff changeset
7 * FFmpeg is free software; you can redistribute it and/or
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
8 * modify it under the terms of the GNU Lesser General Public
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
9 * License as published by the Free Software Foundation; either
3947
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3777
diff changeset
10 * version 2.1 of the License, or (at your option) any later version.
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
11 *
3947
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3777
diff changeset
12 * FFmpeg is distributed in the hope that it will be useful,
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
15 * Lesser General Public License for more details.
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
16 *
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
17 * You should have received a copy of the GNU Lesser General Public
3947
c8c591fe26f8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 3777
diff changeset
18 * License along with FFmpeg; if not, write to the Free Software
3036
0b546eab515d Update licensing information: The FSF changed postal address.
diego
parents: 2979
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
20 */
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
21
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
22 /**
11644
7dd2a45249a9 Remove explicit filename from Doxygen @file commands.
diego
parents: 11560
diff changeset
23 * @file
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
24 * LCL (LossLess Codec Library) Video Codec
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
25 * Decoder for MSZH and ZLIB codecs
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
26 * Experimental encoder for ZLIB RGB24
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
27 *
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
28 * Fourcc: MSZH, ZLIB
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
29 *
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
30 * Original Win32 dll:
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
31 * Ver2.23 By Kenji Oshima 2000.09.20
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
32 * avimszh.dll, avizlib.dll
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
33 *
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
34 * A description of the decoding algorithm can be found here:
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
35 * http://www.pcisys.net/~melanson/codecs
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
36 *
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
37 * Supports: BGR24 (RGB 24bpp)
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
38 *
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
39 */
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
40
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
41 #include <stdio.h>
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
42 #include <stdlib.h>
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
43
4962
f99e40a7155b Remove redundant #inclusion of common.h, avcodec.h already #includes it.
diego
parents: 4827
diff changeset
44 #include "avcodec.h"
5294
e21873a1c00b split lcl.c into lcldec.c, lclenc.c, lcl.h
mru
parents: 5215
diff changeset
45 #include "lcl.h"
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
46
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
47 #include <zlib.h>
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
48
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
49 /*
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
50 * Decoder context
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
51 */
5294
e21873a1c00b split lcl.c into lcldec.c, lclenc.c, lcl.h
mru
parents: 5215
diff changeset
52 typedef struct LclEncContext {
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
53
9744
bcd71ae6ea74 Cosmetics: fix indentation in lclenc.c
reimar
parents: 9743
diff changeset
54 AVCodecContext *avctx;
bcd71ae6ea74 Cosmetics: fix indentation in lclenc.c
reimar
parents: 9743
diff changeset
55 AVFrame pic;
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
56
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
57 // Image type
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
58 int imgtype;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
59 // Compression type
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
60 int compression;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
61 // Flags
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
62 int flags;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
63 z_stream zstream;
5294
e21873a1c00b split lcl.c into lcldec.c, lclenc.c, lcl.h
mru
parents: 5215
diff changeset
64 } LclEncContext;
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
65
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
66 /*
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
67 *
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
68 * Encode a frame
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
69 *
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
70 */
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
71 static int encode_frame(AVCodecContext *avctx, unsigned char *buf, int buf_size, void *data){
5294
e21873a1c00b split lcl.c into lcldec.c, lclenc.c, lcl.h
mru
parents: 5215
diff changeset
72 LclEncContext *c = avctx->priv_data;
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
73 AVFrame *pict = data;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
74 AVFrame * const p = &c->pic;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
75 int i;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
76 int zret; // Zlib return code
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
77
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
78 *p = *pict;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
79 p->pict_type= FF_I_TYPE;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
80 p->key_frame= 1;
2967
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2628
diff changeset
81
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
82 if(avctx->pix_fmt != PIX_FMT_BGR24){
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
83 av_log(avctx, AV_LOG_ERROR, "Format not supported!\n");
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
84 return -1;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
85 }
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
86
9745
2b2cf4039589 Remove superfluous () from lclenc.c
reimar
parents: 9744
diff changeset
87 zret = deflateReset(&c->zstream);
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
88 if (zret != Z_OK) {
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
89 av_log(avctx, AV_LOG_ERROR, "Deflate reset error: %d\n", zret);
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
90 return -1;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
91 }
9746
e8421cfcc381 lclenc.c: compress directly into output buffer instead of using a pointless
reimar
parents: 9745
diff changeset
92 c->zstream.next_out = buf;
e8421cfcc381 lclenc.c: compress directly into output buffer instead of using a pointless
reimar
parents: 9745
diff changeset
93 c->zstream.avail_out = buf_size;
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
94
2250
902caf560c43 Zlib encoder: fix image orientation (was flipped), 100l in deflate error
rtognimp
parents: 2248
diff changeset
95 for(i = avctx->height - 1; i >= 0; i--) {
902caf560c43 Zlib encoder: fix image orientation (was flipped), 100l in deflate error
rtognimp
parents: 2248
diff changeset
96 c->zstream.next_in = p->data[0]+p->linesize[0]*i;
902caf560c43 Zlib encoder: fix image orientation (was flipped), 100l in deflate error
rtognimp
parents: 2248
diff changeset
97 c->zstream.avail_in = avctx->width*3;
9745
2b2cf4039589 Remove superfluous () from lclenc.c
reimar
parents: 9744
diff changeset
98 zret = deflate(&c->zstream, Z_NO_FLUSH);
2250
902caf560c43 Zlib encoder: fix image orientation (was flipped), 100l in deflate error
rtognimp
parents: 2248
diff changeset
99 if (zret != Z_OK) {
2979
bfabfdf9ce55 COSMETICS: tabs --> spaces, some prettyprinting
diego
parents: 2967
diff changeset
100 av_log(avctx, AV_LOG_ERROR, "Deflate error: %d\n", zret);
bfabfdf9ce55 COSMETICS: tabs --> spaces, some prettyprinting
diego
parents: 2967
diff changeset
101 return -1;
2250
902caf560c43 Zlib encoder: fix image orientation (was flipped), 100l in deflate error
rtognimp
parents: 2248
diff changeset
102 }
902caf560c43 Zlib encoder: fix image orientation (was flipped), 100l in deflate error
rtognimp
parents: 2248
diff changeset
103 }
9745
2b2cf4039589 Remove superfluous () from lclenc.c
reimar
parents: 9744
diff changeset
104 zret = deflate(&c->zstream, Z_FINISH);
2250
902caf560c43 Zlib encoder: fix image orientation (was flipped), 100l in deflate error
rtognimp
parents: 2248
diff changeset
105 if (zret != Z_STREAM_END) {
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
106 av_log(avctx, AV_LOG_ERROR, "Deflate error: %d\n", zret);
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
107 return -1;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
108 }
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
109
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
110 return c->zstream.total_out;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
111 }
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
112
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
113 /*
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
114 *
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
115 * Init lcl encoder
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
116 *
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
117 */
6517
48759bfbd073 Apply 'cold' attribute to init/uninit functions in libavcodec
zuxy
parents: 5294
diff changeset
118 static av_cold int encode_init(AVCodecContext *avctx)
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
119 {
5294
e21873a1c00b split lcl.c into lcldec.c, lclenc.c, lcl.h
mru
parents: 5215
diff changeset
120 LclEncContext *c = avctx->priv_data;
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
121 int zret; // Zlib return code
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
122
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
123 c->avctx= avctx;
2967
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2628
diff changeset
124
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
125 assert(avctx->width && avctx->height);
2967
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2628
diff changeset
126
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
127 avctx->extradata= av_mallocz(8);
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
128 avctx->coded_frame= &c->pic;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
129
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
130 // Will be user settable someday
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
131 c->compression = 6;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
132 c->flags = 0;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
133
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
134 switch(avctx->pix_fmt){
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
135 case PIX_FMT_BGR24:
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
136 c->imgtype = IMGTYPE_RGB24;
7823
4525dcd81357 Bump Major version, this commit is almost just renaming bits_per_sample to
michael
parents: 7068
diff changeset
137 avctx->bits_per_coded_sample= 24;
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
138 break;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
139 default:
7068
6497251e2fde Improve an lclenc.c error message in case of unsupported input pixel
stefano
parents: 7040
diff changeset
140 av_log(avctx, AV_LOG_ERROR, "Input pixel format %s not supported\n", avcodec_get_pix_fmt_name(avctx->pix_fmt));
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
141 return -1;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
142 }
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
143
9747
9db25052df0e Remove useless casts, extradata is already "uint8_t *"
reimar
parents: 9746
diff changeset
144 avctx->extradata[0]= 4;
9db25052df0e Remove useless casts, extradata is already "uint8_t *"
reimar
parents: 9746
diff changeset
145 avctx->extradata[1]= 0;
9db25052df0e Remove useless casts, extradata is already "uint8_t *"
reimar
parents: 9746
diff changeset
146 avctx->extradata[2]= 0;
9db25052df0e Remove useless casts, extradata is already "uint8_t *"
reimar
parents: 9746
diff changeset
147 avctx->extradata[3]= 0;
9db25052df0e Remove useless casts, extradata is already "uint8_t *"
reimar
parents: 9746
diff changeset
148 avctx->extradata[4]= c->imgtype;
9db25052df0e Remove useless casts, extradata is already "uint8_t *"
reimar
parents: 9746
diff changeset
149 avctx->extradata[5]= c->compression;
9db25052df0e Remove useless casts, extradata is already "uint8_t *"
reimar
parents: 9746
diff changeset
150 avctx->extradata[6]= c->flags;
9db25052df0e Remove useless casts, extradata is already "uint8_t *"
reimar
parents: 9746
diff changeset
151 avctx->extradata[7]= CODEC_ZLIB;
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
152 c->avctx->extradata_size= 8;
2967
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2628
diff changeset
153
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
154 c->zstream.zalloc = Z_NULL;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
155 c->zstream.zfree = Z_NULL;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
156 c->zstream.opaque = Z_NULL;
9745
2b2cf4039589 Remove superfluous () from lclenc.c
reimar
parents: 9744
diff changeset
157 zret = deflateInit(&c->zstream, c->compression);
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
158 if (zret != Z_OK) {
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
159 av_log(avctx, AV_LOG_ERROR, "Deflate init error: %d\n", zret);
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
160 return 1;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
161 }
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
162
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
163 return 0;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
164 }
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
165
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
166 /*
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
167 *
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
168 * Uninit lcl encoder
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
169 *
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
170 */
6517
48759bfbd073 Apply 'cold' attribute to init/uninit functions in libavcodec
zuxy
parents: 5294
diff changeset
171 static av_cold int encode_end(AVCodecContext *avctx)
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
172 {
5294
e21873a1c00b split lcl.c into lcldec.c, lclenc.c, lcl.h
mru
parents: 5215
diff changeset
173 LclEncContext *c = avctx->priv_data;
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
174
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
175 av_freep(&avctx->extradata);
9745
2b2cf4039589 Remove superfluous () from lclenc.c
reimar
parents: 9744
diff changeset
176 deflateEnd(&c->zstream);
2967
ef2149182f1c COSMETICS: Remove all trailing whitespace.
diego
parents: 2628
diff changeset
177
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
178 return 0;
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
179 }
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
180
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
181 AVCodec zlib_encoder = {
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
182 "zlib",
11560
8a4984c5cacc Define AVMediaType enum, and use it instead of enum CodecType, which
stefano
parents: 9768
diff changeset
183 AVMEDIA_TYPE_VIDEO,
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
184 CODEC_ID_ZLIB,
5294
e21873a1c00b split lcl.c into lcldec.c, lclenc.c, lcl.h
mru
parents: 5215
diff changeset
185 sizeof(LclEncContext),
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
186 encode_init,
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
187 encode_frame,
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
188 encode_end,
7040
e943e1409077 Make AVCodec long_names definition conditional depending on CONFIG_SMALL.
stefano
parents: 6712
diff changeset
189 .long_name = NULL_IF_CONFIG_SMALL("LCL (LossLess Codec Library) ZLIB"),
1743
fa06a4a448f7 Fix for older version of zlib
rtognimp
parents:
diff changeset
190 };