1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-26 19:01:44 +02:00
FFmpeg/libavcodec
Michael Niedermayer 9c3d33d67f multithreaded/SMP motion estimation
multithreaded/SMP encoding for MPEG1/MPEG2/MPEG4/H263
all pthread specific code is in pthread.c
to try it, run configure --enable-pthreads and ffmpeg ... -threads <num>
the internal thread API is a simple AVCodecContext.execute() callback which executes a given function pointer with different arguments and returns after finishing all, that way no mutexes or other thread-mess is needed outside pthread.c

Originally committed as revision 2772 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-02-13 17:54:10 +00:00
..
alpha interlaced motion estimation 2003-12-30 16:07:57 +00:00
armv4l Optimized simple idct for arm by Frederic 'dilb' Boulay <dilb@handhelds.org>. Currently licensed under the GPLv2, but the author allowed to license it under the LGPL, feel free to change 2003-07-07 11:19:18 +00:00
i386 quantizer noise shaping optimization 2004-02-06 02:12:37 +00:00
liba52 av_log patch(2 of ?) by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 18:06:54 +00:00
libpostproc changed includes 2004-01-31 22:58:32 +00:00
mlib optimised versions of the get_pixels, diff_pixels, and bswap_buf 2003-10-11 16:43:51 +00:00
ppc interlaced motion estimation 2003-12-30 16:07:57 +00:00
ps2 the return of the idct with 16bit output by ("Ivan Kalvachev" <ivan at cacad dot com>) 2003-06-21 01:11:31 +00:00
sh4 the return of the idct with 16bit output by ("Ivan Kalvachev" <ivan at cacad dot com>) 2003-06-21 01:11:31 +00:00
.cvsignore * cleanup 2002-04-26 07:18:57 +00:00
4xm.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
8bps.c 8BPS decoder 2003-11-07 22:39:18 +00:00
a52dec.c av_log patch(2 of ?) by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 18:06:54 +00:00
ac3.h per file doxy 2003-03-06 11:32:04 +00:00
ac3dec.c per file doxy 2003-03-06 11:32:04 +00:00
ac3enc.c av_log patch(2 of ?) by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 18:06:54 +00:00
ac3tab.h per file doxy 2003-03-06 11:32:04 +00:00
adpcm.c M$ ADPCM encoding & some simplifications 2004-02-08 02:16:48 +00:00
adx.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
allcodecs.c * Initial implementation of the G.726 ADPCM audio codec. 2004-02-07 08:20:00 +00:00
amr.c something unimportant ... 2004-01-09 23:43:57 +00:00
apiexample.c spelling fix 2003-08-28 13:30:03 +00:00
asv1.c get_bit_count -> put_bits_count 2004-02-06 15:27:31 +00:00
avcodec.c flash video (flv) support patch by (Garrick Meeker <gmeeker at theoryllc dot com>) 2003-07-09 23:10:59 +00:00
avcodec.h multithreaded/SMP motion estimation 2004-02-13 17:54:10 +00:00
bswap.h warning fixes 2003-07-25 13:15:16 +00:00
cabac.c removed the obsolete and unused parameters of init_put_bits 2003-10-12 21:25:00 +00:00
cabac.h get_bit_count -> put_bits_count 2004-02-06 17:51:58 +00:00
cinepak.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
cljr.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
common.c 2 byte shorter userdata for mpeg4 2004-02-08 22:52:35 +00:00
common.h multithreaded/SMP motion estimation 2004-02-13 17:54:10 +00:00
cyuv.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
dct-test.c 10l 2003-10-25 19:44:37 +00:00
Doxyfile even more fixes 2003-03-10 11:24:10 +00:00
dpcm.c handle 0-length buffers 2004-01-31 17:30:28 +00:00
dsputil.c quantizer noise shaping optimization 2004-02-06 02:12:37 +00:00
dsputil.h quantizer noise shaping optimization 2004-02-06 02:12:37 +00:00
dv.c 10000l 2004-01-04 19:49:57 +00:00
dvdata.h * 3x encoding speedup. Finally we seem to be on par with libdv 2003-11-27 01:40:13 +00:00
error_resilience.c copyright year update of the files i touched and remembered, things look annoyingly unmaintained otherwise 2004-01-10 16:04:55 +00:00
eval.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
faac.c Patch for AAC encoding with libfaac by (Gildas Bazin <gbazin at altern dot org>) 2003-10-04 09:53:34 +00:00
faad.c av_log patch(2 of ?) by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 18:06:54 +00:00
faandct.c move identical code into its own function 2003-10-30 22:51:02 +00:00
faandct.h * adding integer/floating point AAN implementations for DCT 2-4-8 2003-10-25 00:32:54 +00:00
fdctref.c per file doxy 2003-03-06 11:32:04 +00:00
fft-test.c per file doxy 2003-03-06 11:32:04 +00:00
fft.c per file doxy 2003-03-06 11:32:04 +00:00
ffv1.c get_bit_count -> put_bits_count 2004-02-06 15:27:31 +00:00
flicvideo.c Use reget buffer instead of copying from prev frame 2004-01-25 16:43:09 +00:00
g726.c * gotta setup coded_frame for encoding. avcodec.h says that for decoding 2004-02-10 20:48:09 +00:00
golomb.c inttypes.h patch by (Chip <szarlada at freemail dot hu>) 2004-01-22 12:09:14 +00:00
golomb.h 10l 2003-07-13 11:14:43 +00:00
h263.c multithreaded/SMP motion estimation 2004-02-13 17:54:10 +00:00
h263data.h interlaced motion estimation 2003-12-30 16:07:57 +00:00
h263dec.c closed gop support & flags2 as all bits in flags are used 2004-01-22 19:48:28 +00:00
h264.c get_bit_count -> put_bits_count 2004-02-06 15:27:31 +00:00
h264data.h AVRational 2003-10-20 20:23:46 +00:00
huffyuv.c get_bit_count -> put_bits_count 2004-02-06 15:27:31 +00:00
idcinvideo.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
imgconvert_template.h avcodec const correctness patch by (Drew Hess <dhess at ilm dot com>) 2003-09-29 15:44:59 +00:00
imgconvert.c ffv1 rgb support 2003-11-01 17:38:25 +00:00
imgresample.c avcodec const correctness patch by (Drew Hess <dhess at ilm dot com>) 2003-09-29 15:44:59 +00:00
indeo3.c segfault fix 2004-02-07 20:50:26 +00:00
indeo3data.h use const data - began to make code more portable 2003-09-09 22:56:25 +00:00
interplayvideo.c handle invalid buffer sizes 2004-01-31 18:17:38 +00:00
jfdctfst.c move identical code into its own function 2003-10-30 22:51:02 +00:00
jfdctint.c move identical code into its own function 2003-10-30 22:51:02 +00:00
jrevdct.c per file doxy 2003-03-06 11:32:04 +00:00
lcl.c Right fix for older zlib version 2004-01-13 20:26:44 +00:00
mace.c debug stuff only for DEBUG :) 2003-03-26 16:46:20 +00:00
Makefile multithreaded/SMP motion estimation 2004-02-13 17:54:10 +00:00
mdct.c per file doxy 2003-03-06 11:32:04 +00:00
mdec.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
mem.c per file doxy 2003-03-06 11:32:04 +00:00
mjpeg.c multithreaded/SMP motion estimation 2004-02-13 17:54:10 +00:00
motion_est_template.c multithreaded/SMP motion estimation 2004-02-13 17:54:10 +00:00
motion_est.c multithreaded/SMP motion estimation 2004-02-13 17:54:10 +00:00
motion_test.c per file doxy 2003-03-06 11:32:04 +00:00
mp3lameaudio.c CODEC_ID_MP3LAME is obsolete 2003-09-08 22:04:29 +00:00
mpeg4data.h AVRational 2003-10-20 20:23:46 +00:00
mpeg12.c multithreaded/SMP motion estimation 2004-02-13 17:54:10 +00:00
mpeg12data.h SVCD scan offset stuff 2004-01-04 00:23:14 +00:00
mpegaudio.c av_log patch(2 of ?) by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 18:06:54 +00:00
mpegaudio.h exported mpa_decode_header for new parser API 2003-11-10 15:21:16 +00:00
mpegaudiodec.c fixes by Gildas Bazin <gbazin at altern dot org> 2004-02-04 15:49:55 +00:00
mpegaudiodectab.h per file doxy 2003-03-06 11:32:04 +00:00
mpegaudiotab.h per file doxy 2003-03-06 11:32:04 +00:00
mpegvideo.c multithreaded/SMP motion estimation 2004-02-13 17:54:10 +00:00
mpegvideo.h multithreaded/SMP motion estimation 2004-02-13 17:54:10 +00:00
msmpeg4.c copyright year update of the files i touched and remembered, things look annoyingly unmaintained otherwise 2004-01-10 16:04:55 +00:00
msmpeg4data.h per file doxy 2003-03-06 11:32:04 +00:00
msrle.c watch those hard tabs 2004-01-31 17:57:57 +00:00
msvideo1.c watch those hard tabs 2004-01-31 17:57:57 +00:00
oggvorbis.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
oggvorbis.h per file doxy 2003-03-06 11:32:04 +00:00
opts.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
parser.c pts and dts support in parser API 2003-12-16 11:17:06 +00:00
pcm.c simpler 2003-09-28 20:27:56 +00:00
pthread.c multithreaded/SMP motion estimation 2004-02-13 17:54:10 +00:00
qtrle.c initial commit for Quicktime Animation (RLE) video decoder; bit depths 2004-02-05 05:22:44 +00:00
ra144.c segfault fix 2004-02-06 21:07:17 +00:00
ra144.h moved the tables into header files (and applied the 'static' patch). Nick: why do you like mergeing tables and code into one file, so making it unusable big? 2003-06-29 19:11:55 +00:00
ra288.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
ra288.h moved the tables into header files (and applied the 'static' patch). Nick: why do you like mergeing tables and code into one file, so making it unusable big? 2003-06-29 19:11:55 +00:00
ratecontrol.c copyright year update of the files i touched and remembered, things look annoyingly unmaintained otherwise 2004-01-10 16:04:55 +00:00
rational.c av_d2q() documentation 2003-11-16 19:23:39 +00:00
rational.h AVRational 2003-10-20 20:23:46 +00:00
raw.c Warning fixes. 2003-05-15 01:34:47 +00:00
resample.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
roqvideo.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
rpza.c watch those hard tabs 2004-01-31 17:57:57 +00:00
rv10.c rv10/obmc fixes 2004-02-09 15:23:35 +00:00
simple_idct.c per file doxy 2003-03-06 11:32:04 +00:00
simple_idct.h per file doxy 2003-03-06 11:32:04 +00:00
smc.c watch those hard tabs 2004-01-31 17:57:57 +00:00
sp5x.h Sunplus JPEG codec (SP5X) support 2003-10-11 21:49:10 +00:00
svq1_cb.h per file doxy 2003-03-06 11:32:04 +00:00
svq1_vlc.h rework SVQ1 decoder to use more intuitive VLC tables as well as ffmpeg's 2003-05-26 17:44:24 +00:00
svq1.c closed gop support & flags2 as all bits in flags are used 2004-01-22 19:48:28 +00:00
svq3.c closed gop support & flags2 as all bits in flags are used 2004-01-22 19:48:28 +00:00
truemotion1.c this should make the decoder safe for big-endian platforms 2003-12-04 14:14:43 +00:00
truemotion1data.h cosmetics 2003-12-08 11:35:09 +00:00
utils.c multithreaded/SMP motion estimation 2004-02-13 17:54:10 +00:00
vcr1.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
vmdav.c first pass at Sierra VMD A/V decoders; video looks great, audio is not 2004-01-02 04:45:06 +00:00
vp3.c FF_DEBUG_PICT_INFO and CODEC_FLAG_GRAY support 2003-12-08 18:26:22 +00:00
vp3data.h get those permutations straight 2003-05-11 02:51:07 +00:00
vqavideo.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
wmadata.h per file doxy 2003-03-06 11:32:04 +00:00
wmadec.c segfault fix 2004-01-18 21:57:32 +00:00
wmv2.c move motion_val & mb_type to AVFrame patch by (Wolfgang Hesseler <qv at multimediaware dot com>) 2003-12-09 01:49:56 +00:00
xan.c av_log() patch by (Michel Bardiaux <mbardiaux at peaktime dot be>) 2003-11-03 13:26:22 +00:00
xvmcvideo.c XvMC speedup by removing one memcpy and doing MB packing 2003-10-27 23:22:43 +00:00