From dbedf2aae26c44d3d310831dd1097900d5a539d9 Mon Sep 17 00:00:00 2001 From: Baptiste Coudurier Date: Sun, 22 Jun 2008 01:35:43 +0000 Subject: [PATCH] enable feeder threads Originally committed as revision 13868 to svn://svn.ffmpeg.org/ffmpeg/trunk --- ffmpeg.c | 5 +++++ libavformat/ffmdec.c | 1 + libavformat/ffmenc.c | 1 + tests/libav.regression.ref | 2 +- 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/ffmpeg.c b/ffmpeg.c index 8cfa7b348..e20ac1141 100644 --- a/ffmpeg.c +++ b/ffmpeg.c @@ -449,6 +449,11 @@ static int read_ffserver_streams(AVFormatContext *s, const char *filename) else if (st->codec->codec_type == CODEC_TYPE_VIDEO && video_stream_copy) st->stream_copy = 1; + if(!st->codec->thread_count) + st->codec->thread_count = 1; + if(st->codec->thread_count>1) + avcodec_thread_init(st->codec, st->codec->thread_count); + if(st->codec->flags & CODEC_FLAG_BITEXACT) nopts = 1; } diff --git a/libavformat/ffmdec.c b/libavformat/ffmdec.c index 37a60a55e..8d0a39bc2 100644 --- a/libavformat/ffmdec.c +++ b/libavformat/ffmdec.c @@ -310,6 +310,7 @@ static int ffm_read_header(AVFormatContext *s, AVFormatParameters *ap) codec->frame_skip_cmp = get_be32(pb); codec->rc_buffer_aggressivity = av_int2dbl(get_be64(pb)); codec->codec_tag = get_be32(pb); + codec->thread_count = get_byte(pb); break; case CODEC_TYPE_AUDIO: codec->sample_rate = get_be32(pb); diff --git a/libavformat/ffmenc.c b/libavformat/ffmenc.c index 3b7c35484..1a38f9937 100644 --- a/libavformat/ffmenc.c +++ b/libavformat/ffmenc.c @@ -158,6 +158,7 @@ static int ffm_write_header(AVFormatContext *s) put_be32(pb, codec->frame_skip_cmp); put_be64(pb, av_dbl2int(codec->rc_buffer_aggressivity)); put_be32(pb, codec->codec_tag); + put_byte(pb, codec->thread_count); break; case CODEC_TYPE_AUDIO: put_be32(pb, codec->sample_rate); diff --git a/tests/libav.regression.ref b/tests/libav.regression.ref index abaa82ac8..5e4d0b46a 100644 --- a/tests/libav.regression.ref +++ b/tests/libav.regression.ref @@ -15,7 +15,7 @@ bdb7484c68db722f66ba1630cf79844c *./tests/data/b-libav.mpg d6fdeb9f7083cc827f9510c6c4517dc0 *./tests/data/b-libav.swf 335771 ./tests/data/b-libav.swf ./tests/data/b-libav.swf CRC=0xe14e8847 -bbdf0d67ad1035d59adc3c4cd245f3a9 *./tests/data/b-libav.ffm +102427263dc342610721d5754fac4d87 *./tests/data/b-libav.ffm 380928 ./tests/data/b-libav.ffm ./tests/data/b-libav.ffm CRC=0x2b71a386 f8ad5bd78f4d012a8ce9570aa395ac54 *./tests/data/b-libav.flv -- 2.11.0