Commit Graph

4255 Commits

Author SHA1 Message Date
Jingning Han
3602c4312d Merge "Use INTER_OFFSET in vp9_pick_inter_mode" 2014-02-12 10:26:06 -08:00
Yaowu Xu
56d0b36092 Merge "Fixed a bug where no valid partition is allowed" 2014-02-12 10:13:49 -08:00
Deb Mukherjee
cf479baa03 Merge "Removes active_worst_quality feedback" 2014-02-12 09:20:31 -08:00
Jingning Han
e8b7610e8f Use INTER_OFFSET in vp9_pick_inter_mode
Cosmetic change to use pre-defined macros.

Change-Id: I93e9fa90113d0242599048940b39694660385a6f
2014-02-12 09:14:29 -08:00
Yaowu Xu
69a6871904 Fixed a bug where no valid partition is allowed
Change-Id: I4d2729dc5c46db2847700256941a66b0957c105d
2014-02-12 09:00:34 -08:00
Yunqing Wang
356a7e9642 Merge "Enable encode_breakout in real time encoding" 2014-02-11 21:07:24 -08:00
Dmitry Kovalev
9453c64726 Merge "Hiding encode_b_args struct inside vp9_encodemb.c." 2014-02-11 17:36:05 -08:00
Deb Mukherjee
d23e339202 Removes active_worst_quality feedback
Removes certain cases of feedback of active_worst_quality,
and removes it from the RATE_CONTROL structure. Now active
worst quality is expected to be computed locally in the
q picking function during the encode.
Making temporal filter strength depend on avg_frame_qindex
rather than on active_worst_quality actually improves
performance esp. for yt.
derf: +0.038%
yt: +0.359%

Change-Id: I1fe5a343034b55af9322289165321f00ac0827b1
2014-02-11 16:59:56 -08:00
Yunqing Wang
507fd5220b Enable encode_breakout in real time encoding
In real time encoding, we enable encode_breakout to make encoding
fast. A speed feature "use_encode_breakout" is defined to set
encode_breakout thresholds for different speeds.

However, currently, static_thresh is an encoder option. The encode_
breakout can be turned off if user sets static_thresh=0 specifically.

The rtc set borg test result: (need to set --static_thresh=1)
speed -5, psnr loss -3.543%;
speed -4, psnr loss -2.358%;
speed -3, psnr loss -0.771%.

Encoding speed test:
speed -5, 11% - 60% speedup;
speed -4, 5.5% - 28% speedup;
speed -3, 0.8% - 7% speedup.

Change-Id: Icde592ffbe77eac7446f872a2e9eb2051733677b
2014-02-11 15:30:54 -08:00
Tom Finegan
c49c75fde0 Merge "vp9/common/x86: Silence MSVC warnings in vp9_asm_stubs.c." 2014-02-11 14:39:27 -08:00
Dmitry Kovalev
4fff8566f8 Merge "Cleaning up compute_fast_motion_search_level()." 2014-02-11 11:12:29 -08:00
Dmitry Kovalev
28f46aa633 Merge "Fixing errorperbit calculation." 2014-02-11 10:19:59 -08:00
Jingning Han
e939396eb8 Merge "Rework mode_info update in vp9_pick_inter_mode" 2014-02-11 08:49:40 -08:00
Jingning Han
220e9a932e Merge "Use more meaningful names for speed features" 2014-02-11 08:49:35 -08:00
Frank Galligan
d51ca0db00 Merge "Add get release decoder frame buffer functions." 2014-02-11 08:19:37 -08:00
Dmitry Kovalev
803a5c67dd Merge "Encoder quantization cleanup." 2014-02-10 21:32:04 -08:00
Dmitry Kovalev
4a13d53523 Merge "Cleaning up update_stats() function." 2014-02-10 17:30:29 -08:00
Dmitry Kovalev
7e7ae66f74 Merge "Making vp9_activity_masking() static." 2014-02-10 17:29:40 -08:00
Deb Mukherjee
992500b8cb Merge "Further one-pass vbr rate control changes" 2014-02-10 16:38:19 -08:00
James Zern
66bfc69bfc Merge "*.mk: s/\bUSE_X86INC/CONFIG_USE_X86INC/" 2014-02-10 15:39:28 -08:00
Jingning Han
f34a7eb253 Rework mode_info update in vp9_pick_inter_mode
This commit moves unnecessary mode_info update steps out of inter
mode test loop.

Change-Id: I3705450c44cda060021f4fd76c34f1b20d11658b
2014-02-10 15:20:11 -08:00
Jingning Han
734938dc6b Use more meaningful names for speed features
Use frame_parameter_update to precisely describe the functionality.

Change-Id: Ia9a55ba8efef7b987e30d949dd00ac716189bdb9
2014-02-10 15:20:11 -08:00
Tom Finegan
60e91a92c3 vp9/common/x86: Silence MSVC warnings in vp9_asm_stubs.c.
Update filter_1dfunction definition to match usage.

Change-Id: Ie3cae13dc1ec3f5838c5f29d1c76a1a98a9217fa
2014-02-10 15:08:42 -08:00
Yaowu Xu
3da25f29f5 Merge "Merged two similar functions to reduce duplication" 2014-02-10 14:50:01 -08:00
Deb Mukherjee
15fb5510a8 Further one-pass vbr rate control changes
Some parameter changes and fixes on one-pass rate control.
derfraw300 is now only 10% below 2-pass speed 0 rate control.

