summaryrefslogtreecommitdiff
path: root/vp8/decoder/decodframe.c
AgeCommit message (Collapse)Author
2013-12-03Fix a spelling mistake in filenameYaowu Xu
Change-Id: Ic06124ed95a50935b1c6509907dcac87c7707bcc
2013-12-03Fix VP8 border replication for very small imageYaowu Xu
Also added a test vector for this issue. Change-Id: I8a8654f9d33b27afd53c295f1ea44d198550d067
2013-10-29decodframe.c: use vpx_memset instead of castJohann
Fix warning with -Wstrict-aliasing=1 Change-Id: Ic4e511af924247800e87d5f990636565f3dd91d2
2013-09-23fix integer overflow in vp8Yaowu Xu
Change-Id: I62550a7a883115f3ce878710cf3bb039bea54390
2013-09-17Silence a bunch of MSVC warningsYaowu Xu
Change-Id: I16633269582a640809dca27572bbe99efa6369fc
2013-07-12yv12config: remove YUV_TYPEJames Zern
this was never fleshed out in the context of VP8, for which it was added. for VP9 it has no meaning. Change-Id: Iba2ecc026d9e947067b96690245d337e51e26eff
2013-06-17Change the encryption feature to use a callback for decryption.Jeff Petkau
This allows code calling the library can choose an arbitrary encryption algorithm. Decoder control parameter VP8_SET_DECRYPT_KEY is renamed to VP8D_SET_DECRYPTOR, and now takes an small config struct instead of just a byte array. Change-Id: I0462b3388d8d45057e4f79a6b6777fe713dc546e
2013-04-19Merge "Removed shadow warnings : postproc.c decodframe.c threading.c"Scott LaVarnway
2013-03-15Basic encryption feature for libvpx.Dmitry Kovalev
New decoder control paramter VP8_SET_DECRYPT_KEY to set the decryption key. Change-Id: I6fc1f44d41f74f3b3f702778af1a6f8f5cc9439f
2013-03-14Removed shadow warnings : postproc.c decodframe.c threading.cScott LaVarnway
and denoising.c Adding -Wshadow to CFLAGS generated a bunch of warnings. This patch removes these warnings. Change-Id: I434a9f4bfac9ad4ab7d2a67a35ef21e6636280da
2013-01-29Use FRAGMENT_DATA struct in pbiScott LaVarnway
for fragment information. Change-Id: Idc83625591a1e4ca6f551dcfb7fc0428f6f37351
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-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-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-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-22Merge "Added row based extend borders"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-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-23Removed mcomp_filter_typeScott LaVarnway
and replaced with use_bilinear_mc_filter. Change-Id: Ie9e9f0bccca4ab7d3e23ae045aefed33536103ff
2012-04-23Merge "Removes duplication of key frame mode probabilities"Scott LaVarnway
2012-04-23Optimizes precalculated decoder block ptrs&offsAttila Nagy
The block pointers and offset do not need to be calculated for every frame. Block internal predictors can be update once when decoder is allocated. Destination and previous buffer offsets have to be updated just when frame size is changing. Change-Id: I92ca8df0e6aaac4cc35ab890751d446760bf82e2
2012-04-23Removes duplication of key frame mode probabilitiesAttila Nagy
Key frame macrobock and block mode probabilities are constant. Remove the allocation of tables for each codec instance and use instead the default const prob tables. Change-Id: I8361798ac491f9b3889e86925a494c58647c753f
2012-04-19Ports vpx_xcaler to new RTCD methodAttila Nagy
We can get rid of all remaining global initializers now: vp8_scale_machine_specific_config() vp8_initialize() vp8dx_initialize() Change-Id: I2825cea5d1c01ad9f6c45df49a0f86d803bfeb69
2012-03-26Removed duplicate vp8_build_intra_predictors_mb y/uvScott LaVarnway
Added y/uv stride as a parameter and remove the duplicate code. Change-Id: I019117a9dd9659a09d3d4e845d4814d3f33341b5
2012-03-08threading.c refactoringScott LaVarnway
Added recon above/left to MACROBLOCKD Reworked decode_macroblock Change-Id: I9c26870af75797134f410acbd02942065b3495c1
2012-02-29Decoder loops refactoringScott LaVarnway
Eliminated some mb branches along with other code cleanups. This is part of an ongoing effort to remove cut/paste code in the decoder. Change-Id: Ifabb0f67cafa6922b5a0e89a0d03a9b34e9e5752
2012-02-28Merge changes Ifb450710,I61c4a132Scott LaVarnway
* changes: Eliminated reconintra_mt.c Eliminated vp8mt_build_intra_predictors_mbuv_s
2012-02-28Eliminated reconintra_mt.cScott LaVarnway
Reworked the code to use vp8_build_intra_predictors_mby_s, vp8_intra_prediction_down_copy, and vp8_intra4x4_predict_d_c functions instead. vp8_intra4x4_predict_d_c is a decoder-only version of vp8_intra4x4_predict. Future commits will fix this code duplication. Change-Id: Ifb4507103b7c83f8b94a872345191c49240154f5