- Oct 27, 2010
-
-
Fritz Koenig authored
This allows multiple post processor debug levels to be overlayed. i.e. can show colored reference blocks and visual motion vectors. Change-Id: Ic4a1df438445b9f5780fe73adb3126e803472e53
-
Fritz Koenig authored
-
John Koleszar authored
-
John Koleszar authored
-
John Koleszar authored
-
John Koleszar authored
-
John Koleszar authored
-
John Koleszar authored
-
John Koleszar authored
NEON has optimized 16x16 half-pixel variance functions, but they were not part of the RTCD framework. Add these functions to RTCD, so that other platforms can make use of this optimization in the future and special-case ARM code can be removed. A number of functions were taking two variance functions as parameters. These functions were changed to take a single parameter, a pointer to a struct containing all the variance functions for that block size. This provides additional flexibility for calling additional variance functions (the half-pixel special case, for example) and by initializing the table for all block sizes, we don't have to construct this function pointer table for each macroblock. Change-Id: I78289ff36b2715f9a7aa04d5f6fbe3d23acdc29c
-
- Oct 26, 2010
-
-
Fritz Koenig authored
Post process option to color the block for either the mode of the macro block, or the frame that the macro block references. Change-Id: Ie498175497f2d20e3319924d352dc4ddc16f4134
-
John Koleszar authored
By baking the version number into the output file, a hash of the file will vary from commit to commit, even if the output is otherwise bit exact. Add a -D option to suppress this behavior, for use when bisecting or other debugging. Change-Id: I5089a8ce5719920ffaf47620fa9069b81fa15673
-
John Koleszar authored
-
John Koleszar authored
Change-Id: I18e0a9e00731c23a2bdd1a978c8cb38f71e9029d
-
John Koleszar authored
ARM NEON has a platform specific version of vp8_recon16x16mb, though it's just a stub to extract the various parameters from the MACROBLOCKD struct and pass them to vp8_recon16x16mb_neon(). Using that function's prototype directly will be a better long term solution, but it's quite an invasive change. Change-Id: I04273149e2ade34749e2d09e7edb0c396e1dd620
-
John Koleszar authored
The ARM version of vp8_hex_search() is a faster implementation of the same algorithm. Since it doesn't use any ARM specific code, it can be made the default implementation. This removes a linking error. Change-Id: I77d10f2c16b2515bff4522c350004e03b7659934
-
John Koleszar authored
-
John Koleszar authored
Some of the ARM functions differed from their generic counterparts only by unrolling their loops. Since this change may be useful on other platforms, or might even supercede the looped version in the generic case, move it back to the generic file. This code is left under #if ARCH_ARM for now, but it may be worth considering a different (possibly new) conditional for these. If it turns out that this should be runtime selectable, these functions will have to move to the RTCD infrastructure. Don't want to take that step at this time without more profile data. Change-Id: I4612fdbc606fbebba4971a690fb743ad184ff15f
-
John Koleszar authored
These functions were true duplicates of functions present in the generic code. This fixes some of the link errors when building with --enable-shared --enable-pic. Change-Id: Idff26599d510d954e439207883607ad6b74df20c
-
John Koleszar authored
These functions made global references but did not set up the GOT, causing compilation failures in PIC mode. Change-Id: Iac473bf46733f87eb2e001cd736af4acf73fa51d
-
John Koleszar authored
Change-Id: I83a6f18d2314e5d97759b4ae49afaa52fd8b3c44
-
John Koleszar authored
The WebM writer requires a seekable stream. Change-Id: I192e00706a0685362d41b8d2faf80add63d564b9
-
John Koleszar authored
Requiring the output file to be specified with the -o option opens up the possibility of supporting multiple input files in the future. Change-Id: I14c9b75e9b21184b47081e1ccf30cf4c91315964
-
John Koleszar authored
This patch reworks the default behavior of the tool to output Y4M instead of writing individual raw frames. The relevant controls are now: --yv12, --i420 - These options change the output format to be raw planar data. The output will be Y4M unless one of these options is specified. --flipuv - Swaps the chroma planes. Works with Y4M output. -o, --output - Sets the output filename. Defaults to stdout if not specified. Supports escape character expansion for frame width (%w) height (%h) and sequence number (%1..%9). The --prefix option has been removed in favor of this escape expansion. Since the output defaults to stdout if -o is not specified, an error will be thrown if stdout is not connected to a pipe. This can be overridden by specifying '-o -'. Change-Id: I94e42c57ca75721fdd57a6129e79bcdb2afe5d4d
-
John Koleszar authored
Be quiet by default, to play nicer with scripts. Change-Id: I68f6c88411fd5487566f268fb73b4e55ae64410c
-
John Koleszar authored
Update the timing information in-place for the --progress option. Change-Id: I8efea57050db72963c0bc5c994425e7e692d1502
-
John Koleszar authored
When showing the command usage information for vpxenc and vpxdec, options with both a short and long version that do not take an argument were not properly aligned. Change-Id: I8d65b5ab85bcb5a5dc8bc0d4b293b5189d56dedb
-
John Koleszar authored
Saves a little typing. FPS is a well known abbreviation. Change-Id: I53730ea36afb9309732eb1c72c52d824d5365fec
-
John Koleszar authored
WebM should be preferred to IVF output, since it has wider tool support. Change-Id: I5ac3d5cb68722e6c8af917cdba32ac01dd5e0ea2
-
John Koleszar authored
The new WebM output support should be preferred to IVF, but we can't change the default behavior of the ivf* tools. There are a few other default behaviors for these tools that are counterintuitive for historical reasons, and changing the binary name provides the opportunity to clean those up as well. This patch takes the first step by renaming the binaries. Change-Id: I647008ae37cc352dd27ec1da7ed13489e0609b24
-
John Koleszar authored
This patch adds the --webm option, to allow the creation of WebM streams without having to remux ivf into webm. Change-Id: Ief93c114a6913c55a04cf51bce38f594372d0ad0
-
John Koleszar authored
Initial import of the libmkv directory from the webmquicktime[1] project, at commit fedbda1. [1]: git://review.webmproject.org/webmquicktime.git commit fedbda18de899ff94855cb334de7e471036fbf1d Change-Id: I1564a0ebfa72293fc296ee02178196530dfd90e4
-
Frank Galligan authored
Ivfenc will use timebase if it is set. If it is not set ivfenc will still double the timebase so altref frames will have a unique pts. Patch Set #3: Use integer math to generate source pts. Added a framerate parameter. Increased the default timebase to milliseconds to remove the *2 everywhere. Change-Id: I8d25b5b2cb26deef7eb72d74b5f76c98cafaf4db
-
John Koleszar authored
The width and height needed to write the Y4M header can be found by probing the stream with vpx_codec_peek_stream_info(). This also has the consequence of supporting multiple codecs from raw files with automatic detections, should we add additional codecs in the future. Change-Id: I7522a8f4c7577b6ed9876d744c59cd86d30c6049
-
John Koleszar authored
This patch enables ivfdec to decode WebM files. WebM demuxing is provided by the Matthew Gregan's Nestegg library. This patch also makes minor changes to the timebase->framerate handling when doing Y4M output. For WebM files, the framerate is guessed by looking at the first second of video. For IVF files, the timebase=1/(2*fps) hack is still in place, but is only used if the timebase denominator is less than 1000. This is in anticipation of change I8d25b5b, which introduces the distinction between framerate and timebase to ivfenc. In the case of high resolution timebases, like 100ns, we would have to guess the framerate like we do for WebM, but since WebM support in ivfenc will deprecate IVF output, we just assume 30fps rather than writing the lookahead code. Change-Id: I1dd8600f13bf6071533d2816f005da9ede4f60a2
-
- Oct 25, 2010
-
-
Fritz Koenig authored
-
Fritz Koenig authored
Postproc level that uses Bresenham's line algorithm to draw motion vectors onto the postproc buffer. Change-Id: I34c7daa324f2bdfee71e84fcb1c50b90fa06f6fb
-
Johann Koenig authored
-
John Koleszar authored
-
Aaron Watry authored
Solaris 10 requires -lposix4 to build successfully on gcc. I only have a Sparc machine to test with on Solaris 10, but this change leaves OpenSolaris x86 in a usable state w/ gnu-generic. I am of the belief that this change should fix Solaris 10 on Sparc, but will leave other Solaris architectures as is. If someone has an x86 Solaris 10 machine to test on, they may add x86-solaris-gcc to libvpx/configure and give it a go. Change-Id: I17a282028bb4d3e9fd8764159f95665160f7b62a
-