comparison ogg2.c @ 1133:554cc16341da libavformat

10l: don't allocate a new buffer quite so often
author mru
date Sun, 25 Jun 2006 12:23:54 +0000
parents a5487f44bbfa
children 19ceddeafe2e
comparison
equal deleted inserted replaced
1132:a5487f44bbfa 1133:554cc16341da
191 ogg->nstreams * sizeof (*ogg->streams)); 191 ogg->nstreams * sizeof (*ogg->streams));
192 memset (ogg->streams + idx, 0, sizeof (*ogg->streams)); 192 memset (ogg->streams + idx, 0, sizeof (*ogg->streams));
193 os = ogg->streams + idx; 193 os = ogg->streams + idx;
194 os->serial = serial; 194 os->serial = serial;
195 os->bufsize = DECODER_BUFFER_SIZE; 195 os->bufsize = DECODER_BUFFER_SIZE;
196 os->buf = av_malloc(os->bufsize);
196 os->header = -1; 197 os->header = -1;
197 198
198 st = av_new_stream (s, idx); 199 st = av_new_stream (s, idx);
199 if (!st) 200 if (!st)
200 return AVERROR_NOMEM; 201 return AVERROR_NOMEM;
277 return -1; 278 return -1;
278 } 279 }
279 280
280 os = ogg->streams + idx; 281 os = ogg->streams + idx;
281 282
282 if(os->segp == os->nsegs) 283 if(os->psize > 0)
283 ogg_new_buf(ogg, idx); 284 ogg_new_buf(ogg, idx);
284 285
285 if (get_buffer (bc, os->segments, nsegs) < nsegs) 286 if (get_buffer (bc, os->segments, nsegs) < nsegs)
286 return -1; 287 return -1;
287 288