Change-Id: I1940eef8a5a035dc18e71b880d5e00cabd1f01b9
2014-02-10 14:27:19 -08:00
Dmitry Kovalev
52c1550e59 Merge "Cleaning up rd_check_segment_txsize() function." 2014-02-10 14:14:18 -08:00
Frank Galligan
e8e152799b Add get release decoder frame buffer functions.
This CL changes libvpx to call a function when a frame buffer
is needed for decode. Libvpx will call a release callback when
no other frames reference the frame buffer. This CL adds a
default implementation of the frame buffer callbacks. Currently
only VP9 is supported. A future CL will add support for
applications to supply their own frame buffer callbacks.

Change-Id: I1405a320118f1cdd95f80c670d52b085a62cb10d
2014-02-10 14:08:11 -08:00
Yaowu Xu
855070e254 Merged two similar functions to reduce duplication
Function encode_rtc_frame_internal() and encode_frame_internal() only
differed by a couple of speed features, this commit relocation those
difference into the setup of speed features and merged two functions
into one to remove duplication.

It also fixed a subtle bug super_fast_rtc was used before it was
initialized.

Change-Id: I234a5a1d11a4450930e5b4943dbab434208d5030
2014-02-10 11:36:42 -08:00
Jim Bankoski
352db1d134 Merge "Convert small static header functions to inline" 2014-02-10 11:35:12 -08:00
Jim Bankoski
59ff7c6898 Merge "Convert small static functions in header to inline.." 2014-02-10 11:35:02 -08:00
Jim Bankoski
09d374f0a5 Merge "Convert small header functions to inline" 2014-02-10 11:34:56 -08:00
Jim Bankoski
da4df15714 Merge "Convert header static functions to inline or make them global." 2014-02-10 11:34:51 -08:00
Jim Bankoski
00c48ae091 Merge "Converted functions in header to INLINE..." 2014-02-10 11:34:43 -08:00
Jim Bankoski
adc84cf956 Merge "Convert functions to inline that are small ." 2014-02-10 11:34:36 -08:00
Jim Bankoski
56090b2d1e Merge "Convert functions to inline that are in headers static." 2014-02-10 11:34:29 -08:00
Jim Bankoski
3a4598cf67 Merge "Converted function to inline" 2014-02-10 11:34:25 -08:00
Jim Bankoski
2697d6c857 Merge "Converted short static functions to inline." 2014-02-10 11:34:17 -08:00
Dmitry Kovalev
71b7cb2006 Fixing errorperbit calculation.
Change-Id: I06e082a18dbcc6e126cf288ee769c1480e3f2f4d
2014-02-10 11:06:42 -08:00
Marco Paniconi
812bacc919 Some updates and fixes for layered CBR mode.
-Properly set the average frame size for each layer.

-Allow each layer to update its average/last Q stats after encoding.

-Initialize for some layer context variables.

Change-Id: Iaa37d144fcf4f30ff4283a4e8db8b9ca8bf4c815
2014-02-10 10:21:20 -08:00
Jim Bankoski
3c790ec0f8 Convert small static header functions to inline
Change-Id: I467b28346a0d8d4d8b96d6c05fc39c34eec26e5c
2014-02-10 07:56:45 -08:00
Jim Bankoski
b5f59ea280 Convert small static functions in header to inline..
Change-Id: Ic4fc01be7738fbabf8c7860dbe3476ab4caf5fc2
2014-02-10 07:56:38 -08:00
Jim Bankoski
7341725e13 Convert small header functions to inline
Change-Id: I4e5575f0d7ccfe2361b8cbf78e7dc079272c9f5f
2014-02-10 07:56:29 -08:00
Jim Bankoski
69f58b40e0 Convert header static functions to inline or make them global.
Change-Id: Ib26fbfef3505299f754e5af6c437a85d7746fc28
2014-02-10 07:39:12 -08:00
Jim Bankoski
6a9e58cb1d Converted functions in header to INLINE...
Change-Id: I00512c6cef3a4af8df57c7263ceb853fb2db8140
2014-02-09 20:12:04 -08:00
Jim Bankoski
18c8deabbf Convert functions to inline that are small .
Change-Id: I3b160e93d9319c8e1abda2a60f49f89c409d534b
2014-02-09 20:08:58 -08:00
Jim Bankoski
9768d0b184 Convert functions to inline that are in headers static.
Change-Id: If1ec3b64be327e8c48ec7efbacde208d2129fdb0
2014-02-09 20:06:35 -08:00
Jim Bankoski
99e4c508b2 Converted function to inline
Change-Id: Iaa4880c8a207cfea509608e1ef4593794b6b31f2
2014-02-09 20:04:54 -08:00
Jim Bankoski
3a3aa3f4e3 Converted short static functions to inline.
Change-Id: I859719d41ced2e35d2765b636e627bb7edc3651e
2014-02-09 19:58:54 -08:00
Dmitry Kovalev
398f2f6298 Cleaning up rd_check_segment_txsize() function.
Change-Id: I7c09f84b26eb499daafd1393b48f12abb8a6fb8f
2014-02-08 20:18:37 -08:00
Dmitry Kovalev
1a30a8743b Making vp9_activity_masking() static.
Change-Id: Ic6a733f1fe92458da89c8459c5686ba1e08b92bf
2014-02-08 19:41:37 -08:00