- 02 Mar, 2012 - 1 commit
-
-
Johann authored
Propagate debug setting to the EBML struct. When writing the application name, this allows us to strip the version code and keep the output metadata static. Change-Id: I8e06c6abd743bedbff5af6242bbdae5d55754538
-
- 29 Feb, 2012 - 2 commits
-
-
Yunqing Wang authored
When we do 2-pass encoding, elapsed time is accumulated through whole 2-pass process, which gives incorrect time and fps results for second pass. This change fixed that by resetting the time accumulator for second pass. Change-Id: Ie6cbf0d0e66e6874e7071305e253c6267529cf20
-
Attila Nagy authored
Produce the token partitions on-the-fly, while processing each MB. Context is updated at the beginning of each frame based on the previoud frame's counters. Optimally encoder outputs partitions in separate buffers. For frame based output, partitions are concatenated internally. Limitations: - enabled just in combination with realtime-only mode - number of encoding threads has to be equal or less than the number of token partitions. For this reason, by default the encoder will do 8 token partitions. - vpxenc supports partition output (-P) just in combination with IVF output format (--ivf) Performance: - Realtime encoder can be up to 13% faster (ARM) depending on the number of threads and bitrate settings. Constant gain over the 5-16 speed range. - Token buffer reduced from one frame to 8 MBs Quality: - quality is affected by the delayed context updates. This again dependents on input material, speed...
-
- 16 Feb, 2012 - 4 commits
-
-
John Koleszar authored
Add the ability to specify multiple output streams on the command line. Streams are delimited by --, and most parameters inherit from previous streams. In this implementation, resizing streams is still not supported. It does not make use of the new multistream support in the encoder either. Two pass support runs all streams independently, though it's theoretically possible that we could combine firstpass runs in the future. The logic required for this is too tricky to do as part of this initial implementation. This is mostly an effort to get the parameter passing and independent streams working from the application's perspective, and a later commit will add the rescaling and multiresolution support. Change-Id: Ibf18c2355f54189fc91952c734c899e5c072b3e0
-
John Koleszar authored
Simplify some of the file I/O for later commits which will add multistream support Change-Id: Idf1a05f3a29c95331d0c4a6ea5960904e4897fd4
-
John Koleszar authored
Cosmetic. Allows exiting with an error message without opening a new scope. Change-Id: If227b29b825f0241acea79dd38f19e524552ee18
-
John Koleszar authored
This is a first step towards specifying multiple output streams with one command line. Change-Id: Iac784d3911bf553694d024bbd0c3d547261e914b
-
- 18 Jan, 2012 - 1 commit
-
-
Fritz Koenig authored
resize_down_thresh was parsed and set twice. Change-Id: I2685a6c3c825371f79ae94d305bcb50185a12dac
-
- 21 Dec, 2011 - 1 commit
-
-
James Zern authored
Change-Id: Ifc64cf990ae04d77934da3324d0afb3993f061e7
-
- 28 Nov, 2011 - 1 commit
-
-
James Berry authored
dynamicly assign ARG_CTRL_CNT_MAX and add check to make sure argument instance doesnt already exist before creating a duplicate Change-Id: I4f78a9c5346cda8e812cd89c077afe8996493508
-
- 09 Nov, 2011 - 1 commit
-
-
James Zern authored
fixes fseek errors on large files resulting in corrupt/truncated output (issue #364). Change-Id: If0e189a1591d0e95d7d237332e0bea1cf2ec5aa1
-
- 01 Nov, 2011 - 1 commit
-
-
James Zern authored
Fixes issue #362. Change-Id: Iba6d7e49ed610b44c8a4c0f3d6330a93feb0373d
-
- 19 Oct, 2011 - 1 commit
-
-
James Zern authored
sizeof(unsigned long)=4 in 32-bit builds Change-Id: I81c9d698c80ffaa332214e5b43e98b4e30cf9e88
-
- 22 Sep, 2011 - 1 commit
-
-
John Koleszar authored
To avoid a dependency on vpx_version.h, call the vpx_codec_version_str() function and build up the string manually. Change-Id: Ie650e9b8f2aaaffaa31da5e9ef3b566b972321b4
-
- 02 Aug, 2011 - 1 commit
-
-
Lou Quillio authored
Change-Id: Ia406272a97806c0194435bb7f24e24d353ef5cc6
-
- 28 Jul, 2011 - 1 commit
-
-
John Koleszar authored
Since this is the only ABI incompatible change since the last release, convert it to use the control interface instead. The member of the configuration struct is replaced with the VP8E_SET_MAX_INTRA_BITRATE_PCT control. More significant API changes were expected to be forthcoming when this control was first introduced, and while they continue to be expected, it's not worth breaking compatibility for only this change. Change-Id: I799d8dbe24c8bc9c241e0b7743b2b64f81327d59
-
- 27 Jul, 2011 - 1 commit
-
-
James Zern authored
The timebase update fixes Issue #61. Change-Id: I425158da7ea639464f61e6dd604ac9e6c72b7266
-
- 26 Jul, 2011 - 1 commit
-
-
James Zern authored
Removes mixed usage of (unsigned) long long and INT64. Fixes Issue #208. Change-Id: I220d3ed5ce4bb1280cd38bb3715f208ce23cf83a
-
- 18 Jul, 2011 - 1 commit
-
-
Tero Rintaluoma authored
Using small values for --buf-sz= in command line causes floating point exception due to division by zero. Change-Id: Ibfe2d44db922993a78ebc9a4a1087d9625de48ae
-
- 12 Jul, 2011 - 1 commit
-
-
Yunqing Wang authored
As reported in issue 331, vpxenc encoded incorrect webm file header on big endian machines. This change fixed that. Change-Id: I31924ebd476a87f3e88b9b5424540bf781d2b86f
-
- 29 Jun, 2011 - 2 commits
-
-
Johann authored
and divide by 0 errors Change-Id: I8af5ca3d0913cb6f278fff754f8772bcb62e674a
-
John Koleszar authored
For clips that are near 60fps and have a lot of alt refs, it's possible that the ring buffer holding the previous frames sizes/pts could wrap around, leading to a division by zero. In addition to checking for this condition in the ring buffer loop, the buffer size is made dependent on the actual frame rate in use, rather than defaulting to 60, which should improve accuracy at frame rates >= ~60. Change-Id: If5a04d6e847316dc5f7504f25c01164cf9332be8
-
- 28 Jun, 2011 - 1 commit
-
-
James Zern authored
Free buffers allocated for y4m input and webm cue list. Change-Id: I02051baae3b45f692cf5c7f520ea9a2d80c7b470
-
- 23 Jun, 2011 - 2 commits
-
-
John Koleszar authored
Add the --rate-hist=n option, which displays a histogram with n buckets for the rate over the --buf-sz window. Change-Id: I2807b5a1525c7972e9ba40839b37e92b23ceffaf
-
John Koleszar authored
Add the --q-hist=n option, which displays a histogram with n buckets for the quantizer selected on each frame. Change-Id: I59b020c26b0acae0b938685081d9932bd98df5c9
-
- 27 Apr, 2011 - 1 commit
-
-
Fritz Koenig authored
Fixes issue #323 Change-Id: I41c297df37afe186a8425ed2e2a95032069dcb9a
-
- 25 Apr, 2011 - 2 commits
-
-
John Koleszar authored
Adds a control to limit the maximum size of a keyframe, as a function of the per-frame bitrate. See this thread[1] for more detailed discussion: [1]: http://groups.google.com/a/webmproject.org/group/codec-devel/browse_thread/thread/271b944a5e47ca38 Change-Id: I7337707642eb8041d1e593efc2edfdf66db02a94
-
Alok Ahuja authored
Create a new input parameter to allow specifying the packed frame stereo 3d format. A default value of mono will be written in the absence of user specified input Change-Id: I576d9952ab5d7e2076fbf1b282016a9a1baaa103
-
- 15 Apr, 2011 - 1 commit
-
-
Johann authored
source files are not executable Change-Id: Id2c7294695a22217468426423979f68f02d82340
-
- 30 Mar, 2011 - 1 commit
-
-
John Koleszar authored
Identified as a possible cause of issue #308, the code was silently ignoring realloc failures, which would lead to corruption, memory leaks, and likely a crash. The best we can do in this case is die gracefully. Change-Id: Ie5f6a853d367015be5b9712bd742778f3baeefd9
-
- 21 Mar, 2011 - 1 commit
-
-
John Koleszar authored
Map an enum to the --end-usage values, so you can specify --end-usage=cq instead of --end-usage=2. The numerical values still work for historical scripts, etc, but this is more user friendly. Change-Id: I445ecd9638f801f5924a71eabf449bee293cdd34
-
- 07 Mar, 2011 - 1 commit
-
-
Ralph Giles authored
Cast size_t to (unsigned long) and print it with the %lu format string, which is more portable than C99's explict %zu for size_t. This truncates on Windows x64 but otherwise works on 32 and 64 bit platforms. In practice the stats file is unlikely to be so large. Change-Id: I0432b3acf85fc6ba4ad50640942e1ca4614b21cb
-
- 28 Jan, 2011 - 1 commit
-
-
Tero Rintaluoma authored
Adds following targets to configure script to support RVCT compilation without operating system support (for Profiler or bare metal images). - armv5te-none-rvct - armv6-none-rvct - armv7-none-rvct To strip OS specific parts from the code "os_support"-config was added to script and CONFIG_OS_SUPPORT flag is used in the code to exclude OS specific parts such as OS specific includes and function calls for timers and threads etc. This was done to enable RVCT compilation for profiling purposes or running the image on bare metal target with Lauterbach. Removed separate AREA directives for READONLY data in armv6 and neon assembly files to fix the RVCT compilation. Otherwise "ldr <reg>, =label" syntax would have been needed to prevent linker errors. This syntax is not supported by older gnu assemblers. Change-Id: I14f4c68529e8c27397502fbc3010a54e505ddb43
-
- 07 Jan, 2011 - 1 commit
-
-
Paul Wilkins authored
The merge includes hooks to for CQ mode and other code changes merged from the test branch. CQ mode attempts to maintain a more stable quantizer within a clip whilst also trying to adhere to a guidline maximum bitrate. The existing target data rate parameter is used to specify the guideline maximum bitrate. A new parameter allows the user to specify a target CQ level. For normal (non kf/gf/arf) frames, the quantizer will not drop BELOW the user specified value (0-63). However, in some cases the encoder may choose to impose a target CQ that is above that specified by the user, if it estimates that consistent use of the target value is not compatible with guideline maximum bitrate. Change-Id: I2221f9eecae8cc3c431d36caf83503941b25e4c1
-
- 23 Dec, 2010 - 1 commit
-
-
James Berry authored
stats_close() was not freeing memory for single pass runs. It now takes in arg_passes to determine when it should free memory. Change-Id: I6623b7e30b76f9bf2e16008490f9b20484d03f31
-
- 17 Dec, 2010 - 1 commit
-
-
John Koleszar authored
Add a new encoder control, VP8E_SET_TUNING, to allow the application to inform the encoder that the material will benefit from certain tuning. Expose this control as the --tune option to vpxenc. The args helper is expanded to support enumerated arguments by name or value. Two tunings are provided by this patch, PSNR (default) and SSIM. Activity masking is made dependent on setting --tune=ssim, as the current implementation hurts speed (10%) and PSNR (2.7% avg, 10% peak) too much for it to be a default yet. Change-Id: I110d969381c4805347ff5a0ffaf1a14ca1965257
-
- 13 Dec, 2010 - 1 commit
-
-
James Berry authored
read_frame would incorrectly insert detect->buf into img for ivf files. detect->position now set to 4 if input file is detected to be ivf in file_is_ivf to keep this from occuring. Change-Id: I5e235dd3033985bc62707a35c13af5984620208e
-
- 25 Nov, 2010 - 1 commit
-
-
Pascal Massimino authored
remove warning comment in vpxenc.c: in case of 1x1 picture, detect_bytes will be equal to '3' and we'll fall back to RAW_TYPE. fix read_frame() by tracking the pre-read buffer length in the struct detect Change-Id: If1ed86ee5260dcdbc8f9d10da6cbb84a4cc2f151
-
- 12 Nov, 2010 - 1 commit
-
-
Frank Galligan authored
When the first pts equaled 0 ivfenc was incorrectly increasing the pts by 1. I changed the pts and last pts to be signed. I also set the default value of last pts to -1. Change-Id: I30bcec5af9b16d93fa9e3abbea7764b133e9cd73
-
- 05 Nov, 2010 - 1 commit
-
-
John Koleszar authored
Change Ice204e86 identified a problem with bitrate undershoot due to low precision in the timestamps passed to the library. This patch takes a different approach by calculating the duration of this frame and passing it to the library, rather than using a fixed duration and letting the library average it out with higher precision timestamps. This part of the fix only applies to vpxenc. This patch also attempts to fix the problem for generic applications that may have made the same mistake vpxenc did. Instead of calculating this frame's duration by the difference of this frame's and the last frame's start time, we use the end times instead. This allows the framerate calculation to scavenge "unclaimed" time from the last frame. For instance: start | end | calculated duration ======+=======+==================== 0ms 33ms 33ms 33ms 66ms 33ms 66ms 99ms 33ms 100ms 133ms 34ms Change-Id: I92be4b3518e0bd530e97f90e69e75330a4c413fc
-