consistent with av_fifo_generic_write.
Originally committed as revision 17914 to svn://svn.ffmpeg.org/ffmpeg/trunk
20090308 - r17869 - lavu 50.0.0 - AVFifoBuffer
av_fifo_init, av_fifo_read, av_fifo_write and av_fifo_realloc were dropped and replaced
by av_fifo_alloc, av_fifo_generic_read, av_fifo_generic_write and av_fifo_realloc2.
+ In addition, the order of the function arguments of av_fifo_generic_read were changed
+ to match av_fifo_generic_write.
The AVFifoBuffer/struct AVFifoBuffer may only be used in an opaque way by applications,
they may not use sizeof() or directly access members.
AVPacket pkt;
av_init_packet(&pkt);
- av_fifo_generic_read(ost->fifo, frame_bytes, NULL, audio_buf);
+ av_fifo_generic_read(ost->fifo, audio_buf, frame_bytes, NULL);
//FIXME pass ost->sync_opts as AVFrame.pts in avcodec_encode_audio()
if(fifo_bytes > 0 && enc->codec->capabilities & CODEC_CAP_SMALL_LAST_FRAME) {
int fs_tmp = enc->frame_size;
enc->frame_size = fifo_bytes / (2 * enc->channels);
- av_fifo_generic_read(ost->fifo, fifo_bytes, NULL, samples);
+ av_fifo_generic_read(ost->fifo, samples, fifo_bytes, NULL);
ret = avcodec_encode_audio(enc, bit_buffer, bit_buffer_size, samples);
enc->frame_size = fs_tmp;
}
return 0;
av_new_packet(pkt, size);
- av_fifo_generic_read(aic->fifo, size, NULL, pkt->data);
+ av_fifo_generic_read(aic->fifo, pkt->data, size, NULL);
pkt->dts = pkt->pts = aic->dts;
pkt->duration = av_rescale_q(*aic->samples, st->time_base, aic->time_base);
/* output data */
assert(payload_size - stuffing_size <= av_fifo_size(stream->fifo));
- av_fifo_generic_read(stream->fifo, payload_size - stuffing_size, &put_buffer, ctx->pb);
+ av_fifo_generic_read(stream->fifo, ctx->pb, payload_size - stuffing_size, &put_buffer);
stream->bytes_to_iframe -= payload_size - stuffing_size;
}else{
payload_size=
put_swf_tag(s, TAG_STREAMBLOCK | TAG_LONG);
put_le16(pb, swf->sound_samples);
put_le16(pb, 0); // seek samples
- av_fifo_generic_read(swf->audio_fifo, frame_size, &put_buffer, pb);
+ av_fifo_generic_read(swf->audio_fifo, pb, frame_size, &put_buffer);
put_swf_end_tag(s);
/* update FIFO */
if (!f2)
return -1;
- av_fifo_generic_read(f, len, NULL, f2->buffer);
+ av_fifo_generic_read(f, f2->buffer, len, NULL);
f2->wptr += len;
f2->wndx += len;
av_free(f->buffer);
}
-int av_fifo_generic_read(AVFifoBuffer *f, int buf_size, void (*func)(void*, void*, int), void* dest)
+int av_fifo_generic_read(AVFifoBuffer *f, void *dest, int buf_size, void (*func)(void*, void*, int))
{
// Read memory barrier needed for SMP here in theory
do {
* @param *func generic read function
* @param *dest data destination
*/
-int av_fifo_generic_read(AVFifoBuffer *f, int buf_size, void (*func)(void*, void*, int), void* dest);
+int av_fifo_generic_read(AVFifoBuffer *f, void *dest, int buf_size, void (*func)(void*, void*, int));
/**
* Feeds data from a user-supplied callback to an AVFifoBuffer.