Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

switch to external cpu_features #3314

Open
wants to merge 26 commits into
base: openh264v2.1.0
Choose a base branch
from

Conversation

alexcohn
Copy link
Contributor

Google has recently deprecated the NDK cpu-features library in favor of an external implementation. The new library is more powerful and multiplatform, but for Android it has a drag'n'drop wrapper. This PR uses this ndk-compat wrapper to render the Android implementation not depend on the deprecated code.

disigma and others added 26 commits June 27, 2019 12:15
The definition of WELS_PRIVATE_EXTERN breaks the compilation, because of the whitespace before it.
update v2.1.0 ReleasNote to master
The Loongson 64-bit simd optimizations has used LEXT1(LoongISA general EXTensions 1),
so we must make sure loongson-mmi and loongson-ext exist at the same time.
Using and operation when detecting Loongson mmi instructions
update v2.1.0 binaries link in releasenote
This was forgotten before the 2.1.0 release.

It seems the 2.1.0 release tarballs were not generated with 'meson dist'. Using 'meson dist' to build and validate the tarball would allow immediately noticing such issues.
bbcc2cb changed the size of SBufferInfo, so we need to bump from ABI
version 5 to version 6.

Fixes cisco#3264
1. pCodingParam.iNumRefFrame should be valid within the range of
(MIN_REF_PIC_COUNT, MAX_REF_PIC_COUNT), inclusive.

2. While in WelsBuildRefList(), we should not break after finishing
the first RefList;

3. pCurSliceHeader->uiRefCount should be allowed to equal to
pCurLayer->sLayerInfo.pSpsP->iNumRefFrames.

Signed-off-by: Linjie Fu <[email protected]>
Allow prompting a warning like:

>>Warning:iNumRefFrame(3) setting does not support the temporal
>>and LTR setting, will be reset to 4

instead of reporting unsupported and fail.

Signed-off-by: Linjie Fu <[email protected]>
fix sha mismatch error due to travis failure
Update version number in meson.build
Change the verbosity level of qp changing message from warning
to info.

Setting QP<=0 means "use the defaults", and that's an intended
usecase, so change to info.

Discussed in:
https://patchwork.ffmpeg.org/project/ffmpeg/patch/[email protected]/

Suggested-by: Martin Storsjö <[email protected]>
Signed-off-by: Linjie Fu <[email protected]>
encoder_ext: modify the verbosity level for QP changing
cleanup build flags, note that now NDK only has clang and c++_shared
look at the commonly defined ANDROID_HOME and ANDROID_NDK_ROOT env variables
NDKLEVEL can be extracted from TARGET
verify that NDK version is good
build it with CMake
…pu_features

# Conflicts:
#	build/platform-android.mk
@alexcohn alexcohn changed the title switch to external cpu features switch to external cpu_features Jul 15, 2020
@Viish
Copy link

Viish commented May 31, 2022

Thanks a lot!
We are now using your commits to be able to continue to build it for Android using recent NDK: https://gitlab.linphone.org/BC/public/external/openh264/-/tree/openh264v2.2.0-bc

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.

10 participants