首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >教程-5的GStreamer Android SDK错误

教程-5的GStreamer Android SDK错误
EN

Stack Overflow用户
提问于 2017-09-07 20:00:45
回答 1查看 518关注 0票数 1

我们已经克隆了一个project并按照说明进行了所有设置,但由于以下错误,仍无法构建应用程序:错误:(7,10)致命错误:找不到'gst/gst.h‘文件

以上错误在tutorial.c文件中:

代码语言:javascript
复制
#include <gst/gst.h>
#include <gst/video/video.h>
#include <gst/video/videooverlay.h>
#include <pthread.h>

GST_DEBUG_CATEGORY_STATIC (debug_category);
#define GST_CAT_DEFAULT debug_category

请找到下面我已经添加到我的项目中的gradle和Android.mk文件: Gradle

代码语言:javascript
复制
android {
compileSdkVersion 25
buildToolsVersion "25.0.0"
defaultConfig {
applicationId "com.example.ndktest"
minSdkVersion 19
targetSdkVersion 22
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
externalNativeBuild {
cmake {
cppFlags "-frtti -fexceptions"
arguments '-DANDROID_TOOLCHAIN=clang',
'-DANDROID_PLATFORM=android-19',
'-DANDROID_STL=gnustl_static',
'-DANDROID_ARM_NEON=TRUE',
'-DANDROID_CPP_FEATURES=exceptions rtti'

        }
    }
    ndk {
        moduleName "tutorial-5"
    }
}

sourceSets.main {
    jni.srcDirs = []
    jniLibs.srcDir new File(buildDir, 'lib')

}

buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
externalNativeBuild {
    cmake {
        path "CMakeLists.txt"
    }
}
}

Android.mk

代码语言:javascript
复制
LOCAL_PATH := $(call my-dir)

GSTREAMER_ROOT_ANDROID := D:\ndk-gst1.9.1

SHELL := PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin /bin/bash

include $(CLEAR_VARS)

LOCAL_MODULE := tutorial-5
LOCAL_SRC_FILES := tutorial-5.c
LOCAL_SHARED_LIBRARIES := gstreamer_android
LOCAL_LDLIBS := -llog -landroid
include $(BUILD_SHARED_LIBRARY)

ifndef GSTREAMER_ROOT
ifndef GSTREAMER_ROOT_ANDROID
$(error GSTREAMER_ROOT_ANDROID is not defined!)
endif
GSTREAMER_ROOT := $(GSTREAMER_ROOT_ANDROID)
endif
GSTREAMER_NDK_BUILD_PATH := $(GSTREAMER_ROOT)/share/gst-android/ndk-build

include $(GSTREAMER_NDK_BUILD_PATH)/plugins.mk
GSTREAMER_PLUGINS := $(GSTREAMER_PLUGINS_CORE) $(GSTREAMER_PLUGINS_PLAYBACK) $(GSTREAMER_PLUGINS_CODECS) $(GSTREAMER_PLUGINS_NET) $(GSTREAMER_PLUGINS_SYS) $(GSTREAMER_PLUGINS_CODECS_RESTRICTED)
G_IO_MODULES := gnutls
GSTREAMER_EXTRA_DEPS := gstreamer-video-1.0

include $(GSTREAMER_NDK_BUILD_PATH)/gstreamer-1.0.mk

请建议在上面的代码中需要做哪些更改才能使其运行。

EN

回答 1

Stack Overflow用户

发布于 2017-10-27 23:43:29

我已经回答了一个类似的问题。来自Gstreamer站点的官方教程的问题是它们太旧了,而且是为Eclipse设计的。也许你的错误是因为你没有将你的Android Studio项目链接到C++文件……要做到这一点,请遵循此答案中的第二个步骤:Gstreamer examples in Android Studio

由于与C++文件的链接不是唯一会发生的错误,我还建议您遵循所有其他步骤。上面的链接中有一个gitlab项目的链接,上面的链接中包含了"turorial 5“。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46095810

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档