diff options
author | Baptiste Coudurier <baptiste.coudurier@gmail.com> | 2008-06-22 01:35:43 +0000 |
---|---|---|
committer | Baptiste Coudurier <baptiste.coudurier@gmail.com> | 2008-06-22 01:35:43 +0000 |
commit | dbedf2aae26c44d3d310831dd1097900d5a539d9 (patch) | |
tree | ab0c29c986a7b48fe8671a9997403237a666384a | |
parent | 0b459fb2d8d84f90d02a755a875ae921b2871020 (diff) | |
download | ffmpeg-dbedf2aae26c44d3d310831dd1097900d5a539d9.tar.gz |
enable feeder threads
Originally committed as revision 13868 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r-- | ffmpeg.c | 5 | ||||
-rw-r--r-- | libavformat/ffmdec.c | 1 | ||||
-rw-r--r-- | libavformat/ffmenc.c | 1 | ||||
-rw-r--r-- | tests/libav.regression.ref | 2 |
4 files changed, 8 insertions, 1 deletions
@@ -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 37a60a55e5..8d0a39bc23 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 3b7c354841..1a38f9937f 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 abaa82ac81..5e4d0b46a1 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 |