Skip to content

EN-12445: add keyframe information to first pass stats#4

Closed
kiinz55 wants to merge 1 commit intowebmproject:mainfrom
bitmovin-engineering:feature/EN-12445-check-for-forced-key-frames-in-second-pass
Closed

EN-12445: add keyframe information to first pass stats#4
kiinz55 wants to merge 1 commit intowebmproject:mainfrom
bitmovin-engineering:feature/EN-12445-check-for-forced-key-frames-in-second-pass

Conversation

@kiinz55
Copy link

@kiinz55 kiinz55 commented Mar 24, 2023

No description provided.

@google-cla
Copy link

google-cla bot commented Mar 24, 2023

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

double duration;
double count;
int64_t spatial_layer_id;
int is_forced_key_frame;
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

using int for the flag for consistency in the repo

@kiinz55 kiinz55 marked this pull request as ready for review March 24, 2023 13:33
@kiinz55 kiinz55 closed this Mar 24, 2023
hubot pushed a commit that referenced this pull request Jan 8, 2025
Before v1.15.0: c=10, a=1, r=0

Rule #3: source code has changed, increment r:
r=1

Rule #4: interfaces were removed in vpx_tpl.h, set r=0, increment c:
c=11, r=0

Rule #5: no interfaces have been added

Rule #6: interfaces were removed in vpx_tpl.h, set a=0:
a=0

After release: c=11, a=0, r=0

major = c-a = 11
minor = a = 0
patch = r = 0

Bug: webm:384672478
Change-Id: I2e70e7e35c64ece32eaf1dc5625640965483f9b9
hubot pushed a commit that referenced this pull request Oct 17, 2025
Running media_unittests in Chromium under UBSan gives the following
error:

    [ RUN      ] VpxGeneric/SoftwareVideoEncoderTest.EncodeAndDecode/vp9__vp9_profile2__PIXEL_FORMAT_I420__
    ../../third_party/libvpx/source/libvpx/vpx_dsp/arm/mem_neon.h:47:10: runtime error: left shift of 4294955711 by 32 places cannot be represented in type 'int64_t' (aka 'long long')
    ...
        #0 0x000106e3298c in highbd_iadst16_neon+0x18 (/Volumes/Work/s/w/ir/out/759a-mac-ubsan-fyi-r/media_unittests:arm64+0x1025e698c)
        #1 0x000106e32824 in vp9_highbd_iht16x16_256_add_neon+0x198 (/Volumes/Work/s/w/ir/out/759a-mac-ubsan-fyi-r/media_unittests:arm64+0x1025e6824)
        #2 0x000108f9a550 in vp9_encode_block_intra+0xe7c (/Volumes/Work/s/w/ir/out/759a-mac-ubsan-fyi-r/media_unittests:arm64+0x10474e550)
        #3 0x000108f77160 in vp9_foreach_transformed_block_in_plane+0x228 (/Volumes/Work/s/w/ir/out/759a-mac-ubsan-fyi-r/media_unittests:arm64+0x10472b160)
        #4 0x000108f9b148 in vp9_encode_intra_block_plane+0x138 (/Volumes/Work/s/w/ir/out/759a-mac-ubsan-fyi-r/media_unittests:arm64+0x10474f148)
    ...

The bug is that left-shifting into the sign bit of an int64_t is an
overflow, and signed overflow is undefined.

Given vcreate_s16 and vcreate_s32 take uint64_t, uint64_t seems a better
type to use here anyway.

Bug: 40248746
Change-Id: I970e65a7e88dac060c2fe64eed765f8f8a31fd7f
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant