Commit Graph

8353 Commits

Author SHA1 Message Date
Yaowu Xu
896d79a57e Removed the reset of mode_info from previous frame
Prior to this commit, both encoder and decoder reset mode/mv info from
previous frame in error resilient mode to ensure bitstreams are able to
decode when there is loss of frame in decoder side. However, this is
not necessary. This commit changed to remove the reset, so encoder can
continue to use mode/mv/partition information from previously encoded
frame without affecting decodeablilty under loss of frame.

Change-Id: I0279f862900dc647fb471ae3389770bb1b9f454f
2014-02-13 12:48:08 -08:00
Johann
279dbb9a30 Merge "Skip COMDAT sections when parsing COFF" 2014-02-12 09:41:30 -08:00
Deb Mukherjee
cf479baa03 Merge "Removes active_worst_quality feedback" 2014-02-12 09:20:31 -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
Tom Finegan
20d0f2b92f Merge "vpxenc: Silence MSVC warnings." 2014-02-11 16:14:43 -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
Dmitry Kovalev
f6bc927070 Merge "Disabling BasicRateTargeting3TemporalLayers test." 2014-02-11 15:20:41 -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
531d3acc8f Disabling BasicRateTargeting3TemporalLayers test.
Frank is going to fix it soon, disabling for now.

Change-Id: Ifb7092d7db5af01bde62897af189fd620b7bbdf3
2014-02-11 14:37:13 -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
Tom Finegan
7a691f17f2 vpxenc: Silence MSVC warnings.
Change-Id: I7dd8532052f0b2d4077f579e78db3987b58e3d2a
2014-02-11 09:33:24 -08:00
Tom Finegan
c6574f4daf Merge "vpx_temporal_scalable_patterns: Remove extra const." 2014-02-11 09:28:35 -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
Tom Finegan
b37e0a33c1 vpx_temporal_scalable_patterns: Remove extra const.
Silences MSVC warning.

Change-Id: I43191cdd8f0231b259ec091be24325ec99d2e962
2014-02-10 18:08:31 -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
Tom Finegan
4d6cd41b71 Merge "vpx_integer: Use inttypes.h in MSVC (2013 and later)." 2014-02-10 16:42:34 -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
Tom Finegan
7320fdda38 vpx_integer: Use inttypes.h in MSVC (2013 and later).
Change-Id: I2c47f0ab13de82de8833c3f134e5f3c74394374f
2014-02-10 15:30:43 -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
Dmitry Kovalev
c761bd78fa Merge "Cleaning up {simple, twopass}_encoder examples." 2014-02-10 14:27:48 -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
James Zern
ae8bc7a8e1 Merge "add_warning(): remove dead store" 2014-02-10 13:20:31 -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