- 04 Sep, 2014 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I811526a9ee9f237604f72abe7fc677e39e0f457f
-
- 03 Sep, 2014 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I5a03496de035fbcf31e4527cd25fcae4627a57a0
-
- 02 Sep, 2014 - 1 commit
-
-
Deb Mukherjee authored
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
-
- 28 Aug, 2014 - 1 commit
-
-
Dmitry Kovalev authored
In order to understand memory layout consider the declaration of the following structs. The first one is a part of our API: struct vpx_codec_ctx { // ... struct vpx_codec_priv *priv; }; The second one is defined in vpx_codec_internal.h: struct vpx_codec_priv { // ... }; The following struct is defined 4 times for encoder/decoder VP8/VP9: struct vpx_codec_alg_priv { struct vpx_codec_priv base; // ... }; Private data allocation for the given ctx: struct vpx_codec_ctx *ctx = <get> struct vpx_codec_alg_priv *alg_priv = <allocate> ctx->priv = (struct vpx_codec_priv *)alg_priv; The cast works because vpx_codec_alg_priv has a vpx_codec_priv instance as a first member 'base'. Change-Id: I10d1afc8c9a7dfda50baade8c7b0296678bdb0d0
-
- 21 Aug, 2014 - 1 commit
-
-
Dmitry Kovalev authored
We don’t need to introduce new macro for the null value. Change-Id: I59dbae25feeebb4e8359095801aecc8bb17d7764
-
- 20 Aug, 2014 - 1 commit
-
-
Dmitry Kovalev authored
The iface pointer is already in vpx_codec_ctx struct. Change-Id: I9fffe27c613a7c94476f185a1e5a53ff6d99f1c6
-
- 18 Aug, 2014 - 1 commit
-
-
Minghai Shang authored
1. Clean the code for encode frame tests 2. Add encode w/ and w/o alt reference frame test 3. Add encode SNR layers test 4. Add encode multiple layers but decode partial layers test Change-Id: Ibd2c9bc02525db584a6f931a98405f2d851b3cd6
-
- 13 Aug, 2014 - 1 commit
-
-
James Zern authored
if the decode of the first frame fails, frame_to_show may not be set. fixes a crash in vpxdec with corrupt data. Change-Id: I5ab9476d005778a13fd42a39d05876bb6c90a93c
-
- 08 Aug, 2014 - 1 commit
-
-
Adrian Grange authored
Replaced encoder and decoder functions to get a pointer to a reference frame with a common function, vp9_get_ref_frame, and simplified it. Change-Id: Icb206fcce8caace3bfd1db3dbfa318dde79043ee
-
- 07 Aug, 2014 - 1 commit
-
-
Deb Mukherjee authored
Specifies the bit-depth, color sampling and colorspace for intra only frames for profiles > 0 Also adds checks to ensure that profile 1 and 3 are exclusively used for non 420 streams. Change-Id: Icfb15fa1acccbce8f757c78fa8a2f60591360745
-
- 06 Aug, 2014 - 1 commit
-
-
Hangyu Kuang authored
When no more data is available, vpx_codec_decode should be called with NULL as data and 0 as data_sz. vpx_codec_get_frame iterates over a list of the frames available for display. The iterator storage should be initialized to NULL to start the iteration. Iteration is complete when this function returns NULL. Also change the unit test to conform to the api spec. Change-Id: I4b258b309f5df3d37d10c82f01492c0394181c2a
-
- 05 Aug, 2014 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I60ffee7cf78e748792fa6d109322ec32f92e40a9
-
- 31 Jul, 2014 - 1 commit
-
-
Jim Bankoski authored
Change-Id: I1092239e21c1cde188ee2dcb765f4c6fc8c5cdec
-
- 21 Jul, 2014 - 1 commit
-
-
Alex Converse authored
Change-Id: Ic5d3a3a0dac10b49495771886a31e793bb78b5ca
-
- 18 Jul, 2014 - 1 commit
-
-
Deb Mukherjee authored
Separates HBD profile int two profiles (2 and 3) consistent with the highbitdepth branch. This patch is ported from the original highbitdepth branch patch: https://gerrit.chromium.org/gerrit/#/c/70460/ Two of the invalid file tests needed to be updated. Change-Id: I6a4acd2f7a60b1fb4cbcc8e0dad4eab4248431e3
-
- 08 Jul, 2014 - 1 commit
-
-
Adrian Grange authored
This patch fixes bug 633: https://code.google.com/p/webm/issues/detail?id=633 The first decoded frame does not have to be a keyframe, it could be an inter-frame that is coded intra-only. This patch fixes the handling of intra-only frames. A test vector has also been added that encodes 3 intra-only frames at the start of the clip. The test vector was generated using the code in the following patch: https://gerrit.chromium.org/gerrit/#/c/70680/ Change-Id: Ib40b1dbf91aae2bc047e23c626eaef09d1860147
-
- 28 Jun, 2014 - 1 commit
-
-
James Zern authored
This reverts commit b3363561. This causes a hang in: VP9/InvalidFileTest.ReturnCode/3 the change to test/user_priv_test.cc remains with a minor update Change-Id: I4a8a272ca37ea329b0f413f0b1cd827a238bd9fd
-
- 25 Jun, 2014 - 1 commit
-
-
hkuang authored
This patch reverts the previous revert from Jim and also add a variable user_priv in the FrameWorker to save the user_priv passed from the application. In the decoder_get_frame function, the user_priv will be binded with the img. This change is needed or it will fail the unit test added here: https://gerrit.chromium.org/gerrit/#/c/70610/ This reverts commit 9be46e45. Change-Id: I376d9a12ee196faffdf3c792b59e6137c56132c1
-
- 23 Jun, 2014 - 1 commit
-
-
Jim Bankoski authored
This patch insures that the last byte of a chunk that contains a valid superframe marker byte, actually has a proper superframe index. If not it returns an error. As part of doing that the file : vp90-2-15-fuzz-flicker.webm now fails to decode properly and moves to the invalid file test from the test vector suite. Change-Id: I5f1da7eb37282ec0c6394df5c73251a2df9c1744
-
- 21 Jun, 2014 - 1 commit
-
-
Jim Bankoski authored
Avoids failures: MSE_ClearKey/EncryptedMediaTest.Playback_VP9Video_WebM/0 MSE_ClearKey_Prefixed/EncryptedMediaTest.Playback_VP9Video_WebM/0 MSE_ExternalClearKey_Prefixed/EncryptedMediaTest.Playback_VP9Video_WebM/0 MSE_ExternalClearKey/EncryptedMediaTest.Playback_VP9Video_WebM/0 MSE_ExternalClearKeyDecryptOnly/EncryptedMediaTest.Playback_VP9Video_WebM/0 MSE_ExternalClearKeyDecryptOnly_Prefixed/EncryptedMediaTest.Playback_VP9Video_WebM/0 SRC_ExternalClearKey/EncryptedMediaTest.Playback_VP9Video_WebM/0 SRC_ExternalClearKey_Prefixed/EncryptedMediaTest.Playback_VP9Video_WebM/0 SRC_ClearKey_Prefixed/EncryptedMediaTest.Playback_VP9Video_WebM/0 Patches are This reverts commit 9bc04085 This reverts commit 6f5aba06 This reverts commit 9bc04085 I1f250441 Revert "Refactor the vp9_get_frame code for frame parallel." Ibfdddce5 Revert "Delay decreasing reference count in frame-parallel decoding." I00ce6771 Revert "Introduce FrameWorker for decoding." Need better testing in libvpx for these commits Change-Id: Ifa1f279b0cabf4b47c051ec26018f9301c1e130e
-
- 20 Jun, 2014 - 2 commits
-
-
hkuang authored
When decoding in serial mode, there will be only one FrameWorker doing decoding. When decoding in parallel mode, there will be several FrameWorkers doing decoding in parallel. Change-Id: If53fc5c49c7a0bf5e773f1ce7008b8a62fdae257
-
Jim Bankoski authored
The test for this is in test vector code ( show existing frames will fail ). I can't check it in disabled as I'm changing the generic test code to do this: https://gerrit.chromium.org/gerrit/#/c/70569/ Change-Id: I5ab324f0cb7df06316a949af0f7fc089f4a3d466
-
- 19 Jun, 2014 - 1 commit
-
-
hkuang authored
A superframe is a bunch of frames that bundled as one frame. It is mostly used to combine one or more non-displayable frames and one displayable frame. For frame parallel decoding, libvpx decoder will only support decoding one normal frame or a super frame with superframe index. If an application pass a superframe without superframe index or a chunk of displayable frames without superframe index to libvpx decoder, libvpx will not decode it in frame parallel mode. But libvpx decoder still could decode it in serial mode. Change-Id: I04c9f2c828373d64e880a8c7bcade5307015ce35
-
- 13 Jun, 2014 - 2 commits
-
-
Jingning Han authored
This commit fixes frame header decoding for superframe index, to prevent out of boundary memory read triggered by fuzz test vector. It resolves a chromium security violation issue crbug.com/376802. The issue was introduced in the change: Add VPXD_SET_DECRYPTOR support to the VP9 decoder. cl-id I88f86c8ff9af34e0b6531028b691921b54c2fc48 where the buffer was read before validation check on index offset applied. A test vector is added accordingly. Change-Id: I41c988e776bbdd1033312a668e03a3dbcf44ca99
-
hkuang authored
The current decoding scheme will decrease the reference count of the output frame when finish decoding. Then the application could copy the frame from the decoder buffer to application buffer. In frame-parallel decoding, a decoded frame will not be outputted until several frames later which depends on thread numbers. So the decoded frame's reference count should be decreased only after application finish copying the frame out. But due to the limitation of vpx_codec_get_frame, decoder could not know when application finish decoding. So use a index last_show_frame to release the last output frame's reference count. Change-Id: I403ee0d01148ac1182e5a2d87cf7dcc302b51e63
-
- 12 Jun, 2014 - 1 commit
-
-
hkuang authored
Stub flag temporarily set to 0 until frame parallel decoding implementations are finished. Change-Id: I8ab768138e8f8f8eb809875703b2502ea0fe7cea
-
- 30 May, 2014 - 1 commit
-
-
hkuang authored
In frame parallel decoding mode, there will be still several frames inside the decoder when application stop calling vpx_codec_decode to decode frames. The application will need to keep calling vpx_codec_get_frame to get all the remaining decoded frames in the decoder. Change-Id: I2ce8260a91282f045bb9a6093ff8a606b1990f14
-
- 28 May, 2014 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I0abad32551dc534d3db27424c118e4b2f6b50f37
-
- 27 May, 2014 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I2b61c8c17ded1074dea92b4f6ad9be84d128b52a
-
- 21 May, 2014 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I79576920efb7f3f6f197d386727409759d8bda8d
-
- 15 May, 2014 - 2 commits
-
-
Dmitry Kovalev authored
Change-Id: Ieee7a7e3c40d6bcc9fa4df8d10ee9620995aa691
-
Adrian Grange authored
Make all post-processor code conditionally compilable based on the CONFIG_VP9_POSTPROC macro. Also, remove the vizualization code from VP9 since it is out of date and will not compile. Change-Id: I1e9e13a09ecd43e9a3f3704c175ae8cd258ababd
-
- 14 May, 2014 - 3 commits
-
-
Dmitry Kovalev authored
Change-Id: I152e54fa1acceea5ec809d5bf7bfa7f4ef2b9acf
-
Dmitry Kovalev authored
Change-Id: I831fe91dfadf4e89f5bbba6ab7a9917d8dd2ed55
-
Dmitry Kovalev authored
Change-Id: I7675f23150404913f4b457add69fb846f6921997
-
- 12 May, 2014 - 1 commit
-
-
Dmitry Kovalev authored
When superframe index is available we completely rely on it and use frame size values from the index. Change-Id: I0011d08b223303a8b912c2bcc8a02b74d0426ee0
-
- 09 May, 2014 - 2 commits
-
-
James Zern authored
Change-Id: Ic5a6a4a2fec802d9c9c7a71dbae59d5b4d3a8b23
-
James Zern authored
Change-Id: Ib773aac06b22009408cdd29a73190b276a53fcf6
-
- 08 May, 2014 - 1 commit
-
-
Dmitry Kovalev authored
We only used two members from that struct: max_threads and inv_tile_order. Moving them directly to VP9Decoder struct. Change-Id: If696a4e5b5b41868a55f3cc971e1d7c1dd9d5f69
-
- 30 Apr, 2014 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I97293605b430ad9dda0b58c0694fea569e7024a5
-