
Recherche avancée
Médias (91)
-
Spitfire Parade - Crisis
15 mai 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Wired NextMusic
14 mai 2011, par
Mis à jour : Février 2012
Langue : English
Type : Video
-
Video d’abeille en portrait
14 mai 2011, par
Mis à jour : Février 2012
Langue : français
Type : Video
-
Sintel MP4 Surround 5.1 Full
13 mai 2011, par
Mis à jour : Février 2012
Langue : English
Type : Video
-
Carte de Schillerkiez
13 mai 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Texte
-
Publier une image simplement
13 avril 2011, par ,
Mis à jour : Février 2012
Langue : français
Type : Video
Autres articles (60)
-
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
-
Ecrire une actualité
21 juin 2013, parPrésentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
Vous pouvez personnaliser le formulaire de création d’une actualité.
Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...) -
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir
Sur d’autres sites (7232)
-
How to crop video with ffmpeg library in Android ?
23 décembre 2016, par DylanTo crop video in Android app I use ffmpeg library
In SO example I found for cropping the video the following command :
ffmpeg -i in.mp4 -filter:v "crop=out_w:out_h:x:y" out.mp4
I created a String array :
String[] cmd = "ffmpeg", "-i", originalVideoPath, "-vf", "\"crop=" + imageWidth + " :" + imageHeight + " :" + xCoordinate + " :" + yCoordinate + "\"", "-c:a", "copy", croppedVideoPath ;
And I pass this array to execute() method :
try {
ffmpeg = FFmpeg.getInstance(getContext());
ffmpeg.execute(cmd, new ExecuteBinaryResponseHandler() {
@Override
public void onStart() {
Log.i(TAG, "onStart: Crop Video started");
}
@Override
public void onProgress(String message) {
Log.i(TAG, "onProgress: " + message);
}
@Override
public void onFailure(String message) {
Log.i(TAG, "onFailure: " + message);
}
@Override
public void onSuccess(String message) {
Log.i(TAG, "onSuccess: " + message);
}
@Override
public void onFinish() {
Log.i(TAG, "onFinish: Video cropping finished");
}
});
} catch (FFmpegCommandAlreadyRunningException e) {
// Handle if FFmpeg is already running
Log.i(TAG, "doInBackground: Exception + Device is not supported");
}The log result is :
12-14 11:33:33.246 5731-5731/com.studioidan.dmc I/CropImageFragment: onStart: Crop Video started
12-14 11:33:33.246 5731-5731/dmc I/CropImageFragment: onProgress: ffmpeg version n3.0.1 Copyright (c) 2000-2016 the FFmpeg developers
12-14 11:33:33.246 5731-5731/dmc I/CropImageFragment: onProgress: built with gcc 4.8 (GCC)
12-14 11:33:33.246 5731-5731/dmc I/CropImageFragment: onProgress: configuration: --target-os=linux --cross-prefix=/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/vagrant/SourceCode/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/vagrant/SourceCode/ffmpeg-android/build/armeabi-v7a --extra-cflags='-I/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all' --extra-ldflags='-L/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=
12-14 11:33:33.246 5731-5731/dmc I/CropImageFragment: onProgress: libavutil 55. 17.103 / 55. 17.103
12-14 11:33:33.246 5731-5731/dmc I/CropImageFragment: onProgress: libavcodec 57. 24.102 / 57. 24.102
12-14 11:33:33.246 5731-5731/dmc I/CropImageFragment: onProgress: libavformat 57. 25.100 / 57. 25.100
12-14 11:33:33.246 5731-5731/dmc I/CropImageFragment: onProgress: libavdevice 57. 0.101 / 57. 0.101
12-14 11:33:33.246 5731-5731/dmc I/CropImageFragment: onProgress: libavfilter 6. 31.100 / 6. 31.100
12-14 11:33:33.246 5731-5731/dmc I/CropImageFragment: onProgress: libswscale 4. 0.100 / 4. 0.100
12-14 11:33:33.246 5731-5731/dmc I/CropImageFragment: onProgress: libswresample 2. 0.101 / 2. 0.101
12-14 11:33:33.246 5731-5731/dmc I/CropImageFragment: onProgress: libpostproc 54. 0.100 / 54. 0.100
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/DMC/diamondVideo.mp4':
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: Metadata:
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: major_brand : isom
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: minor_version : 0
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: compatible_brands: isom3gp4
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: creation_time : 2016-12-14 08:33:10
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: Duration: 00:00:05.14, start: 0.000000, bitrate: 13480 kb/s
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: Stream #0:0(eng): Video: h264 (Baseline) (avc1 / 0x31637661), yuv420p, 1280x720, 13824 kb/s, SAR 1:1 DAR 16:9, 29.96 fps, 30 tbr, 90k tbn, 180k tbc (default)
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: Metadata:
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: creation_time : 2016-12-14 08:33:10
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: handler_name : VideoHandle
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 96 kb/s (default)
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: Metadata:
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: creation_time : 2016-12-14 08:33:10
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: handler_name : SoundHandle
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: [NULL @ 0x433f5f40] Unable to find a suitable output format for 'ffmpeg'
12-14 11:33:33.316 5731-5731/dmc I/CropImageFragment: onProgress: ffmpeg: Invalid argument
12-14 11:33:33.326 5731-5731/dmc I/CropImageFragment: onFailure: ffmpeg version n3.0.1 Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 4.8 (GCC)
configuration: --target-os=linux --cross-prefix=/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/vagrant/SourceCode/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/vagrant/SourceCode/ffmpeg-android/build/armeabi-v7a --extra-cflags='-I/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all' --extra-ldflags='-L/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=
libavutil 55. 17.103 / 55. 17.103
libavcodec 57. 24.102 / 57. 24.102
libavformat 57. 25.100 / 57. 25.100
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 31.100 / 6. 31.100
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/DMC/diamondVideo.mp4':
Metadata:
major_brand : isom
minor_version : 0
compatible_brands: isom3gp4
creation_time : 2016-12-14 08:33:10
Duration: 00:00:05.14, start: 0.000000, bitrate: 13480 kb/s
Stream #0:0(eng): Video: h264 (Baseline) (avc1 / 0x31637661), yuv420p, 1280x720, 13824 kb/s, SAR 1:1 DAR 16:9, 29.96 fps, 30 tbr, 90k tbn, 180k tbc (default)
Metadata:
creation_time : 2016-12-14 08:33:10
handler_name : VideoHandle
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 96 kb/s (default)
Metadata:
creation_time : 2016-12-14 08:33:10
handler_name : SoundHandle
[NULL @ 0x433f5f40] Unable to find a suitable output format for 'ffmpeg'
ffmpeg: Invalid argument
12-14 11:33:33.326 5731-5731/dmc I/CropImageFragment: onFinish: Video cropping finishedBut when I delete ffmpeg from array of command
String[] cmd = "-i", originalVideoPath, "-vf", "\"crop=" + imageWidth + " :" + imageHeight + " :" + xCoordinate + " :" + yCoordinate + "\"", "-c:a", "copy", croppedVideoPath ;
After execute it, the result is :
12-14 11:56:46.366 25930-26592/dmc I/CropImageFragment: onStart: Crop Video started
12-14 11:56:46.426 25930-25930/dmc I/CropImageFragment: onProgress: ffmpeg version n3.0.1 Copyright (c) 2000-2016 the FFmpeg developers
12-14 11:56:46.426 25930-25930/dmc I/CropImageFragment: onProgress: built with gcc 4.8 (GCC)
12-14 11:56:46.426 25930-25930/dmc I/CropImageFragment: onProgress: configuration: --target-os=linux --cross-prefix=/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/vagrant/SourceCode/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/vagrant/SourceCode/ffmpeg-android/build/armeabi-v7a --extra-cflags='-I/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all' --extra-ldflags='-L/home/vagrant/SourceCode/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=
12-14 11:56:46.426 25930-25930/dmc I/CropImageFragment: onProgress: libavutil 55. 17.103 / 55. 17.103
12-14 11:56:46.426 25930-25930/dmc I/CropImageFragment: onProgress: libavcodec 57. 24.102 / 57. 24.102
12-14 11:56:46.426 25930-25930/dmc I/CropImageFragment: onProgress: libavformat 57. 25.100 / 57. 25.100
12-14 11:56:46.426 25930-25930/dmc I/CropImageFragment: onProgress: libavdevice 57. 0.101 / 57. 0.101
12-14 11:56:46.426 25930-25930/dmc I/CropImageFragment: onProgress: libavfilter 6. 31.100 / 6. 31.100
12-14 11:56:46.426 25930-25930/dmc I/CropImageFragment: onProgress: libswscale 4. 0.100 / 4. 0.100
12-14 11:56:46.426 25930-25930/dmc I/CropImageFragment: onProgress: libswresample 2. 0.101 / 2. 0.101
12-14 11:56:46.426 25930-25930/dmc I/CropImageFragment: onProgress: libpostproc 54. 0.100 / 54. 0.100
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/DMC/diamondVideo.mp4':
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: Metadata:
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: major_brand : isom
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: minor_version : 0
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: compatible_brands: isom3gp4
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: creation_time : 2016-12-14 08:56:40
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: Duration: 00:00:05.27, start: 0.000000, bitrate: 13189 kb/s
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: Stream #0:0(eng): Video: h264 (Baseline) (avc1 / 0x31637661), yuv420p, 1280x720, 13886 kb/s, SAR 1:1 DAR 16:9, 30.01 fps, 30 tbr, 90k tbn, 180k tbc (default)
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: Metadata:
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: creation_time : 2016-12-14 08:56:40
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: handler_name : VideoHandle
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 96 kb/s (default)
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: Metadata:
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: creation_time : 2016-12-14 08:56:40
12-14 11:56:46.506 25930-25930/dmc I/CropImageFragment: onProgress: handler_name : SoundHandleIt looks like the process starts and after that it freezes
What I do wrong ?
-
undefined reference to ffmpeg functions in native code using Android Studio 2.2
12 octobre 2016, par Krzysztof KansyI have a problem with using ffmpeg in Android Studio 2.2 using NDK 13 and new Cmake building system. FFmpeg version is 3.1.4.
The system I’m working on is Linux Mint 18 64-bit.
At the build time I’m getting undefined reference error each time I use ffpeg functions.My MainActivity.java :
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Example of a call to a native method
TextView tv = (TextView) findViewById(R.id.sample_text);
tv.setText(stringFromJNI());
}
/**
* A native method that is implemented by the 'native-lib' native library,
* which is packaged with this application.
*/
public native String stringFromJNI();
// Used to load the 'native-lib' library on application startup.
static {
System.loadLibrary("native-lib");
}
}My native class (undefined reference is pointing to av_init_packet(&avPacket)) :
#include
#include <string>
#include <android></android>log.h>
#include <libavcodec></libavcodec>avcodec.h>
extern "C"
jstring
Java_com_example_tito_jnitest_MainActivity_stringFromJNI(
JNIEnv* env,
jobject /* this */) {
std::string hello = "Hello from C++";
__android_log_print(ANDROID_LOG_INFO, "JNItest", "Hello from JNI!");
AVPacket avPacket;
av_init_packet(&avPacket);
return env->NewStringUTF(hello.c_str());
}
</string>build.gradle script
apply plugin: 'com.android.application'
android {
compileSdkVersion 24
buildToolsVersion "24.0.3"
defaultConfig {
applicationId "com.example.tito.jnitest"
minSdkVersion 19
targetSdkVersion 24
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
externalNativeBuild {
cmake {
// Passes optional arguments to CMake.
cppFlags "-frtti -fexceptions"
abiFilters 'armeabi'
}
}
}
sourceSets {
main {
jniLibs.srcDirs = ['/home/tito/AndroidStudioProjects/JNItest/app/src/main/jniLibs']
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
externalNativeBuild {
cmake {
path "CMakeLists.txt"
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:24.2.1'
testCompile 'junit:junit:4.12'
}CMakeLists.txt
cmake_minimum_required(VERSION 3.4.1)
include_directories(/home/tito/Android/Sdk/ndk-bundle/sources/ffmpeg-3.1.4/android/${ANDROID_ABI}/include)
#set(CMAKE_VERBOSE_MAKEFILE on)
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11")
add_library( avutil
SHARED
IMPORTED )
set_target_properties(
avutil
PROPERTIES IMPORTED_LOCATION
/home/tito/AndroidStudioProjects/JNItest/app/src/main/jniLibs/${ANDROID_ABI}/libavutil-55.so )
add_library( swscale
SHARED
IMPORTED )
set_target_properties(
swscale
PROPERTIES IMPORTED_LOCATION
/home/tito/AndroidStudioProjects/JNItest/app/src/main/jniLibs/${ANDROID_ABI}/libswscale-4.so )
add_library( swresample
SHARED
IMPORTED )
set_target_properties(
swresample
PROPERTIES IMPORTED_LOCATION
/home/tito/AndroidStudioProjects/JNItest/app/src/main/jniLibs/${ANDROID_ABI}/libswresample-2.so )
add_library( avcodec
SHARED
IMPORTED )
set_target_properties(
avcodec
PROPERTIES IMPORTED_LOCATION
/home/tito/AndroidStudioProjects/JNItest/app/src/main/jniLibs/${ANDROID_ABI}/libavcodec-57.so )
add_library( avfilter
SHARED
IMPORTED )
set_target_properties(
avfilter
PROPERTIES IMPORTED_LOCATION
/home/tito/AndroidStudioProjects/JNItest/app/src/main/jniLibs/${ANDROID_ABI}/libavfilter-6.so )
add_library( avformat
SHARED
IMPORTED )
set_target_properties(
avformat
PROPERTIES IMPORTED_LOCATION
/home/tito/AndroidStudioProjects/JNItest/app/src/main/jniLibs/${ANDROID_ABI}/libavformat-57.so )
add_library( avdevice
SHARED
IMPORTED )
set_target_properties(
avdevice
PROPERTIES IMPORTED_LOCATION
/home/tito/AndroidStudioProjects/JNItest/app/src/main/jniLibs/${ANDROID_ABI}/libavdevice-57.so )
add_library( native-lib
SHARED
src/main/cpp/native-lib.cpp )
find_library( log-lib
log )
target_link_libraries(native-lib ${log-lib} avutil swscale swresample avcodec avfilter avformat avdevice)Build process of ffmpeg seemed to be successful. Here’s my build script :
#!/bin/bash
NDK=/home/tito/Android/Sdk/ndk-bundle
SYSROOT=$NDK/platforms/android-19/arch-arm/
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
function build_one
{
./configure \
--prefix=$PREFIX \
--disable-static \
--enable-shared \
--disable-doc \
--disable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--disable-ffserver \
--disable-doc \
--cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
--target-os=linux \
--arch=arm \
--enable-cross-compile \
--sysroot=$SYSROOT \
--extra-cflags="-Os -fpic -marm" \
--extra-ldflags="-marm" \
$ADDITIONAL_CONFIGURE_FLAG
make clean
make
make install
}
CPU=armeabi
PREFIX=$(pwd)/android/$CPU
build_oneOne thing I noticed that could indicate that something is wrong with ffmpeg build is warning
WARNING: /home/tito/Android/Sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-pkg-config not found, library detection may fail.
during building. I’m not sure if this may be cause of problems.I was trying to build for all of the ABIs, but for now I decided to focus on making just armeabi working. I’m having exact same failure after using e.g. arm64-v8a.
Finally, here is the gradle console’s content with error :
Executing tasks: [:app:assembleDebug]
Configuration on demand is an incubating feature.
Incremental java compilation is an incubating feature.
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:checkDebugManifest
:app:preReleaseBuild UP-TO-DATE
:app:prepareComAndroidSupportAnimatedVectorDrawable2421Library UP-TO-DATE
:app:prepareComAndroidSupportAppcompatV72421Library UP-TO-DATE
:app:prepareComAndroidSupportSupportCompat2421Library UP-TO-DATE
:app:prepareComAndroidSupportSupportCoreUi2421Library UP-TO-DATE
:app:prepareComAndroidSupportSupportCoreUtils2421Library UP-TO-DATE
:app:prepareComAndroidSupportSupportFragment2421Library UP-TO-DATE
:app:prepareComAndroidSupportSupportMediaCompat2421Library UP-TO-DATE
:app:prepareComAndroidSupportSupportV42421Library UP-TO-DATE
:app:prepareComAndroidSupportSupportVectorDrawable2421Library UP-TO-DATE
:app:prepareDebugDependencies
:app:compileDebugAidl UP-TO-DATE
:app:compileDebugRenderscript UP-TO-DATE
:app:generateDebugBuildConfig UP-TO-DATE
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources UP-TO-DATE
:app:mergeDebugResources UP-TO-DATE
:app:processDebugManifest UP-TO-DATE
:app:processDebugResources
:app:generateDebugSources
:app:incrementalDebugJavaCompilationSafeguard UP-TO-DATE
:app:compileDebugJavaWithJavac UP-TO-DATE
:app:generateJsonModelDebug UP-TO-DATE
:app:externalNativeBuildDebug
building /home/tito/AndroidStudioProjects/JNItest/app/build/intermediates/cmake/debug/obj/armeabi/libnative-lib.so
:app:externalNativeBuildDebug FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:externalNativeBuildDebug'.
> Build command failed.
Error while executing '/home/tito/Android/Sdk/cmake/3.6.3155560/bin/cmake' with arguments {--build /home/tito/AndroidStudioProjects/JNItest/app/.externalNativeBuild/cmake/debug/armeabi --target native-lib}
[1/2] Building CXX object CMakeFiles/native-lib.dir/src/main/cpp/native-lib.cpp.o
[2/2] Linking CXX shared library ../../../../build/intermediates/cmake/debug/obj/armeabi/libnative-lib.so
FAILED: : && /home/tito/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ -target armv5te-none-linux-androideabi -gcc-toolchain /home/tito/Android/Sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64 --sysroot=/home/tito/Android/Sdk/ndk-bundle/platforms/android-19/arch-arm -fPIC -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -march=armv5te -mtune=xscale -msoft-float -fno-integrated-as -mthumb -Wa,--noexecstack -Wformat -Werror=format-security -fno-exceptions -fno-rtti -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -march=armv5te -mtune=xscale -msoft-float -fno-integrated-as -mthumb -Wa,--noexecstack -Wformat -Werror=format-security -fno-exceptions -fno-rtti -frtti -fexceptions -O0 -fno-limit-debug-info -O0 -fno-limit-debug-info -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings -Wl,--no-undefined -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro -Wl,-z,now -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings -Wl,--no-undefined -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro -Wl,-z,now -shared -Wl,-soname,libnative-lib.so -o ../../../../build/intermediates/cmake/debug/obj/armeabi/libnative-lib.so CMakeFiles/native-lib.dir/src/main/cpp/native-lib.cpp.o /home/tito/Android/Sdk/ndk-bundle/platforms/android-19/arch-arm/usr/lib/liblog.so ../../../../src/main/jniLibs/armeabi/libavutil-55.so ../../../../src/main/jniLibs/armeabi/libswscale-4.so ../../../../src/main/jniLibs/armeabi/libswresample-2.so ../../../../src/main/jniLibs/armeabi/libavcodec-57.so ../../../../src/main/jniLibs/armeabi/libavfilter-6.so ../../../../src/main/jniLibs/armeabi/libavformat-57.so ../../../../src/main/jniLibs/armeabi/libavdevice-57.so -lm "/home/tito/Android/Sdk/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi/libgnustl_static.a" "-latomic" && :
/home/tito/AndroidStudioProjects/JNItest/app/src/main/cpp/native-lib.cpp:18: error: undefined reference to 'av_init_packet(AVPacket*)'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.
* Try:
Run with --info or --debug option to get more log output.
* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:externalNativeBuildDebug'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:66)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:203)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:185)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:66)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:25)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:110)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
at org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23)
at org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)
at org.gradle.initialization.DefaultGradleLauncher$4.run(DefaultGradleLauncher.java:153)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:53)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:150)
at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:98)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:92)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:63)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:92)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:83)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:99)
at org.gradle.tooling.internal.provider.runner.BuildModelActionRunner.run(BuildModelActionRunner.java:46)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at org.gradle.tooling.internal.provider.runner.SubscribableBuildActionRunner.run(SubscribableBuildActionRunner.java:58)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:48)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:30)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:81)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:46)
at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:52)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
at org.gradle.util.Swapper.swap(Swapper.java:38)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(DaemonHealthTracker.java:47)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(HintGCAfterBuild.java:41)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:237)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
Caused by: org.gradle.internal.UncheckedException: Build command failed.
Error while executing '/home/tito/Android/Sdk/cmake/3.6.3155560/bin/cmake' with arguments {--build /home/tito/AndroidStudioProjects/JNItest/app/.externalNativeBuild/cmake/debug/armeabi --target native-lib}
[1/2] Building CXX object CMakeFiles/native-lib.dir/src/main/cpp/native-lib.cpp.o
[2/2] Linking CXX shared library ../../../../build/intermediates/cmake/debug/obj/armeabi/libnative-lib.so
FAILED: : && /home/tito/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ -target armv5te-none-linux-androideabi -gcc-toolchain /home/tito/Android/Sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64 --sysroot=/home/tito/Android/Sdk/ndk-bundle/platforms/android-19/arch-arm -fPIC -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -march=armv5te -mtune=xscale -msoft-float -fno-integrated-as -mthumb -Wa,--noexecstack -Wformat -Werror=format-security -fno-exceptions -fno-rtti -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -march=armv5te -mtune=xscale -msoft-float -fno-integrated-as -mthumb -Wa,--noexecstack -Wformat -Werror=format-security -fno-exceptions -fno-rtti -frtti -fexceptions -O0 -fno-limit-debug-info -O0 -fno-limit-debug-info -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings -Wl,--no-undefined -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro -Wl,-z,now -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings -Wl,--no-undefined -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro -Wl,-z,now -shared -Wl,-soname,libnative-lib.so -o ../../../../build/intermediates/cmake/debug/obj/armeabi/libnative-lib.so CMakeFiles/native-lib.dir/src/main/cpp/native-lib.cpp.o /home/tito/Android/Sdk/ndk-bundle/platforms/android-19/arch-arm/usr/lib/liblog.so ../../../../src/main/jniLibs/armeabi/libavutil-55.so ../../../../src/main/jniLibs/armeabi/libswscale-4.so ../../../../src/main/jniLibs/armeabi/libswresample-2.so ../../../../src/main/jniLibs/armeabi/libavcodec-57.so ../../../../src/main/jniLibs/armeabi/libavfilter-6.so ../../../../src/main/jniLibs/armeabi/libavformat-57.so ../../../../src/main/jniLibs/armeabi/libavdevice-57.so -lm "/home/tito/Android/Sdk/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi/libgnustl_static.a" "-latomic" && :
/home/tito/AndroidStudioProjects/JNItest/app/src/main/cpp/native-lib.cpp:18: error: undefined reference to 'av_init_packet(AVPacket*)'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.
at org.gradle.internal.UncheckedException.throwAsUncheckedException(UncheckedException.java:45)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:78)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.doExecute(AnnotationProcessingTaskFactory.java:228)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:221)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:210)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:621)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:604)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
... 70 more
Caused by: Build command failed.
Error while executing '/home/tito/Android/Sdk/cmake/3.6.3155560/bin/cmake' with arguments {--build /home/tito/AndroidStudioProjects/JNItest/app/.externalNativeBuild/cmake/debug/armeabi --target native-lib}
[1/2] Building CXX object CMakeFiles/native-lib.dir/src/main/cpp/native-lib.cpp.o
[2/2] Linking CXX shared library ../../../../build/intermediates/cmake/debug/obj/armeabi/libnative-lib.so
FAILED: : && /home/tito/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ -target armv5te-none-linux-androideabi -gcc-toolchain /home/tito/Android/Sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64 --sysroot=/home/tito/Android/Sdk/ndk-bundle/platforms/android-19/arch-arm -fPIC -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -march=armv5te -mtune=xscale -msoft-float -fno-integrated-as -mthumb -Wa,--noexecstack -Wformat -Werror=format-security -fno-exceptions -fno-rtti -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -march=armv5te -mtune=xscale -msoft-float -fno-integrated-as -mthumb -Wa,--noexecstack -Wformat -Werror=format-security -fno-exceptions -fno-rtti -frtti -fexceptions -O0 -fno-limit-debug-info -O0 -fno-limit-debug-info -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings -Wl,--no-undefined -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro -Wl,-z,now -Wl,--build-id -Wl,--warn-shared-textrel -Wl,--fatal-warnings -Wl,--no-undefined -Wl,-z,noexecstack -Qunused-arguments -Wl,-z,relro -Wl,-z,now -shared -Wl,-soname,libnative-lib.so -o ../../../../build/intermediates/cmake/debug/obj/armeabi/libnative-lib.so CMakeFiles/native-lib.dir/src/main/cpp/native-lib.cpp.o /home/tito/Android/Sdk/ndk-bundle/platforms/android-19/arch-arm/usr/lib/liblog.so ../../../../src/main/jniLibs/armeabi/libavutil-55.so ../../../../src/main/jniLibs/armeabi/libswscale-4.so ../../../../src/main/jniLibs/armeabi/libswresample-2.so ../../../../src/main/jniLibs/armeabi/libavcodec-57.so ../../../../src/main/jniLibs/armeabi/libavfilter-6.so ../../../../src/main/jniLibs/armeabi/libavformat-57.so ../../../../src/main/jniLibs/armeabi/libavdevice-57.so -lm "/home/tito/Android/Sdk/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi/libgnustl_static.a" "-latomic" && :
/home/tito/AndroidStudioProjects/JNItest/app/src/main/cpp/native-lib.cpp:18: error: undefined reference to 'av_init_packet(AVPacket*)'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.
at com.android.build.gradle.tasks.ExternalNativeBuildTaskUtils.executeBuildProcessAndLogError(ExternalNativeBuildTaskUtils.java:233)
at com.android.build.gradle.tasks.ExternalNativeBuildTask.executeProcessBatch(ExternalNativeBuildTask.java:231)
at com.android.build.gradle.tasks.ExternalNativeBuildTask.build(ExternalNativeBuildTask.java:163)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75)
... 77 more
BUILD FAILED
Total time: 0.723 secsCan anyone tell me what I’m doing wrong here ?
-
How do I compile a 64-bit version of ffmpeg on Windows ?
30 septembre 2016, par lyxerai need to compile ffmpeg (64 bit shared dll) for windows.
however I configure in mingw, it always produces 32 bit binary for me.tried this already
./configure --enable-shared --disable-static --enable-memalign-hack --arch=amd64
./configure --enable-shared --disable-static --enable-memalign-hack --arch=x86_64my guess is that a x86 to x86_64 cross compiler is missing.
but just can find a way to make those 64bit dlls.