summaryrefslogtreecommitdiff
path: root/vp8/decoder
AgeCommit message (Collapse)Author
2013-03-01Merge master branch into experimentalJohn Koleszar
Picks up some build system changes, compiler warning fixes, etc. Change-Id: I2712f99e653502818a101a72696ad54018152d4e
2013-01-30WIP: Multiple decoder instances supportScott LaVarnway
Started adding support for multiple internal decoder instances. Also added code to limit the vp8 config options available when using frame-based multithreading. Change-Id: I0f1ee7abcfcff59204f50162e28254b8dd6972eb
2013-01-29Use FRAGMENT_DATA struct in pbiScott LaVarnway
for fragment information. Change-Id: Idc83625591a1e4ca6f551dcfb7fc0428f6f37351
2013-01-25Merge "Bug fix: error-concealment enabled changed postproc output"Jim Bankoski
2013-01-25Bug fix: error-concealment enabled changed postproc outputScott LaVarnway
When error concealment is enabled, it swaps the mi and prev_mi ptrs after each frame is decoded. The postproc uses the mi ptr for the mode info context. Now the postproc will use the correct mode info context. Change-Id: I537ae5450f319c624999b44525bb52bb30047b7b
2013-01-25Merge "Bug fix: Handle input data ptr = NULL and size = 0 correctly"Marco Paniconi
2013-01-22Bug fix: Handle input data ptr = NULL and size = 0 correctlyScott LaVarnway
Issue 517: Issues decoding VPX_CODEC_USE_INPUT_FRAGMENTS http://code.google.com/p/webm/issues/detail?id=517 Change-Id: I030c4cf15b1e1b993433571b6ee77c959a368ff2
2013-01-08Merge vp9-preview changes into experimental branchJohn Koleszar
Incorportate vp9-preview changes by merging master branch into experimental. Conflicts: test/test.mk vp9/common/vp9_filter.c vp9/common/vp9_idctllm.c vp9/common/vp9_invtrans.h vp9/common/vp9_mbpitch.c vp9/common/vp9_rtcd_defs.sh vp9/common/vp9_systemdependent.h vp9/common/vp9_type_aliases.h vp9/common/x86/vp9_asm_stubs.c vp9/common/x86/vp9_subpixel_mmx.asm vp9/decoder/vp9_decodframe.c vp9/decoder/vp9_dequantize.c vp9/decoder/vp9_dequantize.h vp9/decoder/vp9_onyxd_int.h vp9/encoder/vp9_bitstream.c vp9/encoder/vp9_encodeframe.c vp9/encoder/vp9_rdopt.c Change-Id: I17f51c3666d1b59cf1a699f87607cbc5d30a87c5
2012-12-27Merge branch 'vp9-preview' of review:webm/libvpxJohn Koleszar
Merge the vp9-preview branch into master. Change-Id: If700b9054676f24bed9deb59050af546c1ca5296
2012-12-05Use 'vpx_scale' consistentlyJohann
Change-Id: I178352813d2b8702d081caf405de9dbad9af2cc3
2012-11-15support building vp8 and vp9 into a single libJohn Koleszar
Change-Id: Ib8f8a66c9fd31e508cdc9caa662192f38433aa3d
2012-11-06use calloc() instead of malloc()Pascal Massimino
So that, in case of error, the arrays are not filled with trash pointers that are attempted a free() during vp8mt_de_alloc_temp_buffers() Change-Id: Ic074549c2903a43316510eb42e4f393e7d3ee528
2012-10-31vp8dx_receive_compressed_data() cleanupScott LaVarnway
Change-Id: I6edf0626d00ae177c7c04eec64e1ec0dd861dfbe
2012-09-24Merge "Move frame allocations out of vp8_decode_frame()"Scott LaVarnway
2012-09-24Move frame allocations out of vp8_decode_frame()Scott LaVarnway
in order to make it easier to implement the frame-base multithreading. Change-Id: Iea2fd05be34fa704848fdc7669bf167f2ed229c5
2012-09-21Removed bc and bc2 vp8_readers from VP8D_COMPScott LaVarnway
Used mbc instead. Change-Id: If22136b4fee89b68ca2246265f3c27853701136c
2012-09-17Merge "Changed setup intra recon to be row based"Scott LaVarnway
2012-09-13Moved mb_no_coeff_skip flag readScott LaVarnway
from vp8_decode_frame() to mb_mode_mv_init() Change-Id: I267fd764a4c826d62e6799dceb1b8fb5f97fde6d
2012-09-13Changed setup intra recon to be row basedScott LaVarnway
Initialize the top line at the beginning of each frame and the left column at the beginning of each row. Change-Id: I5412f7ea49ffc490215cf65a62715a6c5e3a5a29
2012-09-12Merge "valgrind found motion vectors which exceeded frame boundaries"Jim Bankoski
2012-09-11fix valgrind mem leak on garbage decodeJim Bankoski
Multiple decoders were getting allocated per frame. If the decoder crashed we exitted with out freeing them and the next time in we'd allocate over. This fix removes the allocation and just has 8 boolcoders in the pbi structure Change-Id: I638b5bda23b622b43b7992aec21dd7cf6f6278da
2012-09-11valgrind found motion vectors which exceeded frame boundariesScott LaVarnway
Bug introduced in I02d034c70cd97b65025d59dd67c695e1db529f0b Change-Id: Ifb74ab659f3b3cf5f5b95046bacffb202d5b4d64
2012-09-07valgrind caught uninitialized condJim Bankoski
If the decoder crashes and returned an error before it set up block offsets but after it set up frame buffers. We had a problem decoding the next keyframe because the block offsets were never set. Change-Id: Ied2866e9770d80fc66241d5e0d978d4f5f9cdd89
2012-08-28Merge "silent one more compiler warning"Yaowu Xu
2012-08-28silent one more compiler warningYaowu Xu
Change-Id: I621a2bbd5f07691fa76dac36b65f406ad4fed792
2012-08-22Merge "Added row based extend borders"Scott LaVarnway
2012-08-21Merge "Removed unused dr from VP8D_COMP"Scott LaVarnway
2012-08-21Merge "Removed last_kf_gf_q"Scott LaVarnway
2012-08-21Added row based extend bordersScott LaVarnway
Required for frame-based multithreading Change-Id: I361ec468b5bda7836116c5f0bf3a83f60c214a73
2012-08-21Merge "Added row based loopfilter"Jim Bankoski
2012-08-20silent compiling warnings for VC9 buildYaowu Xu
Change-Id: Iaa947e640f27e6f6eaf7d845f243536bca2df513
2012-08-02Pass B_PREDICTION_MODE to intra4x4_predictJohann
Use the correct type when calling and inside the function. Change-Id: Idbaf1bf58b9574f0cba73d78780e9aedd8889dfd
2012-08-02Removed last_kf_gf_qScott LaVarnway
Not used. Change-Id: I7595cb21db73bd56ee4d9280ecb7ab9b1240f4e2
2012-08-02Added row based loopfilterScott LaVarnway
Interleaved loopfiltering with decode. For 1080p clips, up to 1% performance gain. For 4k clips, up to 10% seen. This patch is required for better "frame-based" multithreading. Change-Id: Ic834cf32297cc04f27e8205652fb9f70cbe290db
2012-08-01Rename vp8_intra4x4_predict_dJohann
predict_d has become canonical. Remove previous helper function. Disable ARM assembly pending update. Change-Id: Idd84ac8a28f9b0221ea97904a77de1e705d06a7d
2012-08-01Use intra4x4_predict_d parameter namesJohann
Rename the local variables for consistency. Change-Id: Ic202ff54551332f706d97da9b67b2e0959ee7f61
2012-08-01use RTCD pointer for intra4x4_predictJohann
Change-Id: I4161389ff02aa37636540ac0fe0fe9763d52ebdc
2012-06-20Fix compilation with -werrorJohn Koleszar
Fix a last few warnings with multithread, arm, 32 bit Change-Id: Ic7c67616c370d0ff87562a232fb1e5df0702dc86
2012-06-11Fix pedantic compiler warningsJohn Koleszar
Allows building the library with the gcc -pedantic option, for improved portabilty. In particular, this commit removes usage of C99/C++ style single-line comments and dynamic struct initializers. This is a continuation of the work done in commit 97b766a46, which removed most of these warnings for decode only builds. Change-Id: Id453d9c1d9f44cc0381b10c3869fabb0184d5966
2012-06-04Remove extra enumJohann
VP8_REFFRAME is the same as vpx_ref_frame_type Change-Id: I63c2ddfb39f6ec87d1e5eb6a8852846464552b1b
2012-06-01Removed unused dr from VP8D_COMPScott LaVarnway
Code cleanup Change-Id: Ic90a9a566de9a05b5ebabd19565557627aa9d419
2012-05-23Fix another multithreaded encoder loopfilter race conditionAttila Nagy
After a key frame encoding, the frame type could change while filtering is still going on. Pass the frame type as parameter to the loopfilter function and don't read it from common storage. vp8cx_set_alt_lf_level has to be done before packing the stream. Currently alt_lf_level is not used so there hasn't been any visible problem here. Change-Id: Ia114162158cd833c2b16e3b89303cc9c91f19165
2012-05-11fix warnings for building on win32Scott Graham
Change-Id: If6e11ba3d681e831d7d98662c0abdd2ac16b3811
2012-05-11Merge branch 'origin/eider' into masterJohn Koleszar
Conflicts: vp8/common/entropymode.c vp8/common/entropymode.h vp8/encoder/encodeframe.c vp8/vp8_cx_iface.c Change-Id: I708b0f30449b9502b382e47b745d56f5ed2ce265
2012-05-04fix vp8_ namespace issuesJohn Koleszar
Make functions only referenced from one translation unit static. Other symbols with extern linkage get a vp8/vpx prefix. Change-Id: I928c7e0d0d36e89ac78cb54ff8bb28748727834f
2012-05-04Make global data constAttila Nagy
Removes all runtime initialization of global data. This commit is a squashed version of the following series cherry-picked from master. This is necessary because of a change that was merged to the tester that depends on the scaler being moved to the RTCD framework, which is a worthwhile thing to include in Eider anyway. - a91b42f02 Makes all global data in entropy.c const - b35a0db0e Makes all global data in tokenize.c const - 441cac8ea Makes all mode token tables const - 5948a0210 Ports vpx_xcaler to new RTCD method - 317d4244c Makes all mode token tables const part 2 Change-Id: Ifeaea24df2b731e7c509fa6c6ef6891a374afc26
2012-05-02Fix compiler warningsAttila Nagy
Fix code for following warnings: -Wimplicit-function-declaration -Wuninitialized -Wunused-but-set-variable -Wunused-variable Change-Id: I2be434f22fdecb903198e8b0711255b4c1a2947a
2012-04-26Moves error concealment allocations from common parts to decoderAttila Nagy
The backup MODE_INFO buffer used in the error concealment was allocated in the codec common parts allocation even though this is a decoder only resource. Moved the allocation to the decoder side. No need to update_mode_info_border as mode_info buffers are zero allocated. This fixes also a potential memory leak as the EC overlaps buffer was not properly released before reallocation after a frame size change. Change-Id: I12803d3e012308d95669069980b1c95973fb775f
2012-04-24Simplifies decoder multithread synchingAttila Nagy
Increment the last_row_mb_col counter by nsync after last MB of row is ready. This way we dont need to check for last MB of row when synching. Set last MB of row ready just after row extension is done, This avoids o potential race condition whit the processing of last MB of next row. Change-Id: I19c44fd6041116ee5483be2143b4f4bfcd149eac
2012-04-23Removed mcomp_filter_typeScott LaVarnway
and replaced with use_bilinear_mc_filter. Change-Id: Ie9e9f0bccca4ab7d3e23ae045aefed33536103ff