- Jan 06, 2014
-
-
Charles 'Buck' Krasic authored
also: o remove dead code, create_dummy_frame o Fix a bug in command line handling that caused a segfault if wrong number of arguments were given. Change-Id: I78f026aee4e363967b750e6cde0982659c558a1f
-
- Dec 27, 2013
-
-
Dmitry Kovalev authored
vpx_codec_vp9x_cx is not used internally. Experimental flag from vp9_extracfg is also not really used. YUV 4:4:4 just works after these changes (you have to specify --profile=1 for the encoder). Change-Id: Ib1c8461d0d19d159827e005efe868f891eea0140
-
- Dec 18, 2013
-
-
Marco Paniconi authored
Change-Id: Ie67339ab3a16ce7669b5366a743812df93c52711
-
Frank Galligan authored
Make applications pass in VPX_MAXIMUM_WORK_BUFFERS as well as VP9_MAXIMUM_REF_BUFFERS. Change-Id: I9c07ce83fa19c90ed43227b801b2013690e81edd
-
Frank Galligan authored
Change-Id: I8d329513c87bd8622306aba27c83bf04ef170fa4
-
- Dec 17, 2013
-
-
James Zern authored
Change-Id: Iee670353cffa1f9e97976ac507ad9519e5dda7f7
-
- Dec 16, 2013
-
-
Johann Koenig authored
Change-Id: I56706a8326d9356a6735d13eb5e0832d04221c91
-
Add an option for libvpx to return the least recently used frame buffer. Change-Id: I886a96ffb94984f1c42de53086e0131922df3260
-
Frank Galligan authored
VP9 decoder can now use frame buffers passed in by the application. Change-Id: I599527ec85c577f3f5552831d79a693884fafb73
-
- Dec 05, 2013
-
-
Frank Galligan authored
Change-Id: Idfbd87d0a4bebdce7dd587c8446e7fa75b030d91
-
- Dec 04, 2013
-
-
Adrian Grange authored
Modifications to the spatial scalable encoder to match changes made to the scaling code in the decoder. In particular, the use of a dummy first frame was removed now that the decoder is able to handle a smaller first frame. SvcTest.FirstFrameHasLayers unit test re-enabled. Change-Id: Ic2e91fbe4eadf95895569947670d36d68abaf458
-
- Nov 22, 2013
-
-
Adrian Grange authored
The decoder ignored the display width & height specified in the frame header. This patch adds a control, VP9D_GET_DISPLAY_SIZE, to allow the application to obtain the display width and height from the frame header. vpxdec has been modified to scale the output frame to this size. Should the request for the display size fail vpxdec will use the native width and height of the raw decoded frame instead. Change-Id: I25db04407426dac730263720c75a7dd6400af68a
-
- Nov 21, 2013
-
-
Guillaume Martres authored
Change-Id: I2a08c00e8576099abc84b6ef05cb3567426e29cf
-
- Nov 15, 2013
-
-
Guillaume Martres authored
Change-Id: I57e1ad4bed3487df12893ced77c49093f8755706
-
- Nov 06, 2013
-
-
Ivan Maltz authored
SVC multiple layer per frame encoding is invoked with vpx_svc_init and vpx_svc_encode. These interfaces are designed to be invoked from ffmpeg. Additional improvements: - make dummy frame handling a bit more explicit - fixed bug with single layer encodes - track individual frame sizes and psnrs instead of averages - parameterized quantizer, 16th scalefactors, more logging, - enabled single layer encodes to generate baseline - include new mode for 3 layer I frame with 5 total layers Change-Id: I46cfa600d102e208c6af8acd6132e0cc25cda8d4
-
- Oct 29, 2013
-
-
Adrian Grange authored
Added comments to make the codebase build cleanly in Doxygen. Change-Id: I01e000ceac57dbafa04342858c8f1be250ba20d1
-
- Oct 22, 2013
-
-
James Zern authored
This reverts commit a82001b1, reversing changes made to f6d870f7. This commit breaks windows builds and needs some work to fix those and some additional comments. Change-Id: Ic0b0228e36704b127e5e399ce59db26182cfffe7
-
- Oct 21, 2013
-
-
Ivan Maltz authored
These changes were originally made in the Stratacaster team-review repository commit e114bffcd82ad74c3696ec58e13c0ac895d6c82d Author: Charles 'Buck' Krasic <ckrasic@google.com> Date: Mon Oct 14 16:52:13 2013 -0700 Make dummy frame handling a bit more explicit, fixing bug with single layer encodes. Squashed commit of the following: commit 1ebbfd976c0fadb02bf1ea562a2d0e3f0206daad Merge: ac468dde 54e88b7 Author: Ivan Maltz <ivanmaltz@google.com> Date: Fri Oct 11 17:29:58 2013 -0700 Move SVC code from vp9_spatial_scalable_encoder to libvpx module accessible from ffmpeg commit 54e88b78b160becc9569fc3c6cb6b0a8c95dc357 Author: Ivan Maltz <ivanmaltz@google.com> Date: Tue Oct 8 09:08:40 2013 -0700 common svc encoding code for sample app and ffmpeg added svc_encodeframe.c, svc_context.h, svc_test.cc vp9_spatial_scalable_encoder uses vpx_svc_encode commit 5616ec8e2e3d3e8d277333d8a9242f6c70151162 Merge: 4528014 e29137df Author: Ivan Maltz <ivanmaltz@google.com> Date: Tue Oct 8 08:47:58 2013 -0700 Merge branch 'master' into stratacaster commit 45280148450b1f3d61e390df8aadedf85cd5bce1 Merge: bb2b675 1ab60f7b Author: Sujeevan Rajayogam <sujee@google.com> Date: Fri Oct 4 10:22:31 2013 -0700 Merge branch 'master' into stratacaster commit bb2b675e595dc9bfc8551e963edf56800c3aea61 Author: Sujeevan Rajayogam <sujee@google.com> Date: Wed Oct 2 12:37:26 2013 -0700 Track individual frame sizes and psnrs instead of averages. commit c6d303b714795c81e7ceb4173967115c9f8ff5b7 Merge: fa87df9 35830879 Author: Sujeevan Rajayogam <sujee@google.com> Date: Fri Sep 27 10:05:35 2013 -0700 Merge branch 'master' into stratacaster commit fa87df94fba923d9f7aeb8ae20c6e15f777e00b5 Merge: bf22d71 3c465af2 Author: Sujeevan Rajayogam <sujee@google.com> Date: Thu Sep 26 16:10:31 2013 -0700 Merge branch 'master' into stratacaster commit bf22d7144895a82e0c348ac177c8a261b9e2b88e Author: Sujeevan Rajayogam <sujee@google.com> Date: Thu Sep 26 11:10:34 2013 -0700 Parameterized quantizer, 16th scalefactors, more logging, enabled single layer encodes to generate baseline. commit ceffd7e6025b765f9886b5ea0f324248aa37e327 Author: Sujeevan Rajayogam <sujee@google.com> Date: Thu Sep 19 10:04:49 2013 -0700 - Include new mode for 3 layer I frame with 5 total layers. - Refactor svc api. Change-Id: Ie4d775e21e006fa597d884c59488dc999478e9b5
-
- Oct 18, 2013
-
-
Yaowu Xu authored
To avoid the dependency on the order of header files included. Change-Id: Ic142638d75fe95e6aba41b11664bfa15f076f793
-
- Sep 30, 2013
-
-
Dmitry Kovalev authored
It doesn't seem reasonable to have these files as our API part. Just inlining them in the source. Change-Id: Iff970bb25e72e49e7ac21990824dbf4ef8bfd2e2
-
- Sep 17, 2013
-
-
Adrian Grange authored
Modified the resize unit test so that it optionally writes the encoded bitstream to file. The macro WRITE_COMPRESSED_STREAM should be set to 1 to enable output of the test bitstream; it is set to 0 by default. Change-Id: I7d436b1942f935da97db6d84574a98d379f57fb1
-
- Sep 09, 2013
-
-
Ivan Maltz authored
Sample app: vp9_spatial_scalable_encoder vpx_codec_control extensions: VP9E_SET_SVC VP9E_SET_WIDTH, VP9E_SET_HEIGHT, VP9E_SET_LAYER VP9E_SET_MIN_Q, VP9E_SET_MAX_Q expanded buffer size for vp9_convolve modified setting of initial width in vp9_onyx_if.c so that layer size can be set prior to initial encode Default number of layers set to 3 (VPX_SS_DEFAULT_LAYERS) Number of layers set explicitly in vpx_codec_enc_cfg.ss_number_layers Change-Id: I2c7a6fe6d665113671337032f7ad032430ac4197
-
- Sep 06, 2013
-
-
Deb Mukherjee authored
Adds a new end-usage option for constant quality encoding in vpx. This first version implemented for VP9, encodes all regular inter frames using the quality specified in the --cq-level= option, while encoding all key frames and golden/altref frames at a quality better than that. The current performance on derfraw300 is +0.910% up from bitrate control, but achieved without multiple recode loops per frame. The decision for qp for each altref/golden/key frame will be improved in subsequent patches based on better use of stats from the first pass. Further, the qp for regular inter frames may also be varied around the provided cq-level. Change-Id: I6c4a2a68563679d60e0616ebcb11698578615fb3
-
- Jul 12, 2013
-
-
James Zern authored
s/vp8/vpx/ -> vpx_codec_internal.h / vpx_codec.c Change-Id: If4192b40206276a761b01d44e334fe15bcb81128
-
- Jul 11, 2013
-
-
James Zern authored
correct a doxygen and function reference Change-Id: I525371d64969aa60c464d0f6a133bc29895d7991
-
- Jun 17, 2013
-
-
Dmitry Kovalev authored
The error happened because of vp8_decrypt_cb typedef redefinition in both treereader.h and vp8dx.h. Removing typedef from vp8dx.h in favor of raw function pointer declaration. Change-Id: I0266eb341ce433d40caf0abf8748694d505ee786
-
Jeff Petkau authored
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
-
- May 06, 2013
-
-
John Koleszar authored
Adds a new experiment CONFIG_NON420 that allows other chroma subsamplings to be passed to the codec. This commit allows the data to be passed from a y4m input file through vpxenc to the codec, where they're currently rejected. Later commits will finish support for this inside the codec. Change-Id: Ib3aac604d8cad9e24cef395fa1067f16ba7e8e43
-
- Apr 24, 2013
-
-
Paul Wilkins authored
Also some further simplification following removal of top node code. There is an issue in regards to the shared file vp8cx.h in regard to the roi_map as this interface assumes that there are only 4 segments. I have left the value here as 4 for now meaning that the roi_map interface is broken for VP9. Note that this change would have been easier if I hadn't had to search for hard wire instances of the number 4 and <= 3. Change-Id: Ia8b6deea4be4dbd20deb1656e689dd43a5f190e8
-
- Mar 27, 2013
-
-
John Koleszar authored
Restore ABI compatibility with the master branch. Change-Id: Ie9f6fdf536662bd87dfcf114d16f003422670763
-
John Koleszar authored
Restore ABI compatibility with the master branch. Change-Id: Ic57e7e1de09ab33bd37990e52a63ba7c8f1432a4
-
- Mar 16, 2013
-
-
Dmitry Kovalev authored
New decoder control paramter VP8_SET_DECRYPT_KEY to set the decryption key. Change-Id: I6fc1f44d41f74f3b3f702778af1a6f8f5cc9439f
-
- Mar 14, 2013
-
-
John Koleszar authored
This is like VP8_COPY_REFERENCE, but returns a pointer to the reference frame rather than a copy of it. This is useful when the application doesn't know what the size of the reference is, as is the case when scaling is in effect. Change-Id: I63667109f65510364d0e397ebe56217140772085
-
- Feb 13, 2013
-
-
Ronald S. Bultje authored
These allow sending partial bitstream packets over the network before encoding a complete frame is completed, thus lowering end-to-end latency. The tile-rows are not independent. Change-Id: I99986595cbcbff9153e2a14f49b4aa7dee4768e2
-
- Feb 12, 2013
-
-
Ronald S. Bultje authored
This is after discussion with the hardware team. Update the unit test to take these sizes into account. Split out some duplicate code into a separate file so it can be shared. Change-Id: I8311d11b0191d8bb37e8eb4ac962beb217e1bff5
-
- Feb 05, 2013
-
-
Ronald S. Bultje authored
This patch adds column-based tiling. The idea is to make each tile independently decodable (after reading the common frame header) and also independendly encodable (minus within-frame cost adjustments in the RD loop) to speed-up hardware & software en/decoders if they used multi-threading. Column-based tiling has the added advantage (over other tiling methods) that it minimizes realtime use-case latency, since all threads can start encoding data as soon as the first SB-row worth of data is available to the encoder. There is some test code that does random tile ordering in the decoder, to confirm that each tile is indeed independently decodable from other tiles in the same frame. At tile edges, all contexts assume default values (i.e. 0, 0 motion vector, no coefficients, DC intra4x4 mode), and motion vector search and ordering do not cross tiles in the same frame. t log Tile independence is not maintained between frames ATM, i.e. tile 0 of frame 1 is free to use motion vectors that point into any tile of frame 0. We support 1 (i.e. no tiling), 2 or 4 column-tiles. The loopfilter crosses tile boundaries. I discussed this briefly with Aki and he says that's OK. An in-loop loopfilter would need to do some sync between tile threads, but that shouldn't be a big issue. Resuls: with tiling disabled, we go up slightly because of improved edge use in the intra4x4 prediction. With 2 tiles, we lose about ~1% on derf, ~0.35% on HD and ~0.55% on STD/HD. With 4 tiles, we lose another ~1.5% on derf ~0.77% on HD and ~0.85% on STD/HD. Most of this loss is concentrated in the low-bitrate end of clips, and most of it is because of the loss of edges at tile boundaries and the resulting loss of intra predictors. TODO: - more tiles (perhaps allow row-based tiling also, and max. 8 tiles)? - maybe optionally (for EC purposes), motion vectors themselves should not cross tile edges, or we should emulate such borders as if they were off-frame, to limit error propagation to within one tile only. This doesn't have to be the default behaviour but could be an optional bitstream flag. Change-Id: I5951c3a0742a767b20bc9fb5af685d9892c2c96f
-
- Feb 04, 2013
-
-
Yaowu Xu authored
These macros were not defined in earlier version of MSVC Change-Id: I8270a3abb7c6e9ead1931a653d7e41f877a1017b
-
- Jan 30, 2013
-
-
Scott LaVarnway authored
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
-
- Jan 26, 2013
-
-
Deb Mukherjee authored
Adds a flag to disable features that would inhibit frame parallel decoding. This includes backward adaptation and MV sorting based on search in ref frame buffer. Also includes some minor clean-ups. Change-Id: I434846717a47b7bcb244b37ea670c5cdf776f14d
-
- Jan 14, 2013
-
-
John Koleszar authored
These variables have the type int64_t, not long long. long long could be a larger type than 64 bits. Emulate INT64_MAX for older versions of MSVC, and remove the unreferenced vpx_ports/vpxtypes.h Change-Id: Ideaca71838fcd3849d816d5ab17aa347c97d03b0
-