Age | Commit message (Collapse) | Author |
|
|
|
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
|
|
Change-Id: I5e546fce725b8c4722da5494e9423154e870fd58
|
|
Change-Id: I2380b1b80f48496732b69c8255a485024d375f0f
|
|
|
|
Change-Id: I46dd5ce06f36362c6274511cd1531d93926aa9bc
|
|
Change-Id: I60f2ce77638cf7d2116bc1e64b466942c76644e0
|
|
Change-Id: I03f614872167841515a74740d654c008b60104a4
|
|
Change-Id: I29eaffff5089b26e8778a977c3b3da11800f1c49
|
|
Adding two new functions: update_image_md5() and write_image_file().
Change-Id: Ic3e7e6ef08e70fb15ab021c92127872f29bcad9b
|
|
There is no reason to have fourcc masks, everything just works without
them.
Change-Id: I1d48100e7b7d5ef55ec49a708ba6adcb9ab4ecd8
|
|
|
|
|
|
File type check inside ivf_read_frame() is not necessary (it is done
before this function get called).
Change-Id: Iede8feb358d25878b340473d85c3b01d701fc624
|
|
There are three contributors to the definition of how the
display size is set:
(1) display width/height set in the container.
(2) display size (optional in the frame header)
(3) decoded frame size (from the frame header)
This patch modifies the way that vpxdec defines the display
size to give preference to these three criteria in the order
given above. If the container sets a non-zero size, it is
used, otherwise the display size specified in the first
decoded frame is used (if specified), with the raw
decoded frame size of the first frame used as a last resort.
The display size set in frames other than the first is
always ignored in this implementation.
Change-Id: I7e98d817d3f5894d559dd2aeb0a6cb1959b9092b
|
|
Change-Id: Ie2a4606daf35b327d6f2ac8d7fd8f6cacf4c5b6a
|
|
We don't need compile time md5 configuration because --md5 is a runtime
option.
Change-Id: Ic0a2427ae5de5a18f31e5ee60c3732481b377ca1
|
|
Add an option for libvpx to return the least recently used
frame buffer.
Change-Id: I886a96ffb94984f1c42de53086e0131922df3260
|
|
VP9 decoder can now use frame buffers passed in by the application.
Change-Id: I599527ec85c577f3f5552831d79a693884fafb73
|
|
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
|
|
|
|
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
|
|
This fixes issue 667.
In the case where the frame was an odd number of pixels
wide or high, the border was being extended by one col
or row too far.
The calculation of color plane dimensions was modified
to use those already computed at the time the frame
buffer was allocated.
Also freed the temporary scaling buffer in vpxdec to
prevent a memory leak.
Change-Id: Ied04bdcdfd77469731408c05da205db1a6f89bf5
|
|
- Move it to webmdec.c and webmdec.h.
- Also, tidy up obvious style nits in the vicinity of code I was
already touching.
Change-Id: Ie2898d06e73c1e9030d9c8d465b73ee7edc3c02a
|
|
Change-Id: I6ea460af884d522319735e4416a2dd66c2f35d27
|
|
Refactored IVF frame reading code out into ivf_read_frame(). Forgot
to actually make the function call in read_frame().
Change-Id: Ie9f6917e70bd26d0352a761932465c60a29a1f81
|
|
- Move IVF reading support into ivfdec.c and ivfdec.h
- Move IVF writing support into ivfenc.c and ivfenc.h
- Removed IVF writing code from the SVC example in favor of ivfenc.
Change-Id: I70adf6240d0320fdd232d8546ed573f0f68dd793
|
|
Relocate it to tools_common.h so we can stop duping this code
everywhere.
BUG=https://code.google.com/p/webm/issues/detail?id=660
Change-Id: If8aa49b74d297273cd9fd7006b2767837055a359
|
|
This is mainly a clean up patchset. It moves the WebM writing support
out of vpxenc and into its own source file. Changes to tools_common and
vpxdec result from relocation of shared bits of code.
Change-Id: Iee55d3285f56e0a548f791094fb14c5ac5346a26
|
|
If the webm file did not have a Cues then vpxdec would fail
when creating a y4m file. If there is no Cues element print
out a warning and set fps to 30.
Change-Id: Ieea7040265dfdac7dff4ccf917c6f756160a96bc
|
|
Allows vpxdec to operate multiple times on the same input. Mostly
useful for debugging/development.
Change-Id: Icf25ece22e387052eade4438971eee5ff4f798ba
|
|
Change-Id: Ie648398b82f7311143709f55c0e30ba452f50eff
|
|
If the codec fails to return a frame on the second frame (as in a VP8 alt-ref,
then img will be a null pointer and dereferencing it while trying to write
the color format (again) will crash.
Change-Id: Ie48710d4c5715f532d453c879c71c20ccdeb81cc
|
|
to work like vpxenc. This is required for the frame-based
multithreading.
Change-Id: I338ae9c7d52b0541f3536cc033d6b89f00866e74
|
|
Make framebuffer allocations according to the chroma subsamping
factors in use. A bit is placed in the raw part of the frame header for
each of the two subsampling factors. This will be moved in a future
commit to make them part of the TBD feature set bits, probably only set
on keyframes, etc.
Change-Id: I59ed38d3a3c0d4af3c7c277617de28d04a001853
|
|
Change-Id: Ia16f167d904d53bc38cb3a8c841c6c52daad500f
(cherry picked from commit 296421d84cd1ffd074ff3fe4a772238c897f1bda)
reverts: dbd050c vpxdec: correct VP[89] fourccs
|
|
Change-Id: Ia16f167d904d53bc38cb3a8c841c6c52daad500f
|
|
should have no effect as they are used in nestegg mappings, but aligns
the defines with vpxenc.c
Change-Id: Ic2295cd63701894c2963274239602b54cbb58631
|
|
This fixes a potential crash with VP8 streams that have an alt-ref on
the first frame, as well as potentially scaling the output in cases
where that wasn't desired.
Change-Id: I1fd74b5ab43329fbbffecb004dfd44de34c4dc22
|
|
Adds an option, --scale, that will rescale any frames produced by
the decoder that don't match the resolution of the first frame to
that resolution. This is useful for playback of files that use
spatial resampling.
Change-Id: I867adc650d535df7ec5b107549359712ea3aaaa0
|
|
Tags VP9 tracks with the V_VP9 video type when writing to .webm files,
and supports decoding both from vpxdec without specifying --codec.
Change-Id: I0ef61dee06f4db2a74032b142a4b4976c51faf6e
|
|
Change-Id: Ib8f8a66c9fd31e508cdc9caa662192f38433aa3d
|
|
Creates a merge between the master and experimental branches. Fixes a
number of conflicts in the build system to allow *either* VP8 or VP9
to be built. Specifically either:
$ configure --disable-vp9 $ configure --disable-vp8
--disable-unit-tests
VP9 still exports its symbols and files as VP8, so that will be
resolved in the next commit.
Unit tests are broken in VP9, but this isn't a new issue. They are
fixed upstream on origin/experimental as of this writing, but rebasing
this merge proved difficult, so will tackle that in a second merge
commit.
Change-Id: I2b7d852c18efd58d1ebc621b8041fe0260442c21
|
|
Change-Id: I69fd876dd51eb2b4a4a449faa5922225e9508b42
|
|
Change-Id: Ic084c475844b24092a433ab88138cf58af3abbe4
|
|
Change-Id: Id7d1f25078be92dd6cda246738ad6fb50579f555
|
|
This change is necessary for the frame-based multithreading
implementation.
Since the postproc occurs in this call, vpxdec was modified to time around
vpx_codec_get_frame()
Change-Id: I389acf78b6003cd35e41becc16c893f7d3028523
|
|
Change-Id: Iaa947e640f27e6f6eaf7d845f243536bca2df513
|
|
Change-Id: I74e50b4dfbe73eb98e1dce1695a9973f637220c0
|
|
Approximate the Google style guide[1] so that that there's a written
document to follow and tools to check compliance[2].
[1]: http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml
[2]: http://google-styleguide.googlecode.com/svn/trunk/cpplint/cpplint.py
Change-Id: Idf40e3d8dddcc72150f6af127b13e5dab838685f
|