update android project
This commit is contained in:
@@ -19,11 +19,9 @@ add_library(openh264 SHARED IMPORTED)
|
|||||||
set_target_properties(openh264 PROPERTIES IMPORTED_LOCATION
|
set_target_properties(openh264 PROPERTIES IMPORTED_LOCATION
|
||||||
${CMAKE_SOURCE_DIR}/../../libs/openh264/lib/android/${ANDROID_ABI}/libopenh264.so)
|
${CMAKE_SOURCE_DIR}/../../libs/openh264/lib/android/${ANDROID_ABI}/libopenh264.so)
|
||||||
|
|
||||||
# Specifies a library name, specifies whether the library is STATIC or
|
add_library(yuv SHARED IMPORTED)
|
||||||
# SHARED, and provides relative paths to the source code. You can
|
set_target_properties(yuv PROPERTIES IMPORTED_LOCATION
|
||||||
# define multiple libraries by adding multiple add.library() commands,
|
${CMAKE_SOURCE_DIR}/../../libs/libyuv/lib/android/${ANDROID_ABI}/libyuv.so)
|
||||||
# and CMake builds them for you. When you build your app, Gradle
|
|
||||||
# automatically packages shared libraries with your APK.
|
|
||||||
|
|
||||||
# now build app's shared lib
|
# now build app's shared lib
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
|
||||||
@@ -124,6 +122,7 @@ add_library(
|
|||||||
../../src/node_input_box.cpp
|
../../src/node_input_box.cpp
|
||||||
../../src/node_dialog_export_ppbr.cpp
|
../../src/node_dialog_export_ppbr.cpp
|
||||||
../../src/node_panel_animation.cpp
|
../../src/node_panel_animation.cpp
|
||||||
|
../../src/mp4enc.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
target_include_directories(native-lib PRIVATE
|
target_include_directories(native-lib PRIVATE
|
||||||
@@ -145,12 +144,14 @@ target_include_directories(native-lib PRIVATE
|
|||||||
../../libs/fmt/include
|
../../libs/fmt/include
|
||||||
../../libs/openh264/include
|
../../libs/openh264/include
|
||||||
../../libs/mp4v2/include
|
../../libs/mp4v2/include
|
||||||
|
../../libs/libyuv/include
|
||||||
)
|
)
|
||||||
|
|
||||||
# add lib dependencies
|
# add lib dependencies
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
native-lib
|
native-lib
|
||||||
libmp4v2.a
|
libmp4v2.a
|
||||||
|
yuv
|
||||||
openh264
|
openh264
|
||||||
android
|
android
|
||||||
app-glue
|
app-glue
|
||||||
|
|||||||
@@ -145,7 +145,10 @@ android {
|
|||||||
main {
|
main {
|
||||||
manifest.srcFile 'src/main/AndroidManifest.xml'
|
manifest.srcFile 'src/main/AndroidManifest.xml'
|
||||||
java.srcDirs = ['../src/java', 'src/main/java']
|
java.srcDirs = ['../src/java', 'src/main/java']
|
||||||
jniLibs.srcDirs = ['../../libs/openh264/lib/android']
|
jniLibs.srcDirs = [
|
||||||
|
'../../libs/openh264/lib/android',
|
||||||
|
'../../libs/libyuv/lib/android',
|
||||||
|
]
|
||||||
res.srcDirs = ['../src/res']
|
res.srcDirs = ['../src/res']
|
||||||
//assets.srcDirs = ['../../assets']
|
//assets.srcDirs = ['../../assets']
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,14 +59,20 @@ bool MP4Encoder::init(int width, int height, int fps, int bitrate) noexcept
|
|||||||
|
|
||||||
param.uiMaxNalSize = 1500;
|
param.uiMaxNalSize = 1500;
|
||||||
param.iTargetBitrate *= param.iSpatialLayerNum;
|
param.iTargetBitrate *= param.iSpatialLayerNum;
|
||||||
m_encoder->InitializeExt(¶m);
|
if (m_encoder->InitializeExt(¶m) != 0)
|
||||||
|
{
|
||||||
|
LOG("Error initializing the encoder");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
int trace_level = WELS_LOG_ERROR;
|
int trace_level = WELS_LOG_ERROR;
|
||||||
m_encoder->SetOption(ENCODER_OPTION_TRACE_LEVEL, &trace_level);
|
m_encoder->SetOption(ENCODER_OPTION_TRACE_LEVEL, &trace_level);
|
||||||
m_encoder->SetOption(ENCODER_OPTION_TRACE_CALLBACK, encoder_trace_callback);
|
m_encoder->SetOption(ENCODER_OPTION_TRACE_CALLBACK, (void*)encoder_trace_callback);
|
||||||
m_encoder->SetOption(ENCODER_OPTION_TRACE_CALLBACK_CONTEXT, this);
|
m_encoder->SetOption(ENCODER_OPTION_TRACE_CALLBACK_CONTEXT, this);
|
||||||
int videoFormat = videoFormatI420;
|
int videoFormat = videoFormatI420;
|
||||||
m_encoder->SetOption(ENCODER_OPTION_DATAFORMAT, &videoFormat);
|
m_encoder->SetOption(ENCODER_OPTION_DATAFORMAT, &videoFormat);
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool MP4Encoder::encode(const Image& rgba) noexcept
|
bool MP4Encoder::encode(const Image& rgba) noexcept
|
||||||
|
|||||||
Reference in New Issue
Block a user