summaryrefslogtreecommitdiff
path: root/libavcodec/frame_thread_encoder.c
Commit message (Collapse)AuthorAge
* frame_thread_encoder: use ref-counting to avoid memcpy of all input framesHendrik Leppkes2014-12-23
| | | | | | Apparently uneeded lock/unlock removed by commiter Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* huffyuvenc: add a non-deterministic optionChristophe Gisquet2014-08-19
| | | | | | | | | | | | Not actually used in huffyuvenc, but rather in setting the frame threading. Example for some files: context=0: 851974 27226 1137281 context=1,ND=0: 471819 22604 972351 context=1,ND=1: 472875 22673 972582 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* lavc/frame_thread_encoder: use av_fifo_alloc_arrayLukasz Marek2014-05-20
| | | | Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
* lavc: use av_fifo_freepLukasz Marek2014-05-07
| | | | Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
* Fix dont and doesnt typosMichael Niedermayer2014-04-27
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avcodec/frame_thread_encoder: warn about huffyuv limitationsMichael Niedermayer2014-02-15
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avcodec/frame_thread_encoder: restructure huffyuv checksMichael Niedermayer2014-02-15
| | | | | | This makes them similar to the other checks Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Warn the user if mjpeg cbr encoding with frame threading was requested.Carl Eugen Hoyos2014-01-30
|
* Force automatic thread_count to 1 for cbr mjpeg frame threading.Carl Eugen Hoyos2014-01-30
| | | | Constant bit rate mjpeg encoding fails for threads > 1 and frame threading.
* avcodec/huffyuvenc: frame multi-threading supportMichael Niedermayer2014-01-28
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* os2threads: move from lavc to compat/Dave Yeo2013-05-28
| | | | | | | For useage in other places besides lavc. Needed after commit 90f9a5830b5d332de7ebb1ab45589f1870cbd65d Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avcodec: remove ff_get_logical_cpus()Michael Niedermayer2013-05-24
| | | | | | This simplifies the code Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Merge commit '90f9a5830b5d332de7ebb1ab45589f1870cbd65d'Michael Niedermayer2013-05-24
| | | | | | | | | | | | * commit '90f9a5830b5d332de7ebb1ab45589f1870cbd65d': w32pthreads: move from lavc to compat/ Conflicts: libavcodec/Makefile libavcodec/pthread.c libavcodec/vp8.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
* Merge commit '759001c534287a96dc96d1e274665feb7059145d'Michael Niedermayer2013-03-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '759001c534287a96dc96d1e274665feb7059145d': lavc decoders: work with refcounted frames. Anton Khirnov (1): lavc decoders: work with refcounted frames. Clément Bœsch (47): lavc/ansi: reset file lavc/ansi: re-do refcounted frame changes from Anton fraps: reset file lavc/fraps: switch to refcounted frames gifdec: reset file lavc/gifdec: switch to refcounted frames dsicinav: resolve conflicts smc: resolve conflicts zmbv: resolve conflicts rpza: resolve conflicts vble: resolve conflicts xxan: resolve conflicts targa: resolve conflicts vmnc: resolve conflicts utvideodec: resolve conflicts tscc: resolve conflicts ulti: resolve conflicts ffv1dec: resolve conflicts dnxhddec: resolve conflicts v210dec: resolve conflicts vp3: resolve conflicts vcr1: resolve conflicts v210x: resolve conflicts wavpack: resolve conflicts pngdec: fix compilation roqvideodec: resolve conflicts pictordec: resolve conflicts mdec: resolve conflicts tiertexseqv: resolve conflicts smacker: resolve conflicts vb: resolve conflicts vqavideo: resolve conflicts xl: resolve conflicts tmv: resolve conflicts vmdav: resolve conflicts truemotion1: resolve conflicts truemotion2: resolve conflicts lcldec: fix compilation libcelt_dec: fix compilation qdrw: fix compilation r210dec: fix compilation rl2: fix compilation wnv1: fix compilation yop: fix compilation tiff: resolve conflicts interplayvideo: fix compilation qpeg: resolve conflicts (FIXME/TESTME). Hendrik Leppkes (33): 012v: convert to refcounted frames 8bps: fix compilation 8svx: resolve conflicts 4xm: resolve conflicts aasc: resolve conflicts bfi: fix compilation aura: fix compilation alsdec: resolve conflicts avrndec: convert to refcounted frames avuidec: convert to refcounted frames bintext: convert to refcounted frames cavsdec: resolve conflicts brender_pix: convert to refcounted frames cinepak: resolve conflicts cinepak: avoid using AVFrame struct directly in private context cljr: fix compilation cpia: convert to refcounted frames cscd: resolve conflicts iff: resolve conflicts and do proper conversion to refcounted frames 4xm: fix reference frame handling cyuv: fix compilation dxa: fix compilation eacmv: fix compilation eamad: fix compilation eatgv: fix compilation escape124: remove unused variable. escape130: convert to refcounted frames evrcdec: convert to refcounted frames exr: convert to refcounted frames mvcdec: convert to refcounted frames paf: properly free the frame data on decode close sgirle: convert to refcounted frames lavfi/moviesrc: use refcounted frames Michael Niedermayer (56): Merge commit '759001c534287a96dc96d1e274665feb7059145d' resolve conflicts in headers motion_est: resolve conflict mpeg4videodec: fix conflicts dpcm conflict fix dpx: fix conflicts indeo3: resolve confilcts kmvc: resolve conflicts kmvc: resolve conflicts h264: resolve conflicts utils: resolve conflicts rawdec: resolve conflcits mpegvideo: resolve conflicts svq1enc: resolve conflicts mpegvideo: dont clear data, fix assertion failure on fate vsynth1 with threads pthreads: resolve conflicts frame_thread_encoder: simple compilefix not yet tested snow: update to buffer refs crytsalhd: fix compile dirac: switch to new API sonic: update to new API svq1: resolve conflict, update to new API ffwavesynth: update to new buffer API g729: update to new API indeo5: fix compile j2kdec: update to new buffer API linopencore-amr: fix compile libvorbisdec: update to new API loco: fix compile paf: update to new API proresdec: update to new API vp56: update to new api / resolve conflicts xface: convert to refcounted frames xan: fix compile&fate v408: update to ref counted buffers v308: update to ref counted buffers yuv4dec: update to ref counted buffers y41p: update to ref counted frames xbm: update to refcounted frames targa_y216: update to refcounted buffers qpeg: fix fate/crash cdxl: fix fate tscc: fix reget buffer useage targa_y216dec: fix style msmpeg4: fix fate h264: ref_picture() copy fields that have been lost too update_frame_pool: use channel field h264: Put code that prevents deadlocks back mpegvideo: dont allow last == current wmalossless: fix buffer ref messup ff_alloc_picture: free tables in case of dimension mismatches h264: fix null pointer dereference and assertion failure frame_thread_encoder: update to bufrefs ec: fix used arrays snowdec: fix off by 1 error in dimensions check h264: disallow single unpaired fields as references of frames Paul B Mahol (2): lavc/vima: convert to refcounted frames sanm: convert to refcounted frames Conflicts: libavcodec/4xm.c libavcodec/8bps.c libavcodec/8svx.c libavcodec/aasc.c libavcodec/alsdec.c libavcodec/anm.c libavcodec/ansi.c libavcodec/avs.c libavcodec/bethsoftvideo.c libavcodec/bfi.c libavcodec/c93.c libavcodec/cavsdec.c libavcodec/cdgraphics.c libavcodec/cinepak.c libavcodec/cljr.c libavcodec/cscd.c libavcodec/dnxhddec.c libavcodec/dpcm.c libavcodec/dpx.c libavcodec/dsicinav.c libavcodec/dvdec.c libavcodec/dxa.c libavcodec/eacmv.c libavcodec/eamad.c libavcodec/eatgq.c libavcodec/eatgv.c libavcodec/eatqi.c libavcodec/error_resilience.c libavcodec/escape124.c libavcodec/ffv1.h libavcodec/ffv1dec.c libavcodec/flicvideo.c libavcodec/fraps.c libavcodec/frwu.c libavcodec/g723_1.c libavcodec/gifdec.c libavcodec/h264.c libavcodec/h264.h libavcodec/h264_direct.c libavcodec/h264_loopfilter.c libavcodec/h264_refs.c libavcodec/huffyuvdec.c libavcodec/idcinvideo.c libavcodec/iff.c libavcodec/indeo2.c libavcodec/indeo3.c libavcodec/internal.h libavcodec/interplayvideo.c libavcodec/ivi_common.c libavcodec/jvdec.c libavcodec/kgv1dec.c libavcodec/kmvc.c libavcodec/lagarith.c libavcodec/libopenjpegdec.c libavcodec/mdec.c libavcodec/mimic.c libavcodec/mjpegbdec.c libavcodec/mjpegdec.c libavcodec/mmvideo.c libavcodec/motion_est.c libavcodec/motionpixels.c libavcodec/mpc7.c libavcodec/mpeg12.c libavcodec/mpeg4videodec.c libavcodec/mpegvideo.c libavcodec/mpegvideo.h libavcodec/msrle.c libavcodec/msvideo1.c libavcodec/nuv.c libavcodec/options_table.h libavcodec/pcx.c libavcodec/pictordec.c libavcodec/pngdec.c libavcodec/pnmdec.c libavcodec/pthread.c libavcodec/qpeg.c libavcodec/qtrle.c libavcodec/r210dec.c libavcodec/rawdec.c libavcodec/roqvideodec.c libavcodec/rpza.c libavcodec/smacker.c libavcodec/smc.c libavcodec/svq1dec.c libavcodec/svq1enc.c libavcodec/targa.c libavcodec/tiertexseqv.c libavcodec/tiff.c libavcodec/tmv.c libavcodec/truemotion1.c libavcodec/truemotion2.c libavcodec/tscc.c libavcodec/ulti.c libavcodec/utils.c libavcodec/utvideodec.c libavcodec/v210dec.c libavcodec/v210x.c libavcodec/vb.c libavcodec/vble.c libavcodec/vcr1.c libavcodec/vmdav.c libavcodec/vmnc.c libavcodec/vp3.c libavcodec/vp56.c libavcodec/vp56.h libavcodec/vp6.c libavcodec/vqavideo.c libavcodec/wavpack.c libavcodec/xl.c libavcodec/xxan.c libavcodec/zmbv.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* Merge commit '594d4d5df3c70404168701dd5c90b7e6e5587793'Michael Niedermayer2012-12-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '594d4d5df3c70404168701dd5c90b7e6e5587793': lavc: add a wrapper for AVCodecContext.get_buffer(). Conflicts: libavcodec/4xm.c libavcodec/8svx.c libavcodec/bmv.c libavcodec/cljr.c libavcodec/cscd.c libavcodec/dnxhddec.c libavcodec/dpcm.c libavcodec/dpx.c libavcodec/eacmv.c libavcodec/eamad.c libavcodec/frwu.c libavcodec/g723_1.c libavcodec/gifdec.c libavcodec/idcinvideo.c libavcodec/iff.c libavcodec/indeo3.c libavcodec/internal.h libavcodec/interplayvideo.c libavcodec/kmvc.c libavcodec/mpc7.c libavcodec/mpegaudiodec.c libavcodec/pcx.c libavcodec/pngdec.c libavcodec/pnmdec.c libavcodec/rl2.c libavcodec/snow.c libavcodec/targa.c libavcodec/tscc.c libavcodec/txd.c libavcodec/utils.c libavcodec/v210dec.c libavcodec/vb.c libavcodec/vmdav.c libavcodec/vp56.c libavcodec/vqavideo.c libavcodec/wavpack.c libavcodec/wnv1.c libavcodec/xl.c libavcodec/yop.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* frame_thread_encoder: silence integer to pointer without cast warningMichael Niedermayer2012-11-08
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* frame_thread_encoder: fix handling of case where the encoder does not output ↵Michael Niedermayer2012-11-05
| | | | | | | | a packet. This case could cause a deadlock Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* frame_thread_encode: fix context memleakMichael Niedermayer2012-10-28
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* frame_thread_encoder: fix packet memleakMichael Niedermayer2012-10-28
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* frame_thread_encoder: pass frame pict type and qualityMichael Niedermayer2012-08-29
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* frame_thread_encoder: pass private optionsMichael Niedermayer2012-08-29
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* lavc: add frame multithreading capability (currently intra only)Michael Niedermayer2012-06-23
Compared to the decoder side, this code is able to change both the delay and the number of threads seamlessly during encoding. Also any idle thread can pick up tasks, the strict round robin in order limit is gone too. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>