- 16 Dec, 2011 1 commit
-
-
Yunqing Wang authored
Merged multi-resolution motion estimation with regular motion estimation function in order to remove duplicated part. This caused slight changes in multi-resulotion encoder quality & performance. Change-Id: Ib4ecc7acfebfe5eea959b5b91febae6db7b95fd1
-
- 15 Dec, 2011 5 commits
-
-
Scott LaVarnway authored
These functions are now used by the encoder. This is WIP with the goal of creating a common idct/add for the encoder and decoder. A boost of 1.8% was seen for the HD rt test clip used. [Tero] Added needed changes to ARM side. Change-Id: Ibbb8000be09034203d7adffc457d3c3f8b06a5bf
-
Yunqing Wang authored
-
Yunqing Wang authored
While doing motion search on a macroblock, we usually call vp8_find_near_mvs once per reference frame. Actually, for different reference frames, the only difference in calculating these near_mvs is they may have different sign_bias, which causes a sign change in resulting near_mvs. In this change, we only do find_near_mvs for the first reference frame. For other reference frames, only need to adjust the near_mvs according to that reference frame's sign_bias value. Change-Id: I661394b49c6ad79fed7d0f2eb2be239b9c56f149
-
Yunqing Wang authored
-
John Koleszar authored
-
- 14 Dec, 2011 8 commits
-
-
John Koleszar authored
-
Johann authored
-
Johann authored
-
John Koleszar authored
-
Johann authored
Allow targeting darwin11 / 10.7 Update arm paths for iPhoneOS 5.0 Change-Id: I057156349311ec66a163c4c1cea60dc5aeaaa492
-
James Berry authored
Add the notion of deferred validation of parameters. We don't want to validate the cq_level at initialization time, because it won't have been set via set_param() yet. Change-Id: Ia1308395e8c10e0b1dc4e9af3a09b2bd6744cc30
-
Attila Nagy authored
Sometimes same level is tested 2-3 times; store and reuse the calculated error value. Change-Id: Ia1c04a2568232edf9a5a62c4e2d8e8a50d85e00e
-
Attila Nagy authored
...regardless of the speed settings. Change-Id: I4b91ac7a7208efd690dfc69e175f8eb769b6ce03
-
- 13 Dec, 2011 7 commits
-
-
John Koleszar authored
-
James Berry authored
add check to set active_worst_quality to 127 if it is set above 127 Change-Id: I7db353d5c1b1c8516a116542b6ed21c0110bb512
-
Johann authored
-
Johann authored
The conversion script was incorrectly matching CONFIG_POSTPROC[_VISUALIZER] and generating an incorrect vpx_config.asm Match both PROC and ENDP on word boundaries Change-Id: Ic2788c3b522d4ee0afc5223b72e1b09fb52645be
-
Yunqing Wang authored
-
Yunqing Wang authored
Aligned the image buffer and stride to 32 bytes. This enables calling of optimized scaler function in libyuv, and improves the performance. Tested libyuv scaler(x86 optimization) on Linux and Windows, including: Linux 32/64bit, visual studio 32/64bit, Cygwin, and MinGW32. Also, fixed a wrong pointer in vpx_codec_encode(). Change-Id: Ibe97d7a0a745f82c43852fa4ed719be5a4db6abc
-
Johann authored
Mach-O prefixes function calls with _ Change-Id: I778c2ab91266887731a6a0316b42af7641826da4
-
- 12 Dec, 2011 2 commits
-
-
Jim Bankoski authored
-
Scott LaVarnway authored
-
- 10 Dec, 2011 1 commit
-
-
Jim Bankoski authored
Change-Id: I4168eb6ea22ae541471738a7a3453e7d52059275
-
- 09 Dec, 2011 1 commit
-
-
John Koleszar authored
The previous definition of uintptr_t was incorrect on x64 with MSVC. Also, the ARMV6 version of int_fast16_t was defined as unsigned for some reason. Since the fast types are currently unused, just remove them. Change-Id: Idd73f77a989c77feedcb4a6802ae6bd37324ed40
-
- 08 Dec, 2011 1 commit
-
-
Scott LaVarnway authored
Removed unnecessary transposes. Change-Id: I029fbaf8afafee34d54a4f3333c22023c15003c3
-
- 07 Dec, 2011 2 commits
-
-
Johann authored
-
Attila Nagy authored
Do the test filtering in the existing backup frame buffer instead of the original. Copy the original data into extra buffer before doing the filtering. This way there is no need to restore the original unfiltered frame at the end of level picking process. This came up in some discussions with Johann. Thanks! Change-Id: I495f4301d983854673276c34ec0ddf9a9d622122
-
- 06 Dec, 2011 2 commits
-
-
Yunqing Wang authored
-
Yunqing Wang authored
Added code to allocate aligned image buffer in vpx_img_alloc(). The alignment of the buffer and stride is determined by the parameter align. Change-Id: Idc866978484be3558551c56df39130ab7f74ddd4
-
- 05 Dec, 2011 2 commits
-
-
Yunqing Wang authored
The example encoder down-samples the input video frames a number of times with a down-sampling factor, and then encodes and outputs bitstreams with different resolutions. Support arbitrary down-sampling factor, and down-sampling factor can be different for each encoding level. For example, the encoder can be tested as follows. 1. Configure with multi-resolution encoding enabled: ../libvpx/configure --target=x86-linux-gcc --disable-codecs --enable-vp8 --enable-runtime_cpu_detect --enable-debug --disable-install-docs --enable-error-concealment --enable-multi-res-encoding 2. Run make 3. Encode: If input video is 1280x720, run: ./vp8_multi_resolution_encoder 1280 720 input.yuv 1.ivf 2.ivf 3.ivf 1 (output: 1.ivf(1280x720); 2.ivf(640x360); 3.ivf(320x180). The last parameter is set to 1/0 to show/not show PSNR.) 4. Decode: ./simple_decoder 1.ivf 1.yuv ./simple_decoder 2.ivf 2.yuv ./simple_decoder 3.ivf 3.yuv 5. View video: mplayer 1.yuv -demuxer rawvideo -rawvideo w=1280:h=720 -loop 0 -fps 30 mplayer 2.yuv -demuxer rawvideo -rawvideo w=640:h=360 -loop 0 -fps 30 mplayer 3.yuv -demuxer rawvideo -rawvideo w=320:h=180 -loop 0 -fps 30 The encoding parameters can be modified in vp8_multi_resolution_encoder.c, for example, target bitrate, frame rate... Modified API. John helped a lot with that. Thanks! Change-Id: I03be9a51167eddf94399f92d269599fb3f3d54f5
-
John Koleszar authored
-
- 29 Nov, 2011 1 commit
-
-
John Koleszar authored
-
- 28 Nov, 2011 4 commits
-
-
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
-
Yunqing Wang authored
This value needs to be copied to each thread's data structure. This fixed artifact problem in multi-thread encoder. Change-Id: Iab6d9745a1d44846aa503184705376f63a505597
-
Scott LaVarnway authored
In Change I83202ffd, I deleted one too many lines. Change-Id: If05d7c8988eb5c00898dc7c833ad7d99b5eb23e7
-
Scott LaVarnway authored
-
- 25 Nov, 2011 1 commit
-
-
Scott LaVarnway authored
to the dqcoeff or qcoeff buffer. The encoder would populate the dc coeffs of the y blocks as a separate stage (recon_dcblock) and the decoder would use a special version of the idct. This change eliminates the extra copy and reduces the code footprint. [Tero] Added needed changes to armv6 and NEON assembly. Change-Id: I83202ffdbaf83f6e5dd69f4ba2519fcf0b13b3ba
-
- 23 Nov, 2011 2 commits