- 22 Oct, 2014 1 commit
-
-
Yunqing Wang authored
This patch allocated frame contexts outside VP9_COMMON. This allows multiple threads to share the same copy of frame contexts, and reduces the overhead. It also guarantees the correct update of these contexts during bitstream packing. This patch doesn't change encoding result. Change-Id: Ic181a2460b891d1d587278a6d02d8057b9dbd353
-
- 02 Oct, 2014 1 commit
-
-
Yaowu Xu authored
This commit changes the tables to be read only, which fixes issue #866 Change-Id: I85bbe03f9d344f50570f8c1c61699bdc5cee248f
-
- 29 Sep, 2014 1 commit
-
-
Deb Mukherjee authored
Also includes yv12 config changes. Change-Id: Iacf40d8bf486815b54c32a127ce3cd4516b7e44f
-
- 10 Sep, 2014 1 commit
-
-
James Zern authored
don't bother decoding any further after receiving an earlier decode error until a key/intra-only frame is encountered. Change-Id: I381917b70d7a9e6f8d6de42e3d181bb113a4cec4
-
- 03 Sep, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I0a9d52432f2500f1bd8f43f229e70e38bb9a0343
-
- 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
-
- 29 Aug, 2014 1 commit
-
-
James Zern authored
store the number of allocated rows in VP9LfSync, the calculated values can not be relied on when dealing with corrupt material. Change-Id: I13b8bcec9738c299a71df726772ab7ac05511e5b
-
- 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
-
- 14 Aug, 2014 1 commit
-
-
James Zern authored
use get_ref_frame() to ensure a valid frame is retrieved if one exists Change-Id: I4b116d928e643ee62a991babd4b974037b6b3830
-
- 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
-
- 15 Jul, 2014 1 commit
-
-
Alexander Voronov authored
The issue was introduced by commit g7c43fb67. If current frame is repeated from existing-ref pool, frame buffer ref counter is not decreased, so buffer isn't released. Decoder fails being unable to allocate new frame buffer at some point. Added a test vector to verify that the condition will not recur later. Test vector was generated by the code in this patch: https://gerrit.chromium.org/gerrit/#/c/70862/ Change-Id: I8af96eb5b9670176e01a281d2e18bd458712cf78
-
- 10 Jul, 2014 1 commit
-
-
James Zern authored
restore the environment post encode/decode failure Change-Id: I3c72e2260a616432eaf1f9545d4fb4d8e45cc7b0
-
- 09 Jul, 2014 1 commit
-
-
James Zern authored
in a failure case the threads may still be running and share a reference to VP9_COMMON Change-Id: I867034b4b55f133663b8cbf6ca06e72acf952849
-
- 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
-
- 01 Jul, 2014 1 commit
-
-
James Zern authored
pull the latest from WebP, which adds a worker interface abstraction allowing an application to override init/reset/sync/launch/execute/end this has the side effect of removing a harmless, but annoying, TSan warning. Original source: http://git.chromium.org/webm/libwebp.git 100644 blob 08ad4e1fecba302bf1247645e84a7d2779956bc3 src/utils/thread.c 100644 blob 7bd451b124ae3b81596abfbcc823e3cb129d3a38 src/utils/thread.h Local modifications: - s/WebP/VP9/g - camelcase functions -> lower with _'s - associate '*' with the variable, not the type Change-Id: I875ac5a74ed873cbcb19a3a100b5e0ca6fcd9aed
-
- 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
-
- 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 1 commit
-
-
Jim Bankoski authored
See: https://code.google.com/p/chromium/issues/detail?id=362697 The code properly catches an invalid stream but seg faults instead of returning an error due to a buffer not having been initialized. This code fixes that. Change-Id: I695595e742cb08807e1dfb2f00bc097b3eae3a9b
-
- 18 Jun, 2014 1 commit
-
-
Jingning Han authored
This function is not effectively used, hence removed. Change-Id: I2e8e48fa07c7518931690f3b04bae920cb360e49
-
- 13 Jun, 2014 1 commit
-
-
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
-
- 21 May, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I79576920efb7f3f6f197d386727409759d8bda8d
-
- 20 May, 2014 1 commit
-
-
hkuang authored
The current decode_tiles decodes the frame one tile by one tile and then loopfilter the whole frame or use another worker thread to do loopfiltering. |------|------|------|------| |Tile1-|Tile2-|Tile3-|Tile4-| |------|------|------|------| For example, if a tile video has one row and four cols, decode_tiles will decode the Tile1, then Tile2, then Tile3, then Tile4. And during decode each tile, decode_tile will decode row by row in each tile. For frame parallel decoding, decode_tiles will decode video in row order across the tiles. So the order will be: "Decode 1st row of Tile1" -> "Decode 1st row of Tile2" -> "Decode 1st row of Tile3" -> "Decode 1st row of Tile4" -> "Decode 2nd row of Tile1" -> "Decode 2nd row of Tile2" -> "Decode 2nd row of Tile3" -> "Decode 2nd row of Tile4"-> "loopfilter 1st row" Change-Id: I2211f9adc6d142fbf411d491031203cb8a6dbf6b
-
- 15 May, 2014 1 commit
-
-
Yaowu Xu authored
vp9_decoder.c vp9_dthread.c Change-Id: Iaafe941545db98e9e3559096a955894646084ac2
-
- 14 May, 2014 2 commits
-
-
Dmitry Kovalev authored
Change-Id: I831fe91dfadf4e89f5bbba6ab7a9917d8dd2ed55
-
Dmitry Kovalev authored
Change-Id: I7675f23150404913f4b457add69fb846f6921997
-
- 12 May, 2014 1 commit
-
-
Dmitry Kovalev authored
Inline loopfilter has been already handled in vp9_decode_frame(). Collecting all similar code in one place now. Change-Id: I358a0280fc7c2b27cca520bc1e8c16c4eb6491dd
-
- 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
-
- 29 Apr, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I6dc9741cdcd700f5c4a387f58da7feb58dd4bbda
-
- 25 Apr, 2014 1 commit
-
-
Dmitry Kovalev authored
That code is not used, we could easily return it back using vpx_img_write() function. Change-Id: Id107875c6feab6ad245a518f6b437b6ed4b1246d
-
- 11 Apr, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I9677aab1c7bb0ca9e989cb21348a3a2c926d8f5a
-
- 10 Apr, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: If33087462293605f79d9281af133091fff33a876
-
- 08 Apr, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Ieb9b455b8aaef9884391021b7f640ef24c554687
-
- 07 Apr, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Ib4e31ba74c4b882bd93942ef743f4a189892738d
-
- 03 Apr, 2014 1 commit
-
-
hkuang authored
No need to check pbi->common.frame_to_show again. Change-Id: I572ea4afd0d8b6000c0bb7575b7023d75cad5a4e
-
- 01 Apr, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Ie2ea9dd8bd338cc9fe12ca9033df64f7644c68b3
-
- 28 Mar, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I3e20c0cdb9d2437bddf21afb255855f2dead8e02
-
- 25 Mar, 2014 2 commits
-
-
Dmitry Kovalev authored
above_seg_context is alreaded freed during vp9_remove_common() call. Change-Id: I16b72c710e71d2f143df2d47e876d220c8d374e0
-
Dmitry Kovalev authored
Change-Id: I713af99d1e17e05a20eab20df51d74ebfd1a68d2
-
- 24 Mar, 2014 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I47a8b4bf9a6cc0063d1a6785eaaad641d0659e24
-