summaryrefslogtreecommitdiff
path: root/vpxdec.c
AgeCommit message (Collapse)AuthorFilesLines
2014-10-01Adds support of 440 content.Deb Mukherjee1-1/+9
Adds enums and corresponding vpx level code. Change-Id: Ia402d47490a4466988d7edc6b7e3e5163f20a381
2014-09-29Miscellaneous decoder changes for high bitdepthDeb Mukherjee1-17/+26
Also includes yv12 config changes. Change-Id: Iacf40d8bf486815b54c32a127ce3cd4516b7e44f
2014-09-15Remove memset of every external frame buffer.Frank Galligan1-1/+1
Libvpx was memseting every external frame buffer before decode. This was to work around a valgrind issue in our C loop filter. Most of the time this was not needed and we have noticed some significant performance loss on some platforms. Now we require the application to zero out the buffers if it is using external frame buffers. Change-Id: I7330d00a315e65137ed30edd5f813e8929b76242
2014-09-02Removing legacy compatibility layer.Dmitry Kovalev1-1/+0
Change-Id: I6fdcea0e0faf42386dd2b8f972a3b3fb2c21b2c7
2014-09-02Adds config opt for highbitdepth + misc. vpxDeb Mukherjee1-1/+250
Adds config parameter vp9_highbitdepth, to support highbitdepth profiles. Also includes most vpx level high bit-depth functions. However encode/decode in the highbitdepth profiles will not work until the rest of the code is in place. Change-Id: I34c53b253c38873611057a6cbc89a1361b8985a6
2014-08-26Merge "Set scaled img format correctly in vpxdec"Deb Mukherjee1-1/+1
2014-08-22vpxdec: fix --keep-going with --disable-vp8James Zern1-5/+3
the parsing of this flag was mistakenly put in a CONFIG_VP8_DECODER conditional block in: 95853db vpxdec: add --keep-going option Change-Id: Ie83ca0399fd3f3d4b0a9d03b7ca5536b310e1f02
2014-08-22Set scaled img format correctly in vpxdecDeb Mukherjee1-1/+1
Use img->fmt rather than hardcoded I420P to support profiles 1-3. Change-Id: I31fc89e545208243e133512d41e2d97995a968ce
2014-08-19Merge changes I13d975d1,I26710359James Zern1-1/+6
* changes: vpxenc: fix compile with --disable-libyuv vpxdec: fix compile with --disable-libyuv
2014-08-19vpxdec.c : resolve uninitialized member warningJim Bankoski1-1/+2
Change-Id: Icd07ee241b1e36bb4c9e40e592bae259e65f2ce4
2014-08-15vpxdec: fix compile with --disable-libyuvJames Zern1-1/+6
Change-Id: I267103595f28c9d9dce2bc38e6db4e371acc7235
2014-08-13Initialization to prevent asan failure on google3Deb Mukherjee1-1/+1
Reinstates an assignment to prevent an asan failurere on google3. Not sure why the failure happens. This was removed in a recent patch https://gerrit.chromium.org/gerrit/#/c/71068/. Change-Id: Ifd9ccffd4c2164f4de38b21821ffb28bd779b0f3
2014-08-12fixes several -Wunused-function warningsJim Bankoski1-2/+2
Change-Id: I4dc2cb255f4fe30998b6ee61184895dee9f5da8e
2014-08-04vpxdec warning errors addressedJim Bankoski1-5/+6
Change-Id: I4e2aeaef3e6efd5be3cb963d2eba5e08dc89b803
2014-07-16Adds support for raw yuv files for 422/444Deb Mukherjee1-1/+28
Adds support for raw yuv inputs in 422/444 sampling for use in profiles 1 and 3. New options added to vpxenc are: --i422 and --i444, which are to be used in conjunction with --width, --height, and --fps for proper raw yuv handling. A new option is added to vpxdec: --rawvideo, which enforces raw yuv video output for the bit-stream decoded irrespective of 420, 422 or 444 sampling. The existing options --i420 and --yv12 are specialized for use only for 420 content. Change-Id: I2e3028380709afa673bf2e2c25ad5e271a626055
2014-07-15Renames interface field in VpxInterfaceDeb Mukherjee1-3/+4
Renames interface to codec_interface since it is a reserved word on windows. Change-Id: I84f2cbf257a4c44f16dc2464127e35ee405c2c3e
2014-07-14Misc. bit-depth related changesDeb Mukherjee1-1/+2
Sets the bit-depth field as default 8 in the image structure in vp8. Generalizes yuv read in preparation for support for reading 422/444 for 8-bit and 10/12-bit. Change-Id: I560c13c348b122fd028e408431156376b895058c
2014-07-05Adds support for reading and writing 10/12-bit y4mDeb Mukherjee1-1/+2
The y4m extension used is the same as the one used in ffmpeg/x264. The patch is adapted from the highbitdepth branch. Also adds unit tests for y4m header parsing and md5 check of the raw frame data, as well as y4m writing. [build fix for Mac/VS by not using tuples with strings] Change-Id: I40897ee37d289e4b6cea6fedc67047d692b8cb46
2014-07-03Merge "Reverting "Adds support for reading and writing 10/12-bit y4m" for ↵Dmitry Kovalev1-2/+1
now because of Mac Build Failure."
2014-07-02Reverting "Adds support for reading and writing 10/12-bit y4m" for now ↵Dmitry Kovalev1-2/+1
because of Mac Build Failure. This reverts commit 82dc1332af4b16d3e4ad3c4358498820637b7add Change-Id: I824bf42bf47c7df6985c79e451d6af913030d374
2014-07-02Merge "vpxdec: add --keep-going option"James Zern1-3/+8
2014-07-02Adds support for reading and writing 10/12-bit y4mDeb Mukherjee1-1/+2
The y4m extension used is the same as the one used in ffmpeg/x264. The patch is adapted from the highbitdepth branch. Also adds unit tests for y4m header parsing and md5 check of the raw frame data, as well as y4m writing. Change-Id: Ie2794daf6dbafd2f128464f9b9da520fc54c0dd6
2014-07-01vpxdec: add --keep-going optionJames Zern1-3/+8
for debugging purposes. continues decoding after receiving a decode error. will still exit with an error after the current loop, ignoring remaining --loops Change-Id: I011a71b866ff493a3f3bbb59e9bff998d19daee3
2014-05-20Updates libyuv to version 1005Deb Mukherjee1-0/+8
Also adds compile check and a libyuv configure flag Change-Id: Ib9f0f4a71c4083e6f0aea7b5a5d175531ef0f66b
2014-05-12vpxdec: add some missing CONFIG_WEBM_IO checksJames Zern1-1/+5
fixes build of this file in the dist directory when using '--enable-install-srcs' Change-Id: I7743611bea9e0bddb473777e2e007e6eadebfc1f
2014-04-22Rename FilterMode for compatibility with libyuvDeb Mukherjee1-1/+1
Renames FilterMode to FilterModeEnum for compatibility with google3 libyuv Change-Id: Iec845e6a6aeac4171790c87ce3dd9000ab840a36
2014-03-14Adding a configure flag to control WebM container supportVignesh Venkatasubramanian1-1/+13
Adding a --(enable|disable)-webm-io flag to control WebM container input and output support. For now, enabling WebM IO by default only when there is a C++ compiler. Doing so because eventually we will move WebM IO to libwebm and it is built using C++. Change-Id: I210ac36c23528e382ed41d3c4322291720481492
2014-02-26Reusing mem_get_le{16, 32} defined in vpx_ports/mem_opts.h.Dmitry Kovalev1-0/+1
Change-Id: If4b5209ac14aaba6f1c1014bc0497baa8eabfaff
2014-02-25Change dx_time data type in vpxdec.cJames Yu1-5/+6
Change dx_time data type to int64_t to prevent test time overflow when decoding long video. Change-Id: I3dd5e324a246843e07e635fd25c50e71e385ed70 Signed-off-by: James Yu <james.yu@linaro.org>
2014-02-15vp9_cx_iface vp9_dx_iface vpxdec vs warningsJim Bankoski1-3/+4
Change-Id: I747982e7d1157a8b45f4034ddf207306f9f957e0
2014-02-13Fix build error caused by a merge conflict.Alex Converse1-0/+1
Commit 70d9664f removed 'int i' required by a4f30a50. Change-Id: I4e7e14e9e8532f753e43a57b5bba4589d58e0c32
2014-02-13Merge "Add VP9 decoder support for external frame buffers"Frank Galligan1-1/+87
2014-02-13Add VP9 decoder support for external frame buffersFrank Galligan1-1/+87
Added support for external frame buffers to libvpx's VP9 decoder. If the external frame buffer functions are set then libvpx will call the get function whenever it needs a new frame buffer to decode a frame into. And it will call the release function whenever there are no more references to that buffer. Change-Id: Id2934d005f606af6e052fb6db0d5b7c02f567522
2014-02-12Adding and reusing vpx_img_plane_{width, height}() functions.Dmitry Kovalev1-16/+4
Change-Id: I668afb50614644d2eac2e968e1fafd6d73170bec
2014-02-11Adding API to get vpx encoder/decoder interface.Dmitry Kovalev1-46/+23
Change-Id: I137e5e6585356792913e1e84da6c0a439c5153a5
2014-02-04vpxdec: normalize frame size typesJames Zern1-2/+2
int -> size_t for threshold values. this silences a few signed/unsigned comparison warnings Change-Id: Ic7b7af61f75f60a1b6d04167640cea2d09bbd967
2014-01-31remove duplicate const from vpx_codec_iface_t useJames Zern1-1/+1
the public typedef already includes a const, quiets 'same type qualifier used more than once' warnings Change-Id: Ib118b3b116fba59d4c6ead84d85b26e5d3ed363d
2014-01-28vpxdec: restoring old md5 behavior for y4m files.Dmitry Kovalev1-8/+25
Fix of https://code.google.com/p/webm/issues/detail?id=698 issue. Change-Id: I7a92d91481dbbae28d8953f146e9faafdcd7a310
2014-01-24Merge "Revert external frame buffer code."Frank Galligan1-65/+1
2014-01-24Revert external frame buffer code.Frank Galligan1-65/+1
A future CL will add external frame buffers differently. Squash commit of four revert commits: Revert "Increase required number of external frame buffers" This reverts commit 9e41d569d7c84dd9ca8f0047c15377a883945685. Revert "Add external constants." This reverts commit bbf53047b03106e3c2e24b28cb836cc838db5ee8. Revert "Add frame buffer lru cache." This reverts commit fbada948fa345e67acf9aa41a8f9a78f5dfe8648. Conflicts: vpxdec.c Change-Id: I76fe42419923a6ea6c75d9997cbbf941d73d3005 Revert "Add support to pass in external frame buffers." This reverts commit 10f891696bc4c972c13cc9fde2c53470501a03e2. Conflicts: test/external_frame_buffer_test.cc vp9/common/vp9_alloccommon.c vp9/common/vp9_reconinter.c vp9/decoder/vp9_decodeframe.c vp9/encoder/vp9_onyx_if.c vp9/vp9_dx_iface.c vpx/vpx_decoder.h vpx/vpx_external_frame_buffer.h vpx_scale/generic/yv12config.c vpxdec.c Change-Id: I7434cf590f1c852b38569980e4247fad0d939c2e
2014-01-23vpxdec: grouping together code with the same if conditionsDmitry Kovalev1-31/+29
Change-Id: I5e546fce725b8c4722da5494e9423154e870fd58
2014-01-22vpxdec: Disable writing of Y4M header when --md5 argument is specified.Dmitry Kovalev1-1/+1
Change-Id: I2380b1b80f48496732b69c8255a485024d375f0f
2014-01-22Merge "Removing out_open() & out_close() functions from vpxdec."Dmitry Kovalev1-79/+79
2014-01-22Tidy up comments & remove commented out code.Adrian Grange1-1/+2
Change-Id: I46dd5ce06f36362c6274511cd1531d93926aa9bc
2014-01-22Removing out_open() & out_close() functions from vpxdec.Dmitry Kovalev1-79/+79
Change-Id: I60f2ce77638cf7d2116bc1e64b466942c76644e0
2014-01-17Moving y4m encoding functions into separate files.Dmitry Kovalev1-23/+6
Change-Id: I03f614872167841515a74740d654c008b60104a4
2014-01-17Adding vpx_image_scale() function in vpxdec.Dmitry Kovalev1-18/+20
Change-Id: I29eaffff5089b26e8778a977c3b3da11800f1c49
2014-01-17Removing out_put() function from vpxdec.c.Dmitry Kovalev1-42/+59
Adding two new functions: update_image_md5() and write_image_file(). Change-Id: Ic3e7e6ef08e70fb15ab021c92127872f29bcad9b
2014-01-15Removing VP8_FOURCC_MASK & VP9_FOURCC_MASK.Dmitry Kovalev1-4/+3
There is no reason to have fourcc masks, everything just works without them. Change-Id: I1d48100e7b7d5ef55ec49a708ba6adcb9ab4ecd8
2014-01-15Merge "Removing VpxInputContext dependency from {ivf, raw}_read_frame()."Dmitry Kovalev1-4/+3