Age | Commit message (Collapse) | Author |
|
|
|
|
|
Refactor define_gf_group_structure() to unify the single-layer,
multi-layer ARF, and GF only GOP structure setup.
Change-Id: Iebbe9c3742fc58ae4e77b1072ebecb3ee7bd26b2
|
|
|
|
|
|
|
|
Encode the next frame at max q.
For layers: post_encode_drop is only check on base
spatial layer, and if base is post-encoded-dropped,
then whole superframe is dropped.
Added API to guard postencode dropping. Turned off by default.
Added unittest.
BUG=b/112990050
Change-Id: I42fee279014aca616f7a4d9b582cb2bf5da2f2e7
|
|
|
|
|
|
Increase search area, use NSTEP, and in some cases avoid
bsize below 16x16. This for base spatial layer when many blocks
in the frame have motion (from scene detection analysis).
Improves quality for scrolling motion.
Change-Id: If77b43e738a6c43610d4727a95712667088db564
|
|
|
|
Change-Id: I306083f233e53884ac21fb4621066713edddc8f7
|
|
|
|
|
|
|
|
|
|
|
|
Address poor key frame detection in some content.
This patch improves on poor key frame / scene cut detection observed
with some test content. The content in question was letter boxed film
style material and also had quite low contrast. For both 1080P and 4K
multiple genuine scene cuts were being missed.
The changes alter the conditions for marking a transition as a "flash" rather
than a scene change. The new code still deals well with genuine flashes as
observed in the "crew" test clip, without falsely flagging some of the
the scene cuts in the "film" test clip.
The new film test clip also had some "flash" frames caused by a lightning
effect and in one case a flash occurred right before a scene change. This
caused a misplacement of the key frame but has been addressed by a new
clause that requires the coded error for the next frame after a candidate
key frame to be lower than the current frame.
The patch also changes the way in which neutral blocks (similar inter and
inter error) are handled in the candidate key frame decision in a way which
hopefully handles the letter boxed format better.
During wider testing some film clips still had missed key frames but this
patch does improve things. In the case of the initial test clip the encoder
correctly marks all 3 scene cuts vs 0 before the patch.
Testing with our standard (mainly short single kf) derf and NF test clips
is neutral.
Change-Id: I3b7dcfe7b2fb13fd0816ea46acc3e69c8bc581b3
|
|
|
|
When ref frame is INTRA_FRAME, pre buffer shouldn't be used.
This CL copies behavior in single thread. That should apply to
multithreading case too.
BUG=webm:1496
Change-Id: Ibe9ab8ea9dc664151fa7ebac529d5fd1a481b4a3
|
|
Track the effective maximum layer depth in a given group of
pictures. Keep it in the GF_GROUP data structure.
Change-Id: If777c4e0f4a871c7226a91e3871f445e92f18b24
|
|
The previous value was set off by 1. Use the correct value.
Change-Id: I1ce53cc99063ce31e7ab1c43c6e444cb9a1972db
|
|
Make it a standalone operation unit. Refactor to cut off unnecessary
dependency between define_gf_group_structure() and
allocate_gf_group_bits().
Change-Id: I954fd4e96152471a994f2ffd38a72061ab517ddd
|
|
* changes:
Fix compilation on OS/2
Use wcslen() instead of std::wcslen()
Fix compilation on OS/2
|
|
|
|
Found with clang-tidy. This value is unused in libvpx.
There is an existing test which ensures this is not used:
test/encode_api_test.cc:
EXPECT_EQ(VPX_CODEC_INVALID_PARAM,
vpx_codec_enc_config_default(kCodecs[i], &cfg, 1));
Change-Id: I94bd0663c6652b4267204c02c3921972c854d0b0
|
|
The functionality has been covered in the above
set_gf_overlay_frame_type() call.
Change-Id: Id4049cd9a1a5a9bad7ea62c412fcb557afa9a572
|
|
This function specifically only aligns the stride and not the base buffer
like vpx_img_alloc does.
BUG=webm:1444
Change-Id: I3092827eeec3c9e16306a3973534d3a362a337e8
|
|
Make the maximum layer depth allowed a control parameter in
GF_GROUP. No coding stats would change.
Change-Id: I9d17167da322831e7013d761980e1c16375a161b
|
|
For 1 pass cbr encoding mode, with frame-dropping on:
increase the rate correction threshold for drop-overshoot detection,
to better capture cases of large overshoot.
Change-Id: I1153b1b71cf106749dd985074d6bc8f37d163c7e
|
|
|
|
|
|
|
|
|
|
Include vpx_ports/msvc.h to handle snprintf on older
versions of Visual Studio
Change-Id: I06cd99b32bbae82b3df079d41ff20a9a07f6fe1c
|
|
Does not compile. Noticed while cleaning up un-namespaced functions
Change-Id: I4a9048e66d051397f652e7b5412606a5e234f61f
|
|
Change-Id: Ibec078c80ca1dfe6fbbc4288db89d719dac453a7
|
|
BUG=webm:1444
Change-Id: Iee19be068afc6c81396c79218a89c469d2e66207
|
|
|
|
|
|
|
|
Always use src/ref and _ptr/_stride suffixes.
Normalize to [xy]_offset and second_pred.
Drop some stray source/recon_strides.
BUG=webm:1444
Change-Id: I32362a50988eb84464ab78686348610ea40e5c80
|
|
|
|
|
|
|
|
|
|
"bc" maps to BOOL_CODER better than "br"
Change-Id: Idefd03e79ccc1851a1b26f8206a159b0e5c5fb2d
|
|
|
|
Use "pbi" like the rest of the functions
Change-Id: I5f3036b8f8361c30353be378d83455b83b82ac9f
|
|
